diff options
author | Jun-ichiro itojun Hagino <itojun@cvs.openbsd.org> | 2001-01-19 06:37:39 +0000 |
---|---|---|
committer | Jun-ichiro itojun Hagino <itojun@cvs.openbsd.org> | 2001-01-19 06:37:39 +0000 |
commit | 70e4be3ea2932a4a2c3c8e85675ba6fe3eb8edcc (patch) | |
tree | 72015846dbf72703cf304b4efe000aafa7d8a2ca /sys/netinet/if_ether.h | |
parent | 1ec03c593543ff3451fb2102f094e2e24f111e46 (diff) |
pull post-4.4BSD change to sys/net/route.c from BSD/OS 4.2 (UCB copyrighted).
have sys/net/route.c:rtrequest1(), which takes rt_addrinfo * as the argument.
pass rt_addrinfo all the way down to rtrequest, and ifa->ifa_rtrequest.
3rd arg of ifa->ifa_rtrequest is now rt_addrinfo * instead of sockaddr *
(almost noone is using it anyways).
benefit: the follwoing command now works. previously we need two route(8)
invocations, "add" then "change".
# route add -inet6 default ::1 -ifp gif0
remove unsafe typecast in rtrequest(), from rtentry * to sockaddr *. it was
introduced by 4.3BSD-reno and never corrected.
XXX is eon_rtrequest() change correct regarding to 3rd arg?
eon_rtrequest() and rtrequest() were incorrect since 4.3BSD-reno,
so i do not have correct answer in the source code.
someone with more clue about netiso-over-ip, please help.
Diffstat (limited to 'sys/netinet/if_ether.h')
-rw-r--r-- | sys/netinet/if_ether.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/netinet/if_ether.h b/sys/netinet/if_ether.h index e6189417ad1..428aebb2db1 100644 --- a/sys/netinet/if_ether.h +++ b/sys/netinet/if_ether.h @@ -1,4 +1,4 @@ -/* $OpenBSD: if_ether.h,v 1.13 2000/12/28 23:56:47 mickey Exp $ */ +/* $OpenBSD: if_ether.h,v 1.14 2001/01/19 06:37:38 itojun Exp $ */ /* $NetBSD: if_ether.h,v 1.22 1996/05/11 13:00:00 mycroft Exp $ */ /* @@ -199,7 +199,7 @@ void arpintr __P((void)); int arpresolve __P((struct arpcom *, struct rtentry *, struct mbuf *, struct sockaddr *, u_char *)); void arp_ifinit __P((struct arpcom *, struct ifaddr *)); -void arp_rtrequest __P((int, struct rtentry *, struct sockaddr *)); +void arp_rtrequest __P((int, struct rtentry *, struct rt_addrinfo *)); int ether_addmulti __P((struct ifreq *, struct arpcom *)); int ether_delmulti __P((struct ifreq *, struct arpcom *)); @@ -275,7 +275,7 @@ struct ether_multistep { extern struct ifnet *myip_ifp; -void arp_rtrequest __P((int, struct rtentry *, struct sockaddr *)); +void arp_rtrequest __P((int, struct rtentry *, struct rt_addrinfo *)); int arpresolve __P((struct arpcom *, struct rtentry *, struct mbuf *, struct sockaddr *, u_char *)); void arpintr __P((void)); |