summaryrefslogtreecommitdiffstats
path: root/sys/net/rtsock.c
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2009-09-17 13:27:24 +0000
committerclaudio <claudio@openbsd.org>2009-09-17 13:27:24 +0000
commit67de8e3d1062cdf439fcddef11bf1bfb0eeb59b5 (patch)
tree70ccae93a35a51c561a780fda51f00623361b88b /sys/net/rtsock.c
parentWrap trunk_enqueue() calls in splnet() since sending out lacp packets (diff)
downloadwireguard-openbsd-67de8e3d1062cdf439fcddef11bf1bfb0eeb59b5.tar.xz
wireguard-openbsd-67de8e3d1062cdf439fcddef11bf1bfb0eeb59b5.zip
Remove the comaptibility structures for routing socket version 3.
The RTM_VERSION bump is 2 years ago and so there is no need for this. Diff made by tedu@ some time ago but got never commited so I do it now.
Diffstat (limited to 'sys/net/rtsock.c')
-rw-r--r--sys/net/rtsock.c148
1 files changed, 5 insertions, 143 deletions
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c
index a8e82dac76b..f36ff5b028d 100644
--- a/sys/net/rtsock.c
+++ b/sys/net/rtsock.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rtsock.c,v 1.93 2009/07/07 10:38:49 michele Exp $ */
+/* $OpenBSD: rtsock.c,v 1.94 2009/09/17 13:27:24 claudio Exp $ */
/* $NetBSD: rtsock.c,v 1.18 1996/03/29 00:32:10 cgd Exp $ */
/*
@@ -99,9 +99,6 @@ struct mbuf *rt_msg1(int, struct rt_addrinfo *);
int rt_msg2(int, int, struct rt_addrinfo *, caddr_t,
struct walkarg *);
void rt_xaddrs(caddr_t, caddr_t, struct rt_addrinfo *);
-#ifndef SMALL_KERNEL
-struct rt_msghdr *rtmsg_3to4(struct mbuf *, int *);
-#endif
/* Sleazy use of local variables throughout file, warning!!!! */
#define dst info.rti_info[RTAX_DST]
@@ -367,19 +364,6 @@ route_output(struct mbuf *m, ...)
}
m_copydata(m, 0, len, (caddr_t)rtm);
break;
-#ifndef SMALL_KERNEL
- case RTM_OVERSION:
- if (len < sizeof(struct rt_omsghdr)) {
- error = EINVAL;
- goto flush;
- }
- rtm = rtmsg_3to4(m, &len);
- if (rtm == 0) {
- error = ENOBUFS;
- goto flush;
- }
- break;
-#endif
default:
error = EPROTONOSUPPORT;
goto flush;
@@ -894,28 +878,13 @@ again:
switch (type) {
case RTM_DELADDR:
case RTM_NEWADDR:
-#ifndef SMALL_KERNEL
- if (vers == RTM_OVERSION)
- len = sizeof(struct ifa_omsghdr);
- else
-#endif
- len = sizeof(struct ifa_msghdr);
+ len = sizeof(struct ifa_msghdr);
break;
case RTM_IFINFO:
-#ifndef SMALL_KERNEL
- if (vers == RTM_OVERSION)
- len = sizeof(struct if_omsghdr);
- else
-#endif
- len = sizeof(struct if_msghdr);
+ len = sizeof(struct if_msghdr);
break;
default:
-#ifndef SMALL_KERNEL
- if (vers == RTM_OVERSION)
- len = sizeof(struct rt_omsghdr);
- else
-#endif
- len = sizeof(struct rt_msghdr);
+ len = sizeof(struct rt_msghdr);
break;
}
hlen = len;
@@ -959,7 +928,7 @@ again:
if (cp && w) /* clear the message header */
bzero(cp0, hlen);
- if (cp && vers != RTM_OVERSION) {
+ if (cp) {
struct rt_msghdr *rtm = (struct rt_msghdr *)cp0;
rtm->rtm_version = RTM_VERSION;
@@ -967,15 +936,6 @@ again:
rtm->rtm_msglen = len;
rtm->rtm_hdrlen = hlen;
}
-#ifndef SMALL_KERNEL
- if (cp && vers == RTM_OVERSION) {
- struct rt_omsghdr *rtm = (struct rt_omsghdr *)cp0;
-
- rtm->rtm_version = RTM_OVERSION;
- rtm->rtm_type = type;
- rtm->rtm_msglen = len;
- }
-#endif
return (len);
}
@@ -1201,22 +1161,6 @@ sysctl_dumpentry(struct radix_node *rn, void *v)
else
w->w_where += size;
}
-#ifndef SMALL_KERNEL
- size = rt_msg2(RTM_GET, RTM_OVERSION, &info, NULL, w);
- if (w->w_where && w->w_tmem && w->w_needed <= 0) {
- struct rt_omsghdr *rtm = (struct rt_omsghdr *)w->w_tmem;
-
- rtm->rtm_flags = rt->rt_flags;
- rtm->rtm_rmx.rmx_locks = rt->rt_rmx.rmx_locks;
- rtm->rtm_rmx.rmx_mtu = rt->rt_rmx.rmx_mtu;
- rtm->rtm_index = rt->rt_ifp->if_index;
- rtm->rtm_addrs = info.rti_addrs;
- if ((error = copyout(rtm, w->w_where, size)) != 0)
- w->w_where = NULL;
- else
- w->w_where += size;
- }
-#endif
return (error);
}
@@ -1250,35 +1194,6 @@ sysctl_iflist(int af, struct walkarg *w)
return (error);
w->w_where += len;
}
-#ifndef SMALL_KERNEL
- len = rt_msg2(RTM_IFINFO, RTM_OVERSION, &info, 0, w);
- if (w->w_where && w->w_tmem && w->w_needed <= 0) {
- struct if_omsghdr *ifm;
-
- ifm = (struct if_omsghdr *)w->w_tmem;
- ifm->ifm_index = ifp->if_index;
- ifm->ifm_flags = ifp->if_flags;
- /* just init the most important types of if_data */
- ifm->ifm_data.ifi_type = ifp->if_data.ifi_type;
- ifm->ifm_data.ifi_addrlen = ifp->if_data.ifi_addrlen;
- ifm->ifm_data.ifi_hdrlen = ifp->if_data.ifi_hdrlen;
- ifm->ifm_data.ifi_link_state =
- ifp->if_data.ifi_link_state;
- ifm->ifm_data.ifi_mtu = ifp->if_data.ifi_mtu;
- ifm->ifm_data.ifi_metric = ifp->if_data.ifi_metric;
- if (ifp->if_data.ifi_baudrate > ULONG_MAX)
- ifm->ifm_data.ifi_baudrate = ULONG_MAX;
- else
- ifm->ifm_data.ifi_baudrate =
- ifp->if_data.ifi_baudrate;
-
- ifm->ifm_addrs = info.rti_addrs;
- error = copyout(ifm, w->w_where, len);
- if (error)
- return (error);
- w->w_where += len;
- }
-#endif
ifpaddr = 0;
while ((ifa = TAILQ_NEXT(ifa, ifa_list)) !=
TAILQ_END(&ifp->if_addrlist)) {
@@ -1301,22 +1216,6 @@ sysctl_iflist(int af, struct walkarg *w)
return (error);
w->w_where += len;
}
-#ifndef SMALL_KERNEL
- len = rt_msg2(RTM_NEWADDR, RTM_OVERSION, &info, 0, w);
- if (w->w_where && w->w_tmem && w->w_needed <= 0) {
- struct ifa_omsghdr *ifam;
-
- ifam = (struct ifa_omsghdr *)w->w_tmem;
- ifam->ifam_index = ifa->ifa_ifp->if_index;
- ifam->ifam_flags = ifa->ifa_flags;
- ifam->ifam_metric = ifa->ifa_metric;
- ifam->ifam_addrs = info.rti_addrs;
- error = copyout(w->w_tmem, w->w_where, len);
- if (error)
- return (error);
- w->w_where += len;
- }
-#endif
}
ifaaddr = netmask = brdaddr = 0;
}
@@ -1388,43 +1287,6 @@ sysctl_rtable(int *name, u_int namelen, void *where, size_t *given, void *new,
return (error);
}
-#ifndef SMALL_KERNEL
-struct rt_msghdr *
-rtmsg_3to4(struct mbuf *m, int *len)
-{
- struct rt_msghdr *rtm;
- struct rt_omsghdr *ortm;
- int slen;
-
- slen = *len - sizeof(struct rt_omsghdr);
- *len = sizeof(struct rt_msghdr) + slen;
- R_Malloc(rtm, struct rt_msghdr *, *len);
- if (rtm == 0)
- return (NULL);
- bzero(rtm, sizeof(struct rt_msghdr));
- ortm = mtod(m, struct rt_omsghdr *);
- rtm->rtm_msglen = sizeof(struct rt_msghdr) + slen;
- rtm->rtm_version = RTM_VERSION;
- rtm->rtm_type = ortm->rtm_type;
- rtm->rtm_hdrlen = sizeof(struct rt_msghdr);
- rtm->rtm_index = ortm->rtm_index;
- rtm->rtm_tableid = 0; /* XXX we only care about the main table */
- rtm->rtm_flags = ortm->rtm_flags;
- rtm->rtm_addrs = ortm->rtm_addrs;
- rtm->rtm_seq = ortm->rtm_seq;
- rtm->rtm_fmask = ortm->rtm_fmask;
- rtm->rtm_inits = ortm->rtm_inits;
- /* copy just the interesting stuff ignore the rest */
- rtm->rtm_rmx.rmx_locks = ortm->rtm_rmx.rmx_locks;
- rtm->rtm_rmx.rmx_mtu = ortm->rtm_rmx.rmx_mtu;
-
- m_copydata(m, sizeof(struct rt_omsghdr), slen,
- ((caddr_t)rtm + sizeof(struct rt_msghdr)));
-
- return (rtm);
-}
-#endif
-
/*
* Definitions of protocols supported in the ROUTE domain.
*/