From 1a9e2f96d48e346311bbc584510a14e3f721b41c Mon Sep 17 00:00:00 2001 From: Nathan Skrzypczak Date: Wed, 28 Jul 2021 19:35:08 +0200 Subject: session: Add sock_name option to add_ns This adds a new API call to add session namespaces It now takes a netns and a sock_name. (1) If no netns is passed, sock_name will be used as socket path. Defaulting to /run/vpp/app_ns_sockets/${ns_id} (2) If a netns is passed, the sock_name has to be abstract (i.e. start with '@'). It will default to `@vpp/session/${ns_id}` and will be created in the provided netns. Type: feature Change-Id: I90e9a8e5ecca2cabe7c05335663e33c8506dc9e7 Signed-off-by: Nathan Skrzypczak --- src/vnet/session/session.api | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'src/vnet/session/session.api') diff --git a/src/vnet/session/session.api b/src/vnet/session/session.api index 43bde1afbbd..0eb773c0c28 100644 --- a/src/vnet/session/session.api +++ b/src/vnet/session/session.api @@ -252,6 +252,34 @@ define app_namespace_add_del_v2 { string netns[64]; }; +/** \brief add/del application namespace + @param client_index - opaque cookie to identify the sender + client to vpp direction only + @param context - sender context, to match reply w/ request + @param secret - secret shared between app and vpp + @param sw_if_index - local interface that "supports" namespace. Set to + ~0 if no preference + @param ip4_fib_id - id of ip4 fib that "supports" the namespace. Ignored + if sw_if_index set. + @param ip6_fib_id - id of ip6 fib that "supports" the namespace. Ignored + if sw_if_index set. + @param namespace_id - namespace id + @param netns - linux net namespace + @param sock_name - socket name (path, abstract socket name) +*/ +define app_namespace_add_del_v3 { + u32 client_index; + u32 context; + u64 secret; + bool is_add [default=true]; + vl_api_interface_index_t sw_if_index [default=0xffffffff]; + u32 ip4_fib_id; + u32 ip6_fib_id; + string namespace_id[64]; + string netns[64]; + string sock_name[]; +}; + /** \brief Reply for app namespace add/del @param context - returned sender context, to match reply w/ request @param retval - return code @@ -277,6 +305,13 @@ define app_namespace_add_del_v2_reply u32 appns_index; }; +define app_namespace_add_del_v3_reply +{ + u32 context; + i32 retval; + u32 appns_index; +}; + enum session_rule_scope { SESSION_RULE_SCOPE_API_GLOBAL = 0, SESSION_RULE_SCOPE_API_LOCAL = 1, -- cgit 1.2.3-korg