summaryrefslogtreecommitdiff
path: root/sys/net/route.c
diff options
context:
space:
mode:
authorClaudio Jeker <claudio@cvs.openbsd.org>2008-05-07 02:45:25 +0000
committerClaudio Jeker <claudio@cvs.openbsd.org>2008-05-07 02:45:25 +0000
commit6a964d7c26564757b512ed53d3bd9991d81ff7e4 (patch)
tree95f7dd62367f9c3aae5cccc41e79fec2c1ba128f /sys/net/route.c
parentafe3f783c7dd9a2e636d8a5a28c564423ecd3c8c (diff)
Redo rev 1.8 but this time with an additional fix to solve the dhclient crashes
seen by krw. This is a prerequisite for upcomming routing priorities: Always compare the nexthop if one is specified even if it is a non-multipath route. This mostly affects "route delete" and it will not remove the last route if previous delete is redone. OK henning@
Diffstat (limited to 'sys/net/route.c')
-rw-r--r--sys/net/route.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/net/route.c b/sys/net/route.c
index 6be379a9c08..567d759463a 100644
--- a/sys/net/route.c
+++ b/sys/net/route.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: route.c,v 1.88 2008/05/05 13:06:37 henning Exp $ */
+/* $OpenBSD: route.c,v 1.89 2008/05/07 02:45:24 claudio Exp $ */
/* $NetBSD: route.c,v 1.14 1996/02/13 22:00:46 christos Exp $ */
/*
@@ -1028,7 +1028,8 @@ rtinit(struct ifaddr *ifa, int cmd, int flags)
info.rti_ifa = ifa;
info.rti_flags = flags | ifa->ifa_flags;
info.rti_info[RTAX_DST] = dst;
- info.rti_info[RTAX_GATEWAY] = ifa->ifa_addr;
+ if (cmd == RTM_ADD)
+ info.rti_info[RTAX_GATEWAY] = ifa->ifa_addr;
if (ifa->ifa_ifp->if_rtlabelid &&
(label = rtlabel_id2name(ifa->ifa_ifp->if_rtlabelid)) != NULL) {
bzero(&sa_rl, sizeof(sa_rl));