]> git.puffer.fish Git - mirror/frr.git/commitdiff
bgpd: Modify bgp_connect_in_progress_update_connection to use connection
authorDonald Sharp <sharpd@nvidia.com>
Wed, 6 Nov 2024 19:25:20 +0000 (14:25 -0500)
committerDonald Sharp <sharpd@nvidia.com>
Tue, 26 Nov 2024 16:59:27 +0000 (11:59 -0500)
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
bgpd/bgp_fsm.c

index cd63480f20a2a59366f6588748fc8bdedd94e644..240ec59481bc363641efcb4951fba5ba915b3769 100644 (file)
@@ -1807,12 +1807,14 @@ bgp_connect_fail(struct peer_connection *connection)
 /* after connect is called(), getpeername is able to return
  * port and address on non established streams
  */
-static void bgp_connect_in_progress_update_connection(struct peer *peer)
+static void bgp_connect_in_progress_update_connection(struct peer_connection *connection)
 {
-       bgp_updatesockname(peer, peer->connection);
+       struct peer *peer = connection->peer;
+
+       bgp_updatesockname(peer, connection);
        if (!peer->su_remote && !BGP_CONNECTION_SU_UNSPEC(peer->connection)) {
                /* if connect initiated, then dest port and dest addresses are well known */
-               peer->su_remote = sockunion_dup(&peer->connection->su);
+               peer->su_remote = sockunion_dup(&connection->su);
                if (sockunion_family(peer->su_remote) == AF_INET)
                        peer->su_remote->sin.sin_port = htons(peer->port);
                else if (sockunion_family(peer->su_remote) == AF_INET6)
@@ -1916,7 +1918,7 @@ static enum bgp_fsm_state_progress bgp_start(struct peer_connection *connection)
                                 __func__, peer->connection->fd);
                        return BGP_FSM_FAILURE;
                }
-               bgp_connect_in_progress_update_connection(peer);
+               bgp_connect_in_progress_update_connection(connection);
 
                /*
                 * - when the socket becomes ready, poll() will signify POLLOUT