diff options
| author | Ruslan Ermilov <ru@FreeBSD.org> | 2001-10-17 18:07:05 +0000 |
|---|---|---|
| committer | Ruslan Ermilov <ru@FreeBSD.org> | 2001-10-17 18:07:05 +0000 |
| commit | 8071913df2dce4a8c721eeecb338c9fb7d0f8485 (patch) | |
| tree | 6e9f67b95d216263dd912c61fa5f86b94ce2d728 /sys/netinet6 | |
| parent | 9082264160f2b068718592bfd97e86af60a9bf2e (diff) | |
Notes
Diffstat (limited to 'sys/netinet6')
| -rw-r--r-- | sys/netinet6/in6_pcb.c | 8 | ||||
| -rw-r--r-- | sys/netinet6/nd6.c | 4 | ||||
| -rw-r--r-- | sys/netinet6/nd6.h | 2 |
3 files changed, 6 insertions, 8 deletions
diff --git a/sys/netinet6/in6_pcb.c b/sys/netinet6/in6_pcb.c index 417ad0c26f4ab..a82ab8453edf2 100644 --- a/sys/netinet6/in6_pcb.c +++ b/sys/netinet6/in6_pcb.c @@ -980,15 +980,13 @@ in6_losing(in6p) if ((rt = in6p->in6p_route.ro_rt) != NULL) { bzero((caddr_t)&info, sizeof(info)); - info.rti_info[RTAX_DST] = - (struct sockaddr *)&in6p->in6p_route.ro_dst; + info.rti_flags = rt->rt_flags; + info.rti_info[RTAX_DST] = rt_key(rt); info.rti_info[RTAX_GATEWAY] = rt->rt_gateway; info.rti_info[RTAX_NETMASK] = rt_mask(rt); rt_missmsg(RTM_LOSING, &info, rt->rt_flags, 0); if (rt->rt_flags & RTF_DYNAMIC) - (void)rtrequest(RTM_DELETE, rt_key(rt), - rt->rt_gateway, rt_mask(rt), rt->rt_flags, - (struct rtentry **)0); + (void)rtrequest1(RTM_DELETE, &info, NULL); in6p->in6p_route.ro_rt = NULL; rtfree(rt); /* diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c index 6fa087a635f96..2dd1758ff0bf4 100644 --- a/sys/netinet6/nd6.c +++ b/sys/netinet6/nd6.c @@ -1085,10 +1085,10 @@ nd6_nud_hint(rt, dst6, force) } void -nd6_rtrequest(req, rt, sa) +nd6_rtrequest(req, rt, info) int req; struct rtentry *rt; - struct sockaddr *sa; /* xxx unused */ + struct rt_addrinfo *info; /* xxx unused */ { struct sockaddr *gate = rt->rt_gateway; struct llinfo_nd6 *ln = (struct llinfo_nd6 *)rt->rt_llinfo; diff --git a/sys/netinet6/nd6.h b/sys/netinet6/nd6.h index a2b342359fa4b..f3c17be9790a4 100644 --- a/sys/netinet6/nd6.h +++ b/sys/netinet6/nd6.h @@ -353,7 +353,7 @@ struct llinfo_nd6 *nd6_free __P((struct rtentry *)); void nd6_nud_hint __P((struct rtentry *, struct in6_addr *, int)); int nd6_resolve __P((struct ifnet *, struct rtentry *, struct mbuf *, struct sockaddr *, u_char *)); -void nd6_rtrequest __P((int, struct rtentry *, struct sockaddr *)); +void nd6_rtrequest __P((int, struct rtentry *, struct rt_addrinfo *)); int nd6_ioctl __P((u_long, caddr_t, struct ifnet *)); struct rtentry *nd6_cache_lladdr __P((struct ifnet *, struct in6_addr *, char *, int, int, int)); |
