7483fbadf4
The code for "netstat -gs -f inet" failed if the kernel namelist did not include the _mrtstat symbol. However, that symbol is not in a standard kernel even with the ip_mroute module loaded, where the functionality is available. It is also not in a kernel with MROUTING but also VIMAGE, as there can be multiple sets of stats. However, when running the command on a live system, the symbol is not used; a sysctl is used. Go ahead and try the sysctl in any case, and complain that IPv4 MROUTING is not present only if the sysctl fails with ENOENT. Also fail if _mrtstat is not defined when running on a core file; netstat doesn't know about vnets, so can only work if MROUTING was included, and VIMAGE was not. Reviewed by: bz MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D22311 |
||
---|---|---|
.. | ||
bpf.c | ||
if.c | ||
inet6.c | ||
inet.c | ||
ipsec.c | ||
main.c | ||
Makefile | ||
Makefile.depend | ||
mbuf.c | ||
mroute6.c | ||
mroute.c | ||
netgraph.c | ||
netisr.c | ||
netstat.1 | ||
netstat.h | ||
nlist_symbols | ||
pfkey.c | ||
route.c | ||
sctp.c | ||
unix.c |