diff options
author | Claudio Jeker <claudio@cvs.openbsd.org> | 2007-12-30 21:13:28 +0000 |
---|---|---|
committer | Claudio Jeker <claudio@cvs.openbsd.org> | 2007-12-30 21:13:28 +0000 |
commit | 5ba6bab5696e156f8d6646d697b890063e56e356 (patch) | |
tree | 160a595e297a5f6c6329cb8b94e72408ada058bb /sys/netinet/in_pcb.c | |
parent | d503ade66ee009876c717ac413f413c920ad077b (diff) |
A struct rt_addrinfo is needed for rt_missmsg() so we can use rtrequest1()
directly instead of takeing the detour via rtrequest().
OK henning@ markus@
Diffstat (limited to 'sys/netinet/in_pcb.c')
-rw-r--r-- | sys/netinet/in_pcb.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/netinet/in_pcb.c b/sys/netinet/in_pcb.c index 55ce64013f7..e496b8c5931 100644 --- a/sys/netinet/in_pcb.c +++ b/sys/netinet/in_pcb.c @@ -1,4 +1,4 @@ -/* $OpenBSD: in_pcb.c,v 1.91 2007/11/26 09:28:33 martynas Exp $ */ +/* $OpenBSD: in_pcb.c,v 1.92 2007/12/30 21:13:27 claudio Exp $ */ /* $NetBSD: in_pcb.c,v 1.25 1996/02/13 23:41:53 christos Exp $ */ /* @@ -628,13 +628,13 @@ in_losing(inp) if ((rt = inp->inp_route.ro_rt)) { inp->inp_route.ro_rt = 0; bzero((caddr_t)&info, sizeof(info)); + info.rti_flags = rt->rt_flags; info.rti_info[RTAX_DST] = &inp->inp_route.ro_dst; info.rti_info[RTAX_GATEWAY] = rt->rt_gateway; info.rti_info[RTAX_NETMASK] = rt_mask(rt); rt_missmsg(RTM_LOSING, &info, rt->rt_flags, rt->rt_ifp, 0, 0); if (rt->rt_flags & RTF_DYNAMIC) - (void) rtrequest(RTM_DELETE, rt_key(rt), - rt->rt_gateway, rt_mask(rt), rt->rt_flags, + (void)rtrequest1(RTM_DELETE, &info, (struct rtentry **)0, 0); /* * A new route can be allocated |