aboutsummaryrefslogtreecommitdiff
path: root/sys/net/if_disc.c
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@FreeBSD.org>2001-10-17 18:07:05 +0000
committerRuslan Ermilov <ru@FreeBSD.org>2001-10-17 18:07:05 +0000
commit8071913df2dce4a8c721eeecb338c9fb7d0f8485 (patch)
tree6e9f67b95d216263dd912c61fa5f86b94ce2d728 /sys/net/if_disc.c
parent9082264160f2b068718592bfd97e86af60a9bf2e (diff)
downloadsrc-8071913df2dce4a8c721eeecb338c9fb7d0f8485.tar.gz
src-8071913df2dce4a8c721eeecb338c9fb7d0f8485.zip
Pull post-4.4BSD change to sys/net/route.c from BSD/OS 4.2.
Have sys/net/route.c:rtrequest1(), which takes ``rt_addrinfo *'' as the argument. Pass rt_addrinfo all the way down to rtrequest1 and ifa->ifa_rtrequest. 3rd argument of ifa->ifa_rtrequest is now ``rt_addrinfo *'' instead of ``sockaddr *'' (almost noone is using it anyways). Benefit: the following command now works. Previously we needed 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. Obtained from: BSD/OS, NetBSD MFC after: 1 month PR: kern/28360
Notes
Notes: svn path=/head/; revision=85074
Diffstat (limited to 'sys/net/if_disc.c')
-rw-r--r--sys/net/if_disc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/net/if_disc.c b/sys/net/if_disc.c
index c04c6c29d6f9..fbabf3078df3 100644
--- a/sys/net/if_disc.c
+++ b/sys/net/if_disc.c
@@ -66,7 +66,7 @@ static void discattach(void);
static struct ifnet discif;
static int discoutput(struct ifnet *, struct mbuf *,
struct sockaddr *, struct rtentry *);
-static void discrtrequest(int, struct rtentry *, struct sockaddr *);
+static void discrtrequest(int, struct rtentry *, struct rt_addrinfo *);
static int discioctl(struct ifnet *, u_long, caddr_t);
static void
@@ -151,7 +151,7 @@ discoutput(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst,
/* ARGSUSED */
static void
-discrtrequest(int cmd, struct rtentry *rt, struct sockaddr *sa)
+discrtrequest(int cmd, struct rtentry *rt, struct rt_addrinfo *info)
{
if (rt)
rt->rt_rmx.rmx_mtu = DSMTU;