diff options
-rw-r--r-- | bgpd/bgp_nexthop.c | 24 | ||||
-rw-r--r-- | lib/zclient.c | 7 | ||||
-rw-r--r-- | pimd/pim_zlookup.c | 9 |
3 files changed, 11 insertions, 29 deletions
diff --git a/bgpd/bgp_nexthop.c b/bgpd/bgp_nexthop.c index c74bebad..20302e39 100644 --- a/bgpd/bgp_nexthop.c +++ b/bgpd/bgp_nexthop.c @@ -809,13 +809,7 @@ zlookup_read (void) zlog_err("%s: zserv_read_header() failed", __func__); return NULL; } - if (version != ZSERV_VERSION || marker != ZEBRA_HEADER_MARKER) - { - zlog_err("%s: socket %d version mismatch, marker %d, version %d", - __func__, zlookup->sock, marker, version); - return NULL; - } - + /* XXX: not doing anything with raddr */ raddr.s_addr = stream_get_ipv4 (s); metric = stream_getl (s); @@ -918,13 +912,7 @@ zlookup_read_ipv6 (void) zlog_err("%s: zserv_read_header() failed", __func__); return NULL; } - if (version != ZSERV_VERSION || marker != ZEBRA_HEADER_MARKER) - { - zlog_err("%s: socket %d version mismatch, marker %d, version %d", - __func__, zlookup->sock, marker, version); - return NULL; - } - + /* XXX: not actually doing anything with raddr */ stream_get (&raddr, s, 16); @@ -1065,13 +1053,7 @@ bgp_import_check (struct prefix *p, u_int32_t *igpmetric, zlog_err("%s: zserv_read_header() failed", __func__); return 0; } - if (version != ZSERV_VERSION || marker != ZEBRA_HEADER_MARKER) - { - zlog_err("%s: socket %d version mismatch, marker %d, version %d", - __func__, zlookup->sock, marker, version); - return 0; - } - + /* XXX: not using addr */ addr.s_addr = stream_get_ipv4 (s); metric = stream_getl (s); diff --git a/lib/zclient.c b/lib/zclient.c index a0956324..0ce46fef 100644 --- a/lib/zclient.c +++ b/lib/zclient.c @@ -315,6 +315,13 @@ zclient_read_header (struct stream *s, int sock, u_int16_t *size, u_char *marker *vrf_id = stream_getw (s); *cmd = stream_getw (s); + if (*version != ZSERV_VERSION || *marker != ZEBRA_HEADER_MARKER) + { + zlog_err("%s: socket %d version mismatch, marker %d, version %d", + __func__, sock, *marker, *version); + return -1; + } + if (*size && stream_read (s, sock, *size) != *size) return -1; diff --git a/pimd/pim_zlookup.c b/pimd/pim_zlookup.c index fae8f81c..67896d96 100644 --- a/pimd/pim_zlookup.c +++ b/pimd/pim_zlookup.c @@ -196,14 +196,7 @@ static int zclient_read_nexthop(struct zclient *zlookup, zclient_lookup_failed(zlookup); return -3; } - - if (version != ZSERV_VERSION || marker != ZEBRA_HEADER_MARKER) { - zlog_err("%s: socket %d version mismatch, marker %d, version %d", - __func__, zlookup->sock, marker, version); - zclient_lookup_failed(zlookup); - return -4; - } - + if (command != ZEBRA_IPV4_NEXTHOP_LOOKUP_MRIB) { zlog_err("%s: socket %d command mismatch: %d", __func__, zlookup->sock, command); |