Commit Diff


commit - 8c06089ad5cd59aaaad887949808bd94a1c77ffb
commit + d4510bcfd5422baabd848014c09e477d68a8a772
blob - a899258cb7f4da6759becc236358b0b715f46fc0
blob + 00017bf8a8f2051af1d1393e820c5bfc9a69e7d3
--- kroute.c
+++ kroute.c
@@ -172,6 +172,8 @@ flushroutes(int af, int af2)
 	for (next = rtdump->buf; next < rtdump->lim; next += rtm->rtm_msglen) {
 		rtm = (struct rt_msghdr *)next;
 		if ((rtm->rtm_flags & (RTF_GATEWAY|RTF_STATIC|RTF_LLINFO)) == 0)
+			continue;
+		if (af2 == AF_LINK && (rtm->rtm_flags & RTF_LOCAL))
 			continue;
 		if (verbose) {
 			printf("\n%% Read message:\n");