diff options
| author | Donatas Abraitis <donatas@opensourcerouting.org> | 2023-03-27 22:03:03 +0300 |
|---|---|---|
| committer | Mergify <37929162+mergify[bot]@users.noreply.github.com> | 2023-03-28 15:22:24 +0000 |
| commit | 722f3aef4edeedf2932bc685a98efcd13505ab5d (patch) | |
| tree | 4495755db8abd2e2f1c632c335b3e9e3a1057a84 | |
| parent | 6d305dda4f65c6852e4446c465d54697e0410534 (diff) | |
bgpd: Copy the password from the previous peer on peer_xfer_config()
We copy the password only if an existing peer structure didn't have it.
But it might be the case when it exists, and we skip here.
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
(cherry picked from commit b5b6f11fcb90219cbc69e5845872f2769d42bb2c)
| -rw-r--r-- | bgpd/bgpd.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c index 1abd8e9a87..94d41e70c1 100644 --- a/bgpd/bgpd.c +++ b/bgpd/bgpd.c @@ -1492,9 +1492,11 @@ void peer_xfer_config(struct peer *peer_dst, struct peer *peer_src) peer_dst->v_delayopen = peer_src->v_delayopen; /* password apply */ - if (peer_src->password && !peer_dst->password) + if (peer_src->password) { + XFREE(MTYPE_PEER_PASSWORD, peer_dst->password); peer_dst->password = XSTRDUP(MTYPE_PEER_PASSWORD, peer_src->password); + } FOREACH_AFI_SAFI (afi, safi) { peer_dst->afc[afi][safi] = peer_src->afc[afi][safi]; |
