X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fplugins%2Fcnat%2Fcnat.api;h=2b79e0d1b8b8e8fe2b4585882e0f87ed53381974;hb=4d237874e;hp=7bf6be8b34918b76a67e6f564c6db4ea361ea9fe;hpb=2082835fea3ccd85e7368327d5baa749be01b537;p=vpp.git diff --git a/src/plugins/cnat/cnat.api b/src/plugins/cnat/cnat.api index 7bf6be8b349..2b79e0d1b8b 100644 --- a/src/plugins/cnat/cnat.api +++ b/src/plugins/cnat/cnat.api @@ -19,7 +19,7 @@ used to control the ABF plugin */ -option version = "0.1.0"; +option version = "0.2.0"; import "vnet/ip/ip_types.api"; import "vnet/fib/fib_types.api"; import "vnet/interface_types.api"; @@ -29,6 +29,20 @@ enum cnat_translation_flags:u8 CNAT_TRANSLATION_ALLOC_PORT = 1, }; +enum cnat_endpoint_tuple_flags:u8 +{ + /* Dont translate said endpoint tuple but + * still forward */ + CNAT_EPT_NO_NAT = 1, +}; + + +enum cnat_lb_type:u8 +{ + CNAT_LB_TYPE_DEFAULT = 0, + CNAT_LB_TYPE_MAGLEV = 1, +}; + /* An enpoint is either * An IP & a port * An interface, an address familiy and a port */ @@ -44,6 +58,7 @@ typedef cnat_endpoint_tuple { vl_api_cnat_endpoint_t dst_ep; vl_api_cnat_endpoint_t src_ep; + u8 flags; }; typedef cnat_translation @@ -53,6 +68,7 @@ typedef cnat_translation vl_api_ip_proto_t ip_proto; u8 is_real_ip; u8 flags; + vl_api_cnat_lb_type_t lb_type; u32 n_paths; vl_api_cnat_endpoint_tuple_t paths[n_paths]; }; @@ -102,6 +118,7 @@ typedef cnat_session vl_api_cnat_endpoint_t dst; vl_api_cnat_endpoint_t new; vl_api_ip_proto_t ip_proto; + u8 location; f64 timestamp; };