summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbluhm <bluhm@openbsd.org>2014-02-13 22:01:50 +0000
committerbluhm <bluhm@openbsd.org>2014-02-13 22:01:50 +0000
commitb32b784f3c4d6ef417e780ed7c628f9d16180d66 (patch)
tree5a6d5c4b2802208f82f087725e58acd1b54ae775
parentremove tendrils of namei dumping code (diff)
downloadwireguard-openbsd-b32b784f3c4d6ef417e780ed7c628f9d16180d66.tar.xz
wireguard-openbsd-b32b784f3c4d6ef417e780ed7c628f9d16180d66.zip
Replace hand crafted routing label code with the rtlabel_id2sa()
function call. Name sockaddr_rtlabel variable sa_rl everywhere. OK mpi@ claudio@
-rw-r--r--sys/net/rtsock.c33
1 files changed, 6 insertions, 27 deletions
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c
index bc0a2f3f642..9610e1e7721 100644
--- a/sys/net/rtsock.c
+++ b/sys/net/rtsock.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rtsock.c,v 1.138 2014/02/12 13:01:50 henning Exp $ */
+/* $OpenBSD: rtsock.c,v 1.139 2014/02/13 22:01:50 bluhm Exp $ */
/* $NetBSD: rtsock.c,v 1.18 1996/03/29 00:32:10 cgd Exp $ */
/*
@@ -446,11 +446,10 @@ route_output(struct mbuf *m, ...)
struct ifaddr *ifa = NULL;
struct socket *so;
struct rawcb *rp = NULL;
- struct sockaddr_rtlabel sa_rt;
+ struct sockaddr_rtlabel sa_rl;
#ifdef MPLS
struct sockaddr_mpls sa_mpls, *psa_mpls;
#endif
- const char *label;
va_list ap;
u_int tableid;
u_int8_t prio;
@@ -686,17 +685,8 @@ report:
info.rti_info[RTAX_DST] = rt_key(rt);
info.rti_info[RTAX_GATEWAY] = rt->rt_gateway;
info.rti_info[RTAX_NETMASK] = rt_mask(rt);
-
- if (rt->rt_labelid) {
- bzero(&sa_rt, sizeof(sa_rt));
- sa_rt.sr_len = sizeof(sa_rt);
- label = rtlabel_id2name(rt->rt_labelid);
- if (label != NULL)
- strlcpy(sa_rt.sr_label, label,
- sizeof(sa_rt.sr_label));
- info.rti_info[RTAX_LABEL] =
- (struct sockaddr *)&sa_rt;
- }
+ info.rti_info[RTAX_LABEL] =
+ rtlabel_id2sa(rt->rt_labelid, &sa_rl);
#ifdef MPLS
if (rt->rt_flags & RTF_MPLS) {
bzero(&sa_mpls, sizeof(sa_mpls));
@@ -1256,8 +1246,7 @@ sysctl_dumpentry(struct radix_node *rn, void *v, u_int id)
#ifdef MPLS
struct sockaddr_mpls sa_mpls;
#endif
- struct sockaddr_rtlabel sa_rt;
- const char *label;
+ struct sockaddr_rtlabel sa_rl;
if (w->w_op == NET_RT_FLAGS && !(rt->rt_flags & w->w_arg))
return 0;
@@ -1272,17 +1261,7 @@ sysctl_dumpentry(struct radix_node *rn, void *v, u_int id)
if (rt->rt_ifp->if_flags & IFF_POINTOPOINT)
info.rti_info[RTAX_BRD] = rt->rt_ifa->ifa_dstaddr;
}
- if (rt->rt_labelid) {
- bzero(&sa_rt, sizeof(sa_rt));
- sa_rt.sr_len = sizeof(sa_rt);
- label = rtlabel_id2name(rt->rt_labelid);
- if (label != NULL) {
- strlcpy(sa_rt.sr_label, label,
- sizeof(sa_rt.sr_label));
- info.rti_info[RTAX_LABEL] =
- (struct sockaddr *)&sa_rt;
- }
- }
+ info.rti_info[RTAX_LABEL] = rtlabel_id2sa(rt->rt_labelid, &sa_rl);
#ifdef MPLS
if (rt->rt_flags & RTF_MPLS) {
bzero(&sa_mpls, sizeof(sa_mpls));