From 33be3ba713901befe2df651b869a406df8fc8ace Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Mon, 21 Oct 2013 15:06:09 +0200 Subject: Accepts a change of OSPFv3 neighbor's IP address. Thanks to Pierre Pfister for the patch. --- proto/ospf/hello.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'proto') diff --git a/proto/ospf/hello.c b/proto/ospf/hello.c index 58e87bbf..68c345f4 100644 --- a/proto/ospf/hello.c +++ b/proto/ospf/hello.c @@ -152,6 +152,14 @@ ospf_hello_receive(struct ospf_packet *ps_i, struct ospf_iface *ifa, n->iface_id = ntohl(ps->iface_id); #endif } +#ifdef OSPFv3 /* NOTE: this could also be relevant for OSPFv2 on PtP ifaces */ + else if (!ipa_equal(faddr, n->ip)) + { + OSPF_TRACE(D_EVENTS, "Neighbor address changed from %I to %I", n->ip, faddr); + n->ip = faddr; + } +#endif + ospf_neigh_sm(n, INM_HELLOREC); pnrid = (u32 *) ((struct ospf_hello_packet *) (ps + 1)); -- cgit v1.2.3