2006-07-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* ospfd.c: (ospf_router_id_update) Fix and document the algorithm for
selecting the router ID: if there is not a statically configured ID,
then stick to the most recent value to avoid disruptive changes.
This should fix bug #288.
+2006-07-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
+
+ * ospfd.c: (ospf_router_id_update) Fix and document the algorithm for
+ selecting the router ID: if there is not a statically configured ID,
+ then stick to the most recent value to avoid disruptive changes.
+ This should fix bug #288.
+
2006-07-26 Paul Jakma <paul.jakma@sun.com>
* ospf_lsa.{c,h}: (ospf_lsa_unlock) Change to take a double pointer
router_id_old = ospf->router_id;
+ /* Select the router ID based on these priorities:
+ 1. Statically assigned router ID is always the first choice.
+ 2. If there is no statically assigned router ID, then try to stick
+ with the most recent value, since changing router ID's is very
+ disruptive.
+ 3. Last choice: just go with whatever the zebra daemon recommends.
+ */
if (ospf->router_id_static.s_addr != 0)
router_id = ospf->router_id_static;
+ else if (ospf->router_id.s_addr != 0)
+ router_id = ospf->router_id;
else
router_id = router_id_zebra;