Merge pull request #2213 from donaldsharp/errno

some small bgp issues
This commit is contained in:
Russ White 2018-05-12 06:38:02 -04:00 committed by GitHub
commit cfe50de15b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -52,6 +52,7 @@
#include "bgpd/bgp_memory.h" #include "bgpd/bgp_memory.h"
#include "bgpd/bgp_keepalives.h" #include "bgpd/bgp_keepalives.h"
#include "bgpd/bgp_io.h" #include "bgpd/bgp_io.h"
#include "bgpd/bgp_zebra.h"
DEFINE_HOOK(peer_backward_transition, (struct peer * peer), (peer)) DEFINE_HOOK(peer_backward_transition, (struct peer * peer), (peer))
DEFINE_HOOK(peer_established, (struct peer * peer), (peer)) DEFINE_HOOK(peer_established, (struct peer * peer), (peer))
@ -1256,7 +1257,8 @@ static int bgp_connect_check(struct thread *thread)
/* If getsockopt is fail, this is fatal error. */ /* If getsockopt is fail, this is fatal error. */
if (ret < 0) { if (ret < 0) {
zlog_info("can't get sockopt for nonblocking connect"); zlog_info("can't get sockopt for nonblocking connect: %d(%s)",
errno, safe_strerror(errno));
BGP_EVENT_ADD(peer, TCP_fatal_error); BGP_EVENT_ADD(peer, TCP_fatal_error);
return -1; return -1;
} }
@ -1267,8 +1269,8 @@ static int bgp_connect_check(struct thread *thread)
return 1; return 1;
} else { } else {
if (bgp_debug_neighbor_events(peer)) if (bgp_debug_neighbor_events(peer))
zlog_debug("%s [Event] Connect failed (%s)", peer->host, zlog_debug("%s [Event] Connect failed %d(%s)",
safe_strerror(errno)); peer->host, status, safe_strerror(status));
BGP_EVENT_ADD(peer, TCP_connection_open_failed); BGP_EVENT_ADD(peer, TCP_connection_open_failed);
return 0; return 0;
} }
@ -1397,13 +1399,14 @@ int bgp_start(struct peer *peer)
if (!bgp_find_or_add_nexthop(peer->bgp, peer->bgp, if (!bgp_find_or_add_nexthop(peer->bgp, peer->bgp,
family2afi(peer->su.sa.sa_family), NULL, family2afi(peer->su.sa.sa_family), NULL,
peer, connected)) { peer, connected)) {
#if defined(HAVE_CUMULUS) if (bgp_zebra_num_connects()) {
if (bgp_debug_neighbor_events(peer)) if (bgp_debug_neighbor_events(peer))
zlog_debug("%s [FSM] Waiting for NHT", peer->host); zlog_debug("%s [FSM] Waiting for NHT",
peer->host);
BGP_EVENT_ADD(peer, TCP_connection_open_failed); BGP_EVENT_ADD(peer, TCP_connection_open_failed);
return 0; return 0;
#endif }
} }
assert(!peer->t_write); assert(!peer->t_write);