]> git.proxmox.com Git - mirror_frr.git/blobdiff - lib/vrf.c
Merge remote-tracking branch 'frr/master' into warnings
[mirror_frr.git] / lib / vrf.c
index 1e538a8c53a784580eb55dd643ecfd71528457c6..4b7e842759cb67bd33e7443b35cdc9a9b871d1b6 100644 (file)
--- a/lib/vrf.c
+++ b/lib/vrf.c
@@ -493,9 +493,15 @@ void vrf_init(int (*create)(struct vrf *), int (*enable)(struct vrf *),
                          "vrf_init: failed to create the default VRF!");
                exit(1);
        }
-       if (vrf_is_backend_netns())
+       if (vrf_is_backend_netns()) {
+               struct ns *ns;
+
                strlcpy(default_vrf->data.l.netns_name,
                        VRF_DEFAULT_NAME, NS_NAMSIZ);
+               ns = ns_lookup(ns_get_default_id());
+               ns->vrf_ctxt = default_vrf;
+               default_vrf->ns_ctxt = ns;
+       }
 
        /* Enable the default VRF. */
        if (!vrf_enable(default_vrf)) {
@@ -712,8 +718,6 @@ int vrf_is_mapped_on_netns(struct vrf *vrf)
 {
        if (!vrf || vrf->data.l.netns_name[0] == '\0')
                return 0;
-       if (vrf->vrf_id == VRF_DEFAULT)
-               return 0;
        return 1;
 }