summaryrefslogtreecommitdiff
path: root/lib/ns.c
diff options
context:
space:
mode:
authorPhilippe Guibert <philippe.guibert@6wind.com>2018-01-10 10:04:59 +0100
committerPhilippe Guibert <philippe.guibert@6wind.com>2018-02-27 11:11:24 +0100
commitc17d483845c4b772270cade18f2ce5a5e14bc14e (patch)
tree57715c54e0a56cf925db1a8090a5085a64be1de4 /lib/ns.c
parentb95c18833a36bcf03b7a72c110be24873a65420d (diff)
lib: netns vty command not available when vrf backend is vrf lite
Using the vrf backend kind, the vty command that configured netns under vty will not be installed if the vrf backend is vrf lite Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Diffstat (limited to 'lib/ns.c')
-rw-r--r--lib/ns.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/ns.c b/lib/ns.c
index 25136d0a1e..fcac28cf7e 100644
--- a/lib/ns.c
+++ b/lib/ns.c
@@ -492,6 +492,10 @@ DEFUN (no_ns_netns,
VTY_DECLVAR_CONTEXT(vrf, vrf);
+ if (!vrf_is_backend_netns()) {
+ vty_out(vty, "VRF backend is not Netns. Aborting\n");
+ return CMD_WARNING_CONFIG_FAILED;
+ }
if (!vrf->ns_ctxt) {
vty_out(vty, "VRF %s(%u) is not configured with NetNS\n",
vrf->name, vrf->vrf_id);
@@ -538,7 +542,7 @@ void ns_init(void)
void ns_cmd_init(void)
{
- if (have_netns()) {
+ if (have_netns() && vrf_is_backend_netns()) {
/* Install NS commands. */
install_element(VRF_NODE, &ns_netns_cmd);
install_element(VRF_NODE, &no_ns_netns_cmd);