Module Name: src
Committed By: christos
Date: Thu Nov 6 21:30:10 UTC 2014
Modified Files:
src/usr.bin/netstat: Makefile if.c main.c mroute.c mroute6.c netstat.h
route.c
Removed Files:
src/usr.bin/netstat: show.c
Log Message:
use the common code from route.c
To generate a diff of this commit:
cvs rdiff -u -r1.39 -r1.40 src/usr.bin/netstat/Makefile
cvs rdiff -u -r1.79 -r1.80 src/usr.bin/netstat/if.c
cvs rdiff -u -r1.92 -r1.93 src/usr.bin/netstat/main.c
cvs rdiff -u -r1.24 -r1.25 src/usr.bin/netstat/mroute.c
cvs rdiff -u -r1.14 -r1.15 src/usr.bin/netstat/mroute6.c
cvs rdiff -u -r1.50 -r1.51 src/usr.bin/netstat/netstat.h
cvs rdiff -u -r1.82 -r1.83 src/usr.bin/netstat/route.c
cvs rdiff -u -r1.20 -r0 src/usr.bin/netstat/show.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.bin/netstat/Makefile
diff -u src/usr.bin/netstat/Makefile:1.39 src/usr.bin/netstat/Makefile:1.40
--- src/usr.bin/netstat/Makefile:1.39 Fri Mar 1 13:26:11 2013
+++ src/usr.bin/netstat/Makefile Thu Nov 6 16:30:09 2014
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.39 2013/03/01 18:26:11 joerg Exp $
+# $NetBSD: Makefile,v 1.40 2014/11/06 21:30:09 christos Exp $
# from: @(#)Makefile 8.1 (Berkeley) 6/12/93
.include <bsd.own.mk>
@@ -7,20 +7,22 @@ USE_FORT?= yes # setgid
RUMPPRG=netstat
SRCS= atalk.c bpf.c fast_ipsec.c if.c inet.c inet6.c \
- main.c mbuf.c mroute.c mroute6.c pfkey.c pfsync.c show.c route.c \
- unix.c vtw.c
+ main.c mbuf.c mroute.c mroute6.c pfkey.c pfsync.c route.c \
+ unix.c vtw.c rtutil.c
BINGRP= kmem
BINMODE=2555
LDADD= -lkvm
DPADD= ${LIBKVM}
-CPPFLAGS+= -DIPSEC
+CPPFLAGS+= -DIPSEC -I${.CURDIR}
CPPFLAGS+= -I${NETBSDSRCDIR}/sys/dist/pf
+CPPFLAGS+= -I${NETBSDSRCDIR}/sbin/route
CWARNFLAGS.clang+= -Wno-format
COPTS.show.c += -Wno-format-nonliteral
.PATH: ${.CURDIR}/../../lib/libc/gen
.PATH: ${.CURDIR}/../../lib/libc/net
+.PATH: ${.CURDIR}/../../sbin/route
CPPFLAGS+= -DRUMP_ACTION
RUMPSRCS+= sysctlbyname.c sysctlgetmibinfo.c sysctlnametomib.c
RUMPSRCS+= if_indextoname.c getifaddrs.c
Index: src/usr.bin/netstat/if.c
diff -u src/usr.bin/netstat/if.c:1.79 src/usr.bin/netstat/if.c:1.80
--- src/usr.bin/netstat/if.c:1.79 Sat Oct 19 11:56:06 2013
+++ src/usr.bin/netstat/if.c Thu Nov 6 16:30:09 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: if.c,v 1.79 2013/10/19 15:56:06 christos Exp $ */
+/* $NetBSD: if.c,v 1.80 2014/11/06 21:30:09 christos Exp $ */
/*
* Copyright (c) 1983, 1988, 1993
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "from: @(#)if.c 8.2 (Berkeley) 2/21/94";
#else
-__RCSID("$NetBSD: if.c,v 1.79 2013/10/19 15:56:06 christos Exp $");
+__RCSID("$NetBSD: if.c,v 1.80 2014/11/06 21:30:09 christos Exp $");
#endif
#endif /* not lint */
@@ -63,6 +63,7 @@ __RCSID("$NetBSD: if.c,v 1.79 2013/10/19
#include <err.h>
#include "netstat.h"
+#include "rtutil.h"
#include "prog_ops.h"
#define MAXIF 100
@@ -356,7 +357,7 @@ print_addr(struct sockaddr *sa, struct s
in = inet_makeaddr(ifaddr.in.ia_subnet,
INADDR_ANY);
cp = netname4(in.s_addr,
- ifaddr.in.ia_subnetmask);
+ ifaddr.in.ia_subnetmask, nflag);
#else
if (use_sysctl) {
netmask = ((struct sockaddr_in *)rtinfo[RTAX_NETMASK])->sin_addr.s_addr;
@@ -364,14 +365,14 @@ print_addr(struct sockaddr *sa, struct s
struct in_ifaddr *ifaddr_in = (void *)rtinfo;
netmask = ifaddr_in->ia_subnetmask;
}
- cp = netname4(sin->sin_addr.s_addr, netmask);
+ cp = netname4(sin->sin_addr.s_addr, netmask, nflag);
#endif
if (vflag)
n = strlen(cp) < 13 ? 13 : strlen(cp);
else
n = 13;
printf("%-*.*s ", n, n, cp);
- cp = routename4(sin->sin_addr.s_addr);
+ cp = routename4(sin->sin_addr.s_addr, nflag);
if (vflag)
n = strlen(cp) < 17 ? 17 : strlen(cp);
else
@@ -390,7 +391,7 @@ print_addr(struct sockaddr *sa, struct s
sizeof inm);
printf("\n%25s %-17.17s ", "",
routename4(
- inm.inm_addr.s_addr));
+ inm.inm_addr.s_addr, nflag));
multiaddr =
(u_long)inm.inm_list.le_next;
}
@@ -412,7 +413,7 @@ print_addr(struct sockaddr *sa, struct s
netmask6 = &ifaddr_in6->ia_prefixmask;
}
- cp = netname6(sin6, netmask6);
+ cp = netname6(sin6, netmask6, nflag);
if (vflag)
n = strlen(cp) < 13 ? 13 : strlen(cp);
else
Index: src/usr.bin/netstat/main.c
diff -u src/usr.bin/netstat/main.c:1.92 src/usr.bin/netstat/main.c:1.93
--- src/usr.bin/netstat/main.c:1.92 Thu Oct 9 19:45:47 2014
+++ src/usr.bin/netstat/main.c Thu Nov 6 16:30:09 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: main.c,v 1.92 2014/10/09 23:45:47 enami Exp $ */
+/* $NetBSD: main.c,v 1.93 2014/11/06 21:30:09 christos Exp $ */
/*
* Copyright (c) 1983, 1988, 1993
@@ -39,7 +39,7 @@ __COPYRIGHT("@(#) Copyright (c) 1983, 19
#if 0
static char sccsid[] = "from: @(#)main.c 8.4 (Berkeley) 3/1/94";
#else
-__RCSID("$NetBSD: main.c,v 1.92 2014/10/09 23:45:47 enami Exp $");
+__RCSID("$NetBSD: main.c,v 1.93 2014/11/06 21:30:09 christos Exp $");
#endif
#endif /* not lint */
@@ -64,6 +64,7 @@ __RCSID("$NetBSD: main.c,v 1.92 2014/10/
#include <string.h>
#include <unistd.h>
#include "netstat.h"
+#include "rtutil.h"
#include "prog_ops.h"
struct nlist nl[] = {
@@ -468,7 +469,7 @@ main(int argc, char *argv[])
nlistf = optarg;
break;
case 'n':
- numeric_addr = numeric_port = nflag = 1;
+ numeric_addr = numeric_port = nflag = RT_NFLAG;
break;
case 'P':
errno = 0;
@@ -637,7 +638,7 @@ main(int argc, char *argv[])
rt_stats(use_sysctl ? 0 : nl[N_RTSTAT].n_value);
else {
if (use_sysctl)
- p_rttables(af);
+ p_rttables(af, nflag, 0, ~0);
else
routepr(nl[N_RTREE].n_value);
}
Index: src/usr.bin/netstat/mroute.c
diff -u src/usr.bin/netstat/mroute.c:1.24 src/usr.bin/netstat/mroute.c:1.25
--- src/usr.bin/netstat/mroute.c:1.24 Tue Mar 20 16:34:58 2012
+++ src/usr.bin/netstat/mroute.c Thu Nov 6 16:30:09 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: mroute.c,v 1.24 2012/03/20 20:34:58 matt Exp $ */
+/* $NetBSD: mroute.c,v 1.25 2014/11/06 21:30:09 christos Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -76,7 +76,7 @@
#if 0
static char sccsid[] = "from: @(#)mroute.c 8.1 (Berkeley) 6/6/93";
#else
-__RCSID("$NetBSD: mroute.c,v 1.24 2012/03/20 20:34:58 matt Exp $");
+__RCSID("$NetBSD: mroute.c,v 1.25 2014/11/06 21:30:09 christos Exp $");
#endif
#endif /* not lint */
@@ -103,6 +103,7 @@ __RCSID("$NetBSD: mroute.c,v 1.24 2012/0
#include <stdlib.h>
#include <kvm.h>
#include "netstat.h"
+#include "rtutil.h"
static char *pktscale(u_long);
static void print_bw_meter(struct bw_meter *, int *);
@@ -196,9 +197,9 @@ mroutepr(u_long mrpaddr, u_long mfchasht
printf(" %3u %3u %5u %-15.15s",
vifi, v->v_threshold, v->v_rate_limit,
- routename4(v->v_lcl_addr.s_addr));
+ routename4(v->v_lcl_addr.s_addr, nflag));
printf(" %-15.15s %6lu %7lu\n", (v->v_flags & VIFF_TUNNEL) ?
- routename4(v->v_rmt_addr.s_addr) : "",
+ routename4(v->v_rmt_addr.s_addr, nflag) : "",
v->v_pkt_in, v->v_pkt_out);
}
if (!banner_printed)
@@ -223,9 +224,9 @@ mroutepr(u_long mrpaddr, u_long mfchasht
kread((u_long)mfcp, (char *)&mfc, sizeof(mfc));
printf(" %3lu %-15.15s",
- i, routename4(mfc.mfc_origin.s_addr));
+ i, routename4(mfc.mfc_origin.s_addr, nflag));
printf(" %-15.15s %7s %3u ",
- routename4(mfc.mfc_mcastgrp.s_addr),
+ routename4(mfc.mfc_mcastgrp.s_addr, nflag),
pktscale(mfc.mfc_pkt_cnt), mfc.mfc_parent);
for (vifi = 0; vifi <= numvifs; ++vifi)
if (mfc.mfc_ttls[vifi])
Index: src/usr.bin/netstat/mroute6.c
diff -u src/usr.bin/netstat/mroute6.c:1.14 src/usr.bin/netstat/mroute6.c:1.15
--- src/usr.bin/netstat/mroute6.c:1.14 Fri Oct 18 16:26:45 2013
+++ src/usr.bin/netstat/mroute6.c Thu Nov 6 16:30:09 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: mroute6.c,v 1.14 2013/10/18 20:26:45 christos Exp $ */
+/* $NetBSD: mroute6.c,v 1.15 2014/11/06 21:30:09 christos Exp $ */
/*
* Copyright (C) 1998 WIDE Project.
@@ -117,6 +117,7 @@
#include <stdio.h>
#include <kvm.h>
#include "netstat.h"
+#include "rtutil.h"
#ifdef INET6
@@ -212,9 +213,9 @@ mroute6pr(u_long mrpaddr, u_long mfcaddr
}
printf(" %-*.*s", WID_ORG, WID_ORG,
- routename6(&mfc.mf6c_origin));
+ routename6(&mfc.mf6c_origin, nflag));
printf(" %-*.*s", WID_GRP, WID_GRP,
- routename6(&mfc.mf6c_mcastgrp));
+ routename6(&mfc.mf6c_mcastgrp, nflag));
printf(" %9llu", (unsigned long long)mfc.mf6c_pkt_cnt);
for (waitings = 0, rtep = mfc.mf6c_stall; rtep; ) {
Index: src/usr.bin/netstat/netstat.h
diff -u src/usr.bin/netstat/netstat.h:1.50 src/usr.bin/netstat/netstat.h:1.51
--- src/usr.bin/netstat/netstat.h:1.50 Mon Apr 28 11:41:15 2014
+++ src/usr.bin/netstat/netstat.h Thu Nov 6 16:30:09 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: netstat.h,v 1.50 2014/04/28 15:41:15 christos Exp $ */
+/* $NetBSD: netstat.h,v 1.51 2014/11/06 21:30:09 christos Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -102,7 +102,6 @@ void pim6_stats(u_long, const char *);
void rip6_stats(u_long, const char *);
void mroute6pr(u_long, u_long, u_long);
void mrt6_stats(u_long, u_long);
-char *routename6(struct sockaddr_in6 *);
#endif /*INET6*/
#ifdef IPSEC
@@ -114,28 +113,9 @@ void mbpr(u_long, u_long, u_long, u_long
void hostpr(u_long, u_long);
void impstats(u_long, u_long);
-void pr_rthdr(int, int);
-void pr_family(int);
-struct rt_metrics;
-void pr_rtrmx(struct rt_metrics *);
void rt_stats(u_long);
char *ns_phost(struct sockaddr *);
-void p_rttables(int);
-void p_flags(int, const char *);
-void p_addr(struct sockaddr *, struct sockaddr *, int);
-void p_gwaddr(struct sockaddr *, int);
-void p_sockaddr(struct sockaddr *, struct sockaddr *, int, int);
-char *routename(struct sockaddr *);
-char *routename4(in_addr_t);
-char *netname(struct sockaddr *, struct sockaddr *);
-char *netname4(in_addr_t, in_addr_t);
-
-/* char *routename(u_int32_t); */
-/* char *netname(u_int32_t, u_int32_t); */
-#ifdef INET6
-char *netname6(struct sockaddr_in6 *, struct sockaddr_in6 *);
-#endif
const char *atalk_print(const struct sockaddr *, int);
const char *atalk_print2(const struct sockaddr *, const struct sockaddr *,
int);
Index: src/usr.bin/netstat/route.c
diff -u src/usr.bin/netstat/route.c:1.82 src/usr.bin/netstat/route.c:1.83
--- src/usr.bin/netstat/route.c:1.82 Mon Apr 28 11:41:15 2014
+++ src/usr.bin/netstat/route.c Thu Nov 6 16:30:09 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: route.c,v 1.82 2014/04/28 15:41:15 christos Exp $ */
+/* $NetBSD: route.c,v 1.83 2014/11/06 21:30:09 christos Exp $ */
/*
* Copyright (c) 1983, 1988, 1993
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "from: @(#)route.c 8.3 (Berkeley) 3/9/94";
#else
-__RCSID("$NetBSD: route.c,v 1.82 2014/04/28 15:41:15 christos Exp $");
+__RCSID("$NetBSD: route.c,v 1.83 2014/11/06 21:30:09 christos Exp $");
#endif
#endif /* not lint */
@@ -66,6 +66,7 @@ __RCSID("$NetBSD: route.c,v 1.82 2014/04
#include <unistd.h>
#include "netstat.h"
+#include "rtutil.h"
#define kget(p, d) (kread((u_long)(p), (char *)&(d), sizeof (d)))
@@ -121,9 +122,9 @@ routepr(u_long rtree)
p_tree(head.rnh_treetop);
}
} else if (af == AF_UNSPEC || af == i) {
- pr_family(i);
+ p_family(i);
do_rtent = 1;
- pr_rthdr(i, Aflag);
+ p_rthdr(i, Aflag);
p_tree(head.rnh_treetop);
}
}
@@ -159,7 +160,7 @@ again:
p_rtnode();
} else {
p_sockaddr(kgetsa((const struct sockaddr *)rnode.rn_key),
- NULL, 0, 44);
+ NULL, 0, 44, nflag);
putchar('\n');
}
if ((rn = rnode.rn_dupedkey) != NULL)
@@ -185,7 +186,7 @@ p_rtnode(void)
if (rnode.rn_mask) {
printf("\t mask ");
p_sockaddr(kgetsa((const struct sockaddr *)rnode.rn_mask),
- NULL, 0, -1);
+ NULL, 0, -1, nflag);
} else if (rm == 0)
return;
} else {
@@ -203,10 +204,10 @@ p_rtnode(void)
printf(" <normal>, ");
kget(rmask.rm_leaf, rnode_aux);
p_sockaddr(kgetsa((const struct sockaddr *)rnode_aux.rn_mask),
- NULL, 0, -1);
+ NULL, 0, -1, nflag);
} else
p_sockaddr(kgetsa((const struct sockaddr *)rmask.rm_mask),
- NULL, 0, -1);
+ NULL, 0, -1, nflag);
putchar('}');
if ((rm = rmask.rm_mklist) != NULL)
printf(" ->");
@@ -251,9 +252,9 @@ p_krtentry(struct rtentry *rt)
mask = sockcopy(kgetsa(rt_mask(rt)), &mask_un);
else
mask = sockcopy(NULL, &mask_un);
- p_addr(addr, mask, rt->rt_flags);
- p_gwaddr(kgetsa(rt->rt_gateway), kgetsa(rt->rt_gateway)->sa_family);
- p_flags(rt->rt_flags, "%-6.6s ");
+ p_addr(addr, mask, rt->rt_flags, nflag);
+ p_gwaddr(kgetsa(rt->rt_gateway), kgetsa(rt->rt_gateway)->sa_family, nflag);
+ p_flags(rt->rt_flags);
printf("%6d %8"PRIu64" ", rt->rt_refcnt, rt->rt_use);
if (rt->rt_rmx.rmx_mtu)
printf("%6"PRIu64, rt->rt_rmx.rmx_mtu);
@@ -287,25 +288,7 @@ p_krtentry(struct rtentry *rt)
}
putchar('\n');
if (vflag)
- pr_rtrmx(&rt->rt_rmx);
-}
-
-void
-pr_rtrmx(struct rt_metrics *rmx)
-{
- printf("\texpire %10"PRId64"%c recvpipe %10"PRIu64"%c "
- "sendpipe %10"PRIu64"%c\n",
- (int64_t)rmx->rmx_expire,
- (rmx->rmx_locks & RTV_EXPIRE) ? 'L' : ' ', rmx->rmx_recvpipe,
- (rmx->rmx_locks & RTV_RPIPE) ? 'L' : ' ', rmx->rmx_sendpipe,
- (rmx->rmx_locks & RTV_SPIPE) ? 'L' : ' ');
- printf("\tssthresh %10"PRIu64"%c rtt %10"PRIu64"%c "
- "rttvar %10"PRIu64"%c\n", rmx->rmx_ssthresh,
- (rmx->rmx_locks & RTV_SSTHRESH) ? 'L' : ' ',
- rmx->rmx_rtt, (rmx->rmx_locks & RTV_RTT) ? 'L' : ' ',
- rmx->rmx_rttvar, (rmx->rmx_locks & RTV_RTTVAR) ? 'L' : ' ');
- printf("\thopcount %10"PRIu64"%c\n",
- rmx->rmx_hopcount, (rmx->rmx_locks & RTV_HOPCOUNT) ? 'L' : ' ');
+ p_rtrmx(&rt->rt_rmx);
}
/*