Module Name: src Committed By: martin Date: Mon Aug 19 15:56:49 UTC 2019
Modified Files: src/usr.bin/netstat [netbsd-9]: Makefile atalk.c bpf.c fast_ipsec.c inet.c inet6.c netstat_hostops.c netstat_rumpops.c pfkey.c pfsync.c prog_ops.h Log Message: Pull up following revision(s) (requested by kamil in ticket #94): usr.bin/netstat/netstat_rumpops.c: revision 1.2 usr.bin/netstat/netstat_hostops.c: revision 1.2 usr.bin/netstat/inet6.c: revision 1.73 usr.bin/netstat/bpf.c: revision 1.14 usr.bin/netstat/Makefile: revision 1.46 usr.bin/netstat/prog_ops.h: revision 1.3 usr.bin/netstat/pfsync.c: revision 1.2 usr.bin/netstat/pfkey.c: revision 1.2 usr.bin/netstat/fast_ipsec.c: revision 1.23 usr.bin/netstat/atalk.c: revision 1.17 usr.bin/netstat/inet.c: revision 1.110 netstat: Add indirection of symbols to remove clash with sanitizers Add indirection and symbol renaming under MKSANITIZER for the linked in version of sysctlbyname, sysctlgetmibinfo and sysctlnametomib. To generate a diff of this commit: cvs rdiff -u -r1.45 -r1.45.6.1 src/usr.bin/netstat/Makefile cvs rdiff -u -r1.16 -r1.16.18.1 src/usr.bin/netstat/atalk.c cvs rdiff -u -r1.13 -r1.13.4.1 src/usr.bin/netstat/bpf.c cvs rdiff -u -r1.22 -r1.22.8.1 src/usr.bin/netstat/fast_ipsec.c cvs rdiff -u -r1.109 -r1.109.2.1 src/usr.bin/netstat/inet.c cvs rdiff -u -r1.72 -r1.72.2.1 src/usr.bin/netstat/inet6.c cvs rdiff -u -r1.1 -r1.1.48.1 src/usr.bin/netstat/netstat_hostops.c \ src/usr.bin/netstat/netstat_rumpops.c src/usr.bin/netstat/pfsync.c cvs rdiff -u -r1.1 -r1.1.44.1 src/usr.bin/netstat/pfkey.c cvs rdiff -u -r1.2 -r1.2.48.1 src/usr.bin/netstat/prog_ops.h 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.45 src/usr.bin/netstat/Makefile:1.45.6.1 --- src/usr.bin/netstat/Makefile:1.45 Tue Oct 10 19:31:10 2017 +++ src/usr.bin/netstat/Makefile Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.45 2017/10/10 19:31:10 christos Exp $ +# $NetBSD: Makefile,v 1.45.6.1 2019/08/19 15:56:49 martin Exp $ # from: @(#)Makefile 8.1 (Berkeley) 6/12/93 .include <bsd.own.mk> @@ -25,6 +25,10 @@ RUMPSRCS+= sysctlbyname.c sysctlgetmibin LDADD.rump+= -lrumpres DPADD.add+= ${LIBRUMPRES} CPPFLAGS+= -DRUMP_ACTION + +SANITIZER_RENAME_CLASSES+= rump +SANITIZER_RENAME_FILES.rump+= ${PROG}_rumpops.c ${RUMPSRCS} +SANITIZER_RENAME_SYMBOL.rump+= sysctlbyname sysctlgetmibinfo sysctlnametomib .endif Index: src/usr.bin/netstat/atalk.c diff -u src/usr.bin/netstat/atalk.c:1.16 src/usr.bin/netstat/atalk.c:1.16.18.1 --- src/usr.bin/netstat/atalk.c:1.16 Sat Jun 6 13:08:31 2015 +++ src/usr.bin/netstat/atalk.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: atalk.c,v 1.16 2015/06/06 13:08:31 joerg Exp $ */ +/* $NetBSD: atalk.c,v 1.16.18.1 2019/08/19 15:56:49 martin Exp $ */ /* * Copyright (c) 1983, 1988, 1993 @@ -34,7 +34,7 @@ #if 0 static char sccsid[] = "from @(#)atalk.c 1.1 (Whistle) 6/6/96"; #else -__RCSID("$NetBSD: atalk.c,v 1.16 2015/06/06 13:08:31 joerg Exp $"); +__RCSID("$NetBSD: atalk.c,v 1.16.18.1 2019/08/19 15:56:49 martin Exp $"); #endif #endif /* not lint */ @@ -61,6 +61,7 @@ __RCSID("$NetBSD: atalk.c,v 1.16 2015/06 #include <stdio.h> #include <string.h> #include "netstat.h" +#include "prog_ops.h" struct ddpcb ddpcb; struct socket sockb; @@ -290,7 +291,7 @@ ddp_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(ddpstat); - if (sysctlbyname("net.atalk.ddp.stats", ddpstat, &size, + if (prog_sysctlbyname("net.atalk.ddp.stats", ddpstat, &size, NULL, 0) == -1) return; } else { Index: src/usr.bin/netstat/bpf.c diff -u src/usr.bin/netstat/bpf.c:1.13 src/usr.bin/netstat/bpf.c:1.13.4.1 --- src/usr.bin/netstat/bpf.c:1.13 Tue Jun 26 09:50:42 2018 +++ src/usr.bin/netstat/bpf.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: bpf.c,v 1.13 2018/06/26 09:50:42 msaitoh Exp $ */ +/* $NetBSD: bpf.c,v 1.13.4.1 2019/08/19 15:56:49 martin Exp $ */ /* * Copyright (c) 2005 The NetBSD Foundation, Inc. @@ -53,7 +53,7 @@ bpf_stats(void) size_t len = sizeof(bpf_s); if (use_sysctl) { - if (sysctlbyname("net.bpf.stats", &bpf_s, &len, NULL, 0) == -1) + if (prog_sysctlbyname("net.bpf.stats", &bpf_s, &len, NULL, 0) == -1) err(1, "net.bpf.stats"); printf("bpf:\n"); @@ -83,7 +83,7 @@ bpf_dump(const char *bpfif) /* adapted from sockstat.c by Andrew Brown */ sz = CTL_MAXNAME; - if (sysctlnametomib("net.bpf.peers", &name[0], &sz) == -1) + if (prog_sysctlnametomib("net.bpf.peers", &name[0], &sz) == -1) err(1, "sysctlnametomib: net.bpf.peers"); namelen = sz; Index: src/usr.bin/netstat/fast_ipsec.c diff -u src/usr.bin/netstat/fast_ipsec.c:1.22 src/usr.bin/netstat/fast_ipsec.c:1.22.8.1 --- src/usr.bin/netstat/fast_ipsec.c:1.22 Thu Jun 29 07:15:27 2017 +++ src/usr.bin/netstat/fast_ipsec.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: fast_ipsec.c,v 1.22 2017/06/29 07:15:27 ozaki-r Exp $ */ +/* $NetBSD: fast_ipsec.c,v 1.22.8.1 2019/08/19 15:56:49 martin Exp $ */ /* $FreeBSD: src/tools/tools/crypto/ipsecstats.c,v 1.1.4.1 2003/06/03 00:13:13 sam Exp $ */ /*- @@ -33,7 +33,7 @@ #include <sys/cdefs.h> #ifndef lint #ifdef __NetBSD__ -__RCSID("$NetBSD: fast_ipsec.c,v 1.22 2017/06/29 07:15:27 ozaki-r Exp $"); +__RCSID("$NetBSD: fast_ipsec.c,v 1.22.8.1 2019/08/19 15:56:49 martin Exp $"); #endif #endif /* not lint*/ @@ -62,6 +62,7 @@ __RCSID("$NetBSD: fast_ipsec.c,v 1.22 20 #include <string.h> #include "netstat.h" +#include "prog_ops.h" /* * Table-driven mapping from SADB algorithm codes to string names. @@ -116,7 +117,7 @@ fast_ipsec_stats(u_long off, const char memset(ipips, 0, sizeof(ipips)); slen = sizeof(ipsecstats); - status = sysctlbyname("net.inet.ipsec.ipsecstats", ipsecstats, &slen, + status = prog_sysctlbyname("net.inet.ipsec.ipsecstats", ipsecstats, &slen, NULL, 0); if (status < 0) { if (errno == ENOENT) @@ -126,22 +127,22 @@ fast_ipsec_stats(u_long off, const char } slen = sizeof (ahstats); - status = sysctlbyname("net.inet.ah.ah_stats", ahstats, &slen, NULL, 0); + status = prog_sysctlbyname("net.inet.ah.ah_stats", ahstats, &slen, NULL, 0); if (status < 0 && errno != ENOMEM) err(1, "net.inet.ah.ah_stats"); slen = sizeof (espstats); - status = sysctlbyname("net.inet.esp.esp_stats", espstats, &slen, NULL, 0); + status = prog_sysctlbyname("net.inet.esp.esp_stats", espstats, &slen, NULL, 0); if (status < 0 && errno != ENOMEM) err(1, "net.inet.esp.esp_stats"); slen = sizeof(ipcs); - status = sysctlbyname("net.inet.ipcomp.ipcomp_stats", ipcs, &slen, NULL, 0); + status = prog_sysctlbyname("net.inet.ipcomp.ipcomp_stats", ipcs, &slen, NULL, 0); if (status < 0 && errno != ENOMEM) err(1, "net.inet.ipcomp.ipcomp_stats"); slen = sizeof(ipips); - status = sysctlbyname("net.inet.ipip.ipip_stats", ipips, &slen, NULL, 0); + status = prog_sysctlbyname("net.inet.ipip.ipip_stats", ipips, &slen, NULL, 0); if (status < 0 && errno != ENOMEM) err(1, "net.inet.ipip.ipip_stats"); Index: src/usr.bin/netstat/inet.c diff -u src/usr.bin/netstat/inet.c:1.109 src/usr.bin/netstat/inet.c:1.109.2.1 --- src/usr.bin/netstat/inet.c:1.109 Mon May 13 07:48:42 2019 +++ src/usr.bin/netstat/inet.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: inet.c,v 1.109 2019/05/13 07:48:42 ozaki-r Exp $ */ +/* $NetBSD: inet.c,v 1.109.2.1 2019/08/19 15:56:49 martin Exp $ */ /* * Copyright (c) 1983, 1988, 1993 @@ -34,7 +34,7 @@ #if 0 static char sccsid[] = "from: @(#)inet.c 8.4 (Berkeley) 4/20/94"; #else -__RCSID("$NetBSD: inet.c,v 1.109 2019/05/13 07:48:42 ozaki-r Exp $"); +__RCSID("$NetBSD: inet.c,v 1.109.2.1 2019/08/19 15:56:49 martin Exp $"); #endif #endif /* not lint */ @@ -241,7 +241,7 @@ getpcblist_sysctl(const char *name, size err(1, "asprintf"); /* get dynamic pcblist node */ - if (sysctlnametomib(mibname, mib, &namelen) == -1) { + if (prog_sysctlnametomib(mibname, mib, &namelen) == -1) { if (errno == ENOENT) { *len = 0; return NULL; @@ -403,7 +403,7 @@ tcp_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(tcpstat); - if (sysctlbyname("net.inet.tcp.stats", tcpstat, &size, + if (prog_sysctlbyname("net.inet.tcp.stats", tcpstat, &size, NULL, 0) == -1) return; } else { @@ -530,7 +530,7 @@ udp_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(udpstat); - if (sysctlbyname("net.inet.udp.stats", udpstat, &size, + if (prog_sysctlbyname("net.inet.udp.stats", udpstat, &size, NULL, 0) == -1) return; } else { @@ -583,7 +583,7 @@ ip_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(ipstat); - if (sysctlbyname("net.inet.ip.stats", ipstat, &size, + if (prog_sysctlbyname("net.inet.ip.stats", ipstat, &size, NULL, 0) == -1) return; } else { @@ -648,7 +648,7 @@ icmp_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(icmpstat); - if (sysctlbyname("net.inet.icmp.stats", icmpstat, &size, + if (prog_sysctlbyname("net.inet.icmp.stats", icmpstat, &size, NULL, 0) == -1) return; } else { @@ -704,7 +704,7 @@ igmp_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(igmpstat); - if (sysctlbyname("net.inet.igmp.stats", igmpstat, &size, + if (prog_sysctlbyname("net.inet.igmp.stats", igmpstat, &size, NULL, 0) == -1) return; } else { @@ -742,7 +742,7 @@ carp_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(carpstat); - if (sysctlbyname("net.inet.carp.stats", carpstat, &size, + if (prog_sysctlbyname("net.inet.carp.stats", carpstat, &size, NULL, 0) == -1) return; } else { @@ -828,7 +828,7 @@ arp_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(arpstat); - if (sysctlbyname("net.inet.arp.stats", arpstat, &size, + if (prog_sysctlbyname("net.inet.arp.stats", arpstat, &size, NULL, 0) == -1) return; } else { Index: src/usr.bin/netstat/inet6.c diff -u src/usr.bin/netstat/inet6.c:1.72 src/usr.bin/netstat/inet6.c:1.72.2.1 --- src/usr.bin/netstat/inet6.c:1.72 Mon May 13 07:48:42 2019 +++ src/usr.bin/netstat/inet6.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: inet6.c,v 1.72 2019/05/13 07:48:42 ozaki-r Exp $ */ +/* $NetBSD: inet6.c,v 1.72.2.1 2019/08/19 15:56:49 martin Exp $ */ /* BSDI inet.c,v 2.3 1995/10/24 02:19:29 prb Exp */ /* @@ -64,7 +64,7 @@ #if 0 static char sccsid[] = "@(#)inet.c 8.4 (Berkeley) 4/20/94"; #else -__RCSID("$NetBSD: inet6.c,v 1.72 2019/05/13 07:48:42 ozaki-r Exp $"); +__RCSID("$NetBSD: inet6.c,v 1.72.2.1 2019/08/19 15:56:49 martin Exp $"); #endif #endif /* not lint */ @@ -416,7 +416,7 @@ tcp6_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(tcp6stat); - if (sysctlbyname("net.inet6.tcp6.stats", &tcp6stat, &size, + if (prog_sysctlbyname("net.inet6.tcp6.stats", &tcp6stat, &size, NULL, 0) == -1) return; } else { @@ -502,7 +502,7 @@ udp6_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(udp6stat); - if (sysctlbyname("net.inet6.udp6.stats", udp6stat, &size, + if (prog_sysctlbyname("net.inet6.udp6.stats", udp6stat, &size, NULL, 0) == -1) return; } else { @@ -646,7 +646,7 @@ ip6_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(ip6stat); - if (sysctlbyname("net.inet6.ip6.stats", ip6stat, &size, + if (prog_sysctlbyname("net.inet6.ip6.stats", ip6stat, &size, NULL, 0) == -1) return; } else { @@ -1132,7 +1132,7 @@ icmp6_stats(u_long off, const char *name if (use_sysctl) { size_t size = sizeof(icmp6stat); - if (sysctlbyname("net.inet6.icmp6.stats", icmp6stat, &size, + if (prog_sysctlbyname("net.inet6.icmp6.stats", icmp6stat, &size, NULL, 0) == -1) return; } else { @@ -1280,7 +1280,7 @@ pim6_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(pim6stat); - if (sysctlbyname("net.inet6.pim6.stats", pim6stat, &size, + if (prog_sysctlbyname("net.inet6.pim6.stats", pim6stat, &size, NULL, 0) == -1) return; } else { @@ -1313,7 +1313,7 @@ rip6_stats(u_long off, const char *name) if (use_sysctl) { size_t size = sizeof(rip6stat); - if (sysctlbyname("net.inet6.raw6.stats", rip6stat, &size, + if (prog_sysctlbyname("net.inet6.raw6.stats", rip6stat, &size, NULL, 0) == -1) return; } else { Index: src/usr.bin/netstat/netstat_hostops.c diff -u src/usr.bin/netstat/netstat_hostops.c:1.1 src/usr.bin/netstat/netstat_hostops.c:1.1.48.1 --- src/usr.bin/netstat/netstat_hostops.c:1.1 Mon Dec 13 21:15:30 2010 +++ src/usr.bin/netstat/netstat_hostops.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: netstat_hostops.c,v 1.1 2010/12/13 21:15:30 pooka Exp $ */ +/* $NetBSD: netstat_hostops.c,v 1.1.48.1 2019/08/19 15:56:49 martin Exp $ */ /* * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -28,7 +28,7 @@ #include <sys/cdefs.h> #ifndef lint -__RCSID("$NetBSD: netstat_hostops.c,v 1.1 2010/12/13 21:15:30 pooka Exp $"); +__RCSID("$NetBSD: netstat_hostops.c,v 1.1.48.1 2019/08/19 15:56:49 martin Exp $"); #endif /* !lint */ #include <sys/types.h> @@ -38,4 +38,10 @@ __RCSID("$NetBSD: netstat_hostops.c,v 1. const struct prog_ops prog_ops = { .op_sysctl = sysctl, + + .op_sysctlbyname = sysctlbyname, + + .op_sysctlgetmibinfo = sysctlgetmibinfo, + + .op_sysctlnametomib = sysctlnametomib, }; Index: src/usr.bin/netstat/netstat_rumpops.c diff -u src/usr.bin/netstat/netstat_rumpops.c:1.1 src/usr.bin/netstat/netstat_rumpops.c:1.1.48.1 --- src/usr.bin/netstat/netstat_rumpops.c:1.1 Mon Dec 13 21:15:30 2010 +++ src/usr.bin/netstat/netstat_rumpops.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: netstat_rumpops.c,v 1.1 2010/12/13 21:15:30 pooka Exp $ */ +/* $NetBSD: netstat_rumpops.c,v 1.1.48.1 2019/08/19 15:56:49 martin Exp $ */ /* * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -28,10 +28,11 @@ #include <sys/cdefs.h> #ifndef lint -__RCSID("$NetBSD: netstat_rumpops.c,v 1.1 2010/12/13 21:15:30 pooka Exp $"); +__RCSID("$NetBSD: netstat_rumpops.c,v 1.1.48.1 2019/08/19 15:56:49 martin Exp $"); #endif /* !lint */ #include <sys/types.h> +#include <sys/sysctl.h> #include <rump/rump.h> #include <rump/rumpclient.h> @@ -43,4 +44,10 @@ const struct prog_ops prog_ops = { .op_init = rumpclient_init, .op_sysctl = rump_sys___sysctl, + + .op_sysctlbyname = sysctlbyname, + + .op_sysctlgetmibinfo = sysctlgetmibinfo, + + .op_sysctlnametomib = sysctlnametomib, }; Index: src/usr.bin/netstat/pfsync.c diff -u src/usr.bin/netstat/pfsync.c:1.1 src/usr.bin/netstat/pfsync.c:1.1.48.1 --- src/usr.bin/netstat/pfsync.c:1.1 Tue Mar 1 19:01:59 2011 +++ src/usr.bin/netstat/pfsync.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: pfsync.c,v 1.1 2011/03/01 19:01:59 dyoung Exp $ */ +/* $NetBSD: pfsync.c,v 1.1.48.1 2019/08/19 15:56:49 martin Exp $ */ /* * Copyright (c) 1983, 1988, 1993 @@ -31,7 +31,7 @@ #include <sys/cdefs.h> #ifndef lint -__RCSID("$NetBSD: pfsync.c,v 1.1 2011/03/01 19:01:59 dyoung Exp $"); +__RCSID("$NetBSD: pfsync.c,v 1.1.48.1 2019/08/19 15:56:49 martin Exp $"); #endif /* not lint */ #define _CALLOUT_PRIVATE /* for defs in sys/callout.h */ @@ -81,7 +81,7 @@ pfsync_stats(u_long off, const char *nam if (use_sysctl) { size_t size = sizeof(pfsyncstat); - if (sysctlbyname("net.inet.pfsync.stats", pfsyncstat, &size, + if (prog_sysctlbyname("net.inet.pfsync.stats", pfsyncstat, &size, NULL, 0) == -1) return; } else { @@ -115,5 +115,3 @@ pfsync_stats(u_long off, const char *nam #undef p #undef p2 } - - Index: src/usr.bin/netstat/pfkey.c diff -u src/usr.bin/netstat/pfkey.c:1.1 src/usr.bin/netstat/pfkey.c:1.1.44.1 --- src/usr.bin/netstat/pfkey.c:1.1 Fri Jan 6 14:21:16 2012 +++ src/usr.bin/netstat/pfkey.c Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: pfkey.c,v 1.1 2012/01/06 14:21:16 drochner Exp $ */ +/* $NetBSD: pfkey.c,v 1.1.44.1 2019/08/19 15:56:49 martin Exp $ */ /* $KAME: ipsec.c,v 1.33 2003/07/25 09:54:32 itojun Exp $ */ /* @@ -65,7 +65,7 @@ static char sccsid[] = "from: @(#)inet.c 8.4 (Berkeley) 4/20/94"; #else #ifdef __NetBSD__ -__RCSID("$NetBSD: pfkey.c,v 1.1 2012/01/06 14:21:16 drochner Exp $"); +__RCSID("$NetBSD: pfkey.c,v 1.1.44.1 2019/08/19 15:56:49 martin Exp $"); #endif #endif #endif /* not lint */ @@ -84,6 +84,7 @@ __RCSID("$NetBSD: pfkey.c,v 1.1 2012/01/ #include <string.h> #include <unistd.h> #include "netstat.h" +#include "prog_ops.h" #ifdef IPSEC @@ -119,7 +120,7 @@ pfkey_stats(u_long off, const char *name if (use_sysctl) { size_t size = sizeof(pfkeystat); - if (sysctlbyname("net.key.stats", pfkeystat, &size, + if (prog_sysctlbyname("net.key.stats", pfkeystat, &size, NULL, 0) == -1) return; } else { Index: src/usr.bin/netstat/prog_ops.h diff -u src/usr.bin/netstat/prog_ops.h:1.2 src/usr.bin/netstat/prog_ops.h:1.2.48.1 --- src/usr.bin/netstat/prog_ops.h:1.2 Wed Dec 15 11:22:41 2010 +++ src/usr.bin/netstat/prog_ops.h Mon Aug 19 15:56:49 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: prog_ops.h,v 1.2 2010/12/15 11:22:41 pooka Exp $ */ +/* $NetBSD: prog_ops.h,v 1.2.48.1 2019/08/19 15:56:49 martin Exp $ */ /* * Copyright (c) 2010 The NetBSD Foundation, Inc. @@ -32,19 +32,37 @@ #include <sys/types.h> #ifndef CRUNCHOPS +struct sysctlnode; + struct prog_ops { int (*op_init)(void); int (*op_sysctl)(const int *, u_int, void *, size_t *, const void *, size_t); + + /* Indirection needed for sanitizers. */ + + int (*op_sysctlbyname)(const char *, void *, size_t *, + const void *, size_t); + + int (*op_sysctlgetmibinfo)(const char *, int *, u_int *, + char *, size_t *, struct sysctlnode **, int); + + int (*op_sysctlnametomib)(const char *, int *, size_t *); }; extern const struct prog_ops prog_ops; #define prog_init prog_ops.op_init #define prog_sysctl prog_ops.op_sysctl +#define prog_sysctlbyname prog_ops.op_sysctlbyname +#define prog_sysctlgetmibinfo prog_ops.op_sysctlgetmibinfo +#define prog_sysctlnametomib prog_ops.op_sysctlnametomib #else #define prog_init ((int (*)(void))NULL) #define prog_sysctl sysctl +#define prog_sysctlbyname sysctlbyname +#define prog_sysctlgetmibinfo sysctlgetmibinfo +#define prog_sysctlnametomib sysctlnametomib #endif #endif /* _PROG_OPS_H_ */