From: Roy Marples Date: Sat, 13 Sep 2008 10:48:48 +0000 (+0000) Subject: Fix subnet route. X-Git-Tag: v5.0.0~260 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a43bdfa634a490856dc4e2deb4b66e008d3f9b9d;p=thirdparty%2Fdhcpcd.git Fix subnet route. --- diff --git a/if-linux.c b/if-linux.c index 4a9dd61b..803356cc 100644 --- a/if-linux.c +++ b/if-linux.c @@ -365,7 +365,8 @@ if_route(const struct interface *iface, else { nlm->hdr.nlmsg_flags |= NLM_F_CREATE | NLM_F_EXCL; /* We only change route metrics for kernel routes */ - if (action == 0 && netmask->s_addr == iface->net.s_addr) + if (destination->s_addr == (iface->addr.s_addr & iface->net.s_addr) && + netmask->s_addr == iface->net.s_addr) nlm->rt.rtm_protocol = RTPROT_KERNEL; else nlm->rt.rtm_protocol = RTPROT_BOOT;