From: Jafar Al-Gharaibeh Date: Mon, 24 Feb 2025 23:17:10 +0000 (-0600) Subject: Reapply "bgpd: fix bgp vrf instance creation from implicit" X-Git-Tag: docker/10.3.0~15^2~2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=bc6c7f60dcbf14d74ed5164e34fd3a6adc35495c;p=matthieu%2Ffrr.git Reapply "bgpd: fix bgp vrf instance creation from implicit" This reverts commit d9d74d33bca0e23a2cd4723fbc4709dc83fd1332. Signed-off-by: Jafar Al-Gharaibeh --- diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c index 8a3ae538dc..edda82b63c 100644 --- a/bgpd/bgpd.c +++ b/bgpd/bgpd.c @@ -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");