summaryrefslogtreecommitdiffstats
path: root/ospfd/ospf_packet.c
diff options
context:
space:
mode:
Diffstat (limited to 'ospfd/ospf_packet.c')
-rw-r--r--ospfd/ospf_packet.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/ospfd/ospf_packet.c b/ospfd/ospf_packet.c
index 5f0d99da..c7279c9a 100644
--- a/ospfd/ospf_packet.c
+++ b/ospfd/ospf_packet.c
@@ -765,6 +765,27 @@ ospf_hello (struct ip *iph, struct ospf_header *ospfh,
return;
}
+<<<<<<< HEAD:ospfd/ospf_packet.c
+ /* If incoming interface is passive one, ignore Hello. */
+ if (OSPF_IF_PASSIVE_STATUS (oi) == OSPF_IF_PASSIVE) {
+ char buf[3][INET_ADDRSTRLEN];
+ zlog_debug ("ignoring HELLO from router %s sent to %s, "
+ "received on a passive interface, %s",
+ inet_ntop(AF_INET, &ospfh->router_id, buf[0], sizeof(buf[0])),
+ inet_ntop(AF_INET, &iph->ip_dst, buf[1], sizeof(buf[1])),
+ inet_ntop(AF_INET, &oi->address->u.prefix4,
+ buf[2], sizeof(buf[2])));
+ if (iph->ip_dst.s_addr == htonl(OSPF_ALLSPFROUTERS))
+ {
+ /* Try to fix multicast membership. */
+ OI_MEMBER_JOINED(oi, MEMBER_ALLROUTERS);
+ ospf_if_set_multicast(oi);
+ }
+ return;
+ }
+
+=======
+>>>>>>> 41dc3488cf127a1e23333459a0c316ded67f7ff3:ospfd/ospf_packet.c
/* get neighbor prefix. */
p.family = AF_INET;
p.prefixlen = ip_masklen (hello->network_mask);