api: clean up use of deprecated flag
[vpp.git] / src / plugins / nat / nat.api
index 7e6f359..00e9e71 100644 (file)
@@ -60,11 +60,12 @@ define nat_control_ping_reply
 */
 define nat_show_config
 {
+  option deprecated;
   u32 client_index;
   u32 context;
 };
 
-/** \brief Show NAT plugin startup config reply
+/** \brief DEPRECATED: Show NAT plugin startup config reply
     @param context - sender context, to match reply w/ request
     @param retval - return code for the request
     @param static_mapping_only - if true dynamic translations disabled
@@ -108,6 +109,64 @@ define nat_show_config_reply
   u64 nat64_st_memory_size;
 };
 
+/** \brief Show NAT plugin startup config
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+*/
+define nat_show_config_2
+{
+  u32 client_index;
+  u32 context;
+};
+
+/** \brief Show NAT plugin startup config reply
+    @param context - sender context, to match reply w/ request
+    @param retval - return code for the request
+    @param static_mapping_only - if true dynamic translations disabled
+    @param static_mapping_connection_tracking - if true create session data
+    @param deterministic - if true deterministic mapping
+    @param endpoint_dependent - if true endpoint-dependent mode
+    @param out2in_dpo - if true out2in dpo mode
+    @param dslite_ce - if true DS-Lite is CE/B4 element, if false AFTR elemet
+    @param translation_buckets - number of translation hash buckets
+    @param translation_memory_size - translation hash memory size
+    @param user_buckets - number of user hash buckets
+    @param user_memory_size - user hash memory size
+    @param max_translations_per_user - maximum number of translations per user
+    @param outside_vrf_id - outside VRF id
+    @param inside_vrf_id - default inside VRF id
+    @param nat64_bib_buckets - number of NAT64 BIB hash buckets
+    @param nat64_bib_memory_size - memory size of NAT64 BIB hash
+    @param nat64_st_buckets - number of NAT64 session table hash buckets
+    @param nat64_st_memory_size - memory size of NAT64 session table hash
+    @param max_translations_per_thread - max translations per worker thread
+    @param max_users_per_thread - max users per worker thread
+*/
+define nat_show_config_2_reply
+{
+  u32 context;
+  i32 retval;
+  bool static_mapping_only;
+  bool static_mapping_connection_tracking;
+  bool deterministic;
+  bool endpoint_dependent;
+  bool out2in_dpo;
+  bool dslite_ce;
+  u32 translation_buckets;
+  u64 translation_memory_size;
+  u32 user_buckets;
+  u64 user_memory_size;
+  u32 max_translations_per_user;
+  u32 outside_vrf_id;
+  u32 inside_vrf_id;
+  u32 nat64_bib_buckets;
+  u64 nat64_bib_memory_size;
+  u32 nat64_st_buckets;
+  u64 nat64_st_memory_size;
+  u32 max_translations_per_thread;
+  u32 max_users_per_thread;
+};
+
 enum nat_log_level : u8
 {
   NAT_LOG_NONE = 0x00,
@@ -625,6 +684,47 @@ autoreply define nat44_add_del_static_mapping {
   string tag[64];
 };
 
+/** \brief Add/delete NAT44 static mapping
+    @param client_index - opaque cookie to identify the sender
+    @param context - sender context, to match reply w/ request
+    @param is_add - true if add, false if delete
+    @param match_pool - true if use specific pool_ip_address
+    @param flags - flag NAT_IS_ADDR_ONLY if address only mapping,
+                   flag nat_is_twice_nat if nat address range for external hosts,
+                   flag NAT_IS_SELF_TWICE_NAT if translate external host address
+                   and port whenever external host address equals local
+                   address of internal host,
+                   flag NAT_IS_OUT2IN_ONLY if rule match only out2in direction
+    @param pool_ip_address - pool IPv4 address to match with pool
+    @param local_ip_address - local IPv4 address
+    @param external_ip_address - external IPv4 address
+    @param protocol - IP protocol, used only if addr_only=0
+    @param local_port - local port number, used only if addr_only=0
+    @param external_port - external port number, used only if addr_only=0
+    @param external_sw_if_index - external interface (if set
+                                  external_ip_address is ignored, ~0 means not
+                                  used)
+    @param vfr_id - VRF ID
+    @param tag - opaque string tag
+*/
+autoreply define nat44_add_del_static_mapping_v2 {
+  option status="in_progress";
+  u32 client_index;
+  u32 context;
+  bool is_add;
+  bool match_pool;
+  vl_api_nat_config_flags_t flags;
+  vl_api_ip4_address_t pool_ip_address;
+  vl_api_ip4_address_t local_ip_address;
+  vl_api_ip4_address_t external_ip_address;
+  u8 protocol;
+  u16 local_port;
+  u16 external_port;
+  vl_api_interface_index_t external_sw_if_index;
+  u32 vrf_id;
+  string tag[64];
+};
+
 /** \brief Dump NAT44 static mappings
     @param client_index - opaque cookie to identify the sender
     @param context - sender context, to match reply w/ request