summaryrefslogtreecommitdiffstats
path: root/sys/net/rtsock.c
diff options
context:
space:
mode:
authorcognet <cognet@FreeBSD.org>2007-09-08 19:28:45 +0000
committercognet <cognet@FreeBSD.org>2007-09-08 19:28:45 +0000
commit7a6912794da91b4181a5c452c0f28bd0a8a25c11 (patch)
treeeab118473747ec54b5408c7923299e763e8341c2 /sys/net/rtsock.c
parente1de0a1edadaa9d67f677c0aa3a582c9bcc34b9c (diff)
downloadFreeBSD-src-7a6912794da91b4181a5c452c0f28bd0a8a25c11.zip
FreeBSD-src-7a6912794da91b4181a5c452c0f28bd0a8a25c11.tar.gz
Do not set the RTF_GATEWAY flag if RTF_LLINFO is set, it doesn't make much
sense in that context, and leads to unusable routes. This should unbreak bootpd. Discussed with: glebius Submitted by: bms Approved by: re (bmah)
Diffstat (limited to 'sys/net/rtsock.c')
-rw-r--r--sys/net/rtsock.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c
index 82bc719..c2a2051 100644
--- a/sys/net/rtsock.c
+++ b/sys/net/rtsock.c
@@ -528,7 +528,8 @@ route_output(struct mbuf *m, struct socket *so)
RT_UNLOCK(rt);
senderr(error);
}
- rt->rt_flags |= RTF_GATEWAY;
+ if (!(rt->rt_flags & RTF_LLINFO))
+ rt->rt_flags |= RTF_GATEWAY;
}
if (info.rti_ifa != NULL &&
info.rti_ifa != rt->rt_ifa) {
OpenPOWER on IntegriCloud