Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
cnat: Add maglev support
[vpp.git]
/
src
/
plugins
/
cnat
/
cnat.api
diff --git
a/src/plugins/cnat/cnat.api
b/src/plugins/cnat/cnat.api
index
7bf6be8
..
2b79e0d
100644
(file)
--- a/
src/plugins/cnat/cnat.api
+++ b/
src/plugins/cnat/cnat.api
@@
-19,7
+19,7
@@
used to control the ABF plugin
*/
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";
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,
};
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 */
/* 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;
{
vl_api_cnat_endpoint_t dst_ep;
vl_api_cnat_endpoint_t src_ep;
+ u8 flags;
};
typedef cnat_translation
};
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_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];
};
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;
vl_api_cnat_endpoint_t dst;
vl_api_cnat_endpoint_t new;
vl_api_ip_proto_t ip_proto;
+ u8 location;
f64 timestamp;
};
f64 timestamp;
};