--- - branch: netbsd-7-0 date: Wed Apr 15 14:59:33 UTC 2020 files: - new: 1.93.2.3.2.1 old: 1.93.2.3 path: src/sys/netinet6/nd6_rtr.c pathrev: src/sys/netinet6/nd6_rtr.c@1.93.2.3.2.1 type: modified id: 20200415T145933Z.1864b7f123d4a5520d1003cbe012ed84eabad7fa log: "Pull up following revision(s) (requested by kim in ticket #1727):\n\n\tsys/netinet6/nd6_rtr.c: revision 1.148 (via patch)\n\nFix default route selection\n\nThe primary issue was that in revision 1.79 a check was added in the\nnd6_defrouter_select() search loop to ignore the entry if RA processing\nis enabled on its interface. In practice this results in all entries\nbeing ignored.\n\nThis fix reverses the condition, so that an entry is ignored when RA\nprocessing is NOT enabled on its interface. \ Further, the entry is\nonly ignored for being selected as the default router. \ The currently\ninstalled router must be identified regardless of the (current) status\nof its interface, so that we can delete the route before installing a\nnew one.\n\nI also added error logging when adding or deleting a route fails. This\nshould help the administrator (or kernel developer) in noticing possible\nproblems.\n\nFinally, if deleting a route fails, the corresponding default route\nentry no longer has its \"installed\" flag cleared, so that deletion will\nbe retried. At a minimum, this will cause repeated messages about the\nfailed deletion as opposed to only getting repeated messages about the\ninstallation of a new default route failing.\n\nFixes PR kern/55091 and also PR bin/54997 as far as the behaviour\nobserved with ndp(8).\n" module: src subject: 'CVS commit: [netbsd-7-0] src/sys/netinet6' unixtime: '1586962773' user: martin