]> git.puffer.fish Git - matthieu/frr.git/commitdiff
Reapply "bgpd: fix bgp vrf instance creation from implicit"
authorJafar Al-Gharaibeh <jafar@atcorp.com>
Mon, 24 Feb 2025 23:17:10 +0000 (17:17 -0600)
committerJafar Al-Gharaibeh <jafar@atcorp.com>
Tue, 25 Feb 2025 14:58:14 +0000 (08:58 -0600)
This reverts commit d9d74d33bca0e23a2cd4723fbc4709dc83fd1332.

Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
bgpd/bgpd.c

index 8a3ae538dcd30ac70501d47d04645331b34f45cc..edda82b63c87f8247599a751332fa67645923609 100644 (file)
@@ -3410,17 +3410,6 @@ static struct bgp *bgp_create(as_t *as, const char *name,
        }
 
        bgp = XCALLOC(MTYPE_BGP, sizeof(struct bgp));
-       bgp->as = *as;
-       if (as_pretty)
-               bgp->as_pretty = XSTRDUP(MTYPE_BGP_NAME, as_pretty);
-       else
-               bgp->as_pretty = XSTRDUP(MTYPE_BGP_NAME, asn_asn2asplain(*as));
-
-       if (asnotation != ASNOTATION_UNDEFINED) {
-               bgp->asnotation = asnotation;
-               SET_FLAG(bgp->config, BGP_CONFIG_ASNOTATION);
-       } else
-               asn_str2asn_notation(bgp->as_pretty, NULL, &bgp->asnotation);
 
        if (BGP_DEBUG(zebra, ZEBRA)) {
                if (inst_type == BGP_INSTANCE_TYPE_DEFAULT)
@@ -3464,6 +3453,18 @@ static struct bgp *bgp_create(as_t *as, const char *name,
        bgp->peer = list_new();
 
 peer_init:
+       bgp->as = *as;
+       if (as_pretty)
+               bgp->as_pretty = XSTRDUP(MTYPE_BGP_NAME, as_pretty);
+       else
+               bgp->as_pretty = XSTRDUP(MTYPE_BGP_NAME, asn_asn2asplain(*as));
+
+       if (asnotation != ASNOTATION_UNDEFINED) {
+               bgp->asnotation = asnotation;
+               SET_FLAG(bgp->config, BGP_CONFIG_ASNOTATION);
+       } else
+               asn_str2asn_notation(bgp->as_pretty, NULL, &bgp->asnotation);
+
        bgp->peer->cmp = (int (*)(void *, void *))peer_cmp;
        bgp->peerhash = hash_create(peer_hash_key_make, peer_hash_same,
                                    "BGP Peer Hash");