diff options
Diffstat (limited to 'bgpd/bgp_network.c')
-rw-r--r-- | bgpd/bgp_network.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/bgpd/bgp_network.c b/bgpd/bgp_network.c index 6d16c6ec..3cc55f24 100644 --- a/bgpd/bgp_network.c +++ b/bgpd/bgp_network.c @@ -185,6 +185,8 @@ bgp_accept (struct thread *thread) peer->fd = bgp_sock; peer->status = Active; peer->local_id = peer1->local_id; + peer->v_holdtime = peer1->v_holdtime; + peer->v_keepalive = peer1->v_keepalive; /* Make peer's address string. */ sockunion2str (&su, buf, SU_ADDRSTRLEN); @@ -369,17 +371,16 @@ int bgp_socket (struct bgp *bgp, unsigned short port, char *address) { int ret, en; - struct addrinfo req; struct addrinfo *ainfo; struct addrinfo *ainfo_save; + static const struct addrinfo req = { + .ai_family = AF_UNSPEC, + .ai_flags = AI_PASSIVE, + .ai_socktype = SOCK_STREAM, + }; int sock = 0; char port_str[BUFSIZ]; - memset (&req, 0, sizeof (struct addrinfo)); - - req.ai_flags = AI_PASSIVE; - req.ai_family = AF_UNSPEC; - req.ai_socktype = SOCK_STREAM; snprintf (port_str, sizeof(port_str), "%d", port); port_str[sizeof (port_str) - 1] = '\0'; |