X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Ftcpconns.c;h=d39a6c32d4e1ce828e9f6de516f3999b7124b220;hb=074b4980bc75bea6826e6a38dcc6e193a721b2a8;hp=4772c7c2cfa7da322f2c05df99483c3d74b93462;hpb=a4dd6274577a8213ea0c23e4379a32b04406ebf1;p=collectd.git diff --git a/src/tcpconns.c b/src/tcpconns.c index 4772c7c2..d39a6c32 100644 --- a/src/tcpconns.c +++ b/src/tcpconns.c @@ -20,7 +20,8 @@ **/ /** - * Code within `__OpenBSD__' blocks is provided under the following license: + * Code within `HAVE_LIBKVM_NLIST' blocks is provided under the following + * license: * * $collectd: parts of tcpconns.c, 2008/08/08 03:48:30 Michael Stapelberg $ * $OpenBSD: inet.c,v 1.100 2007/06/19 05:28:30 ray Exp $ @@ -58,7 +59,7 @@ #include "common.h" #include "plugin.h" -#if !KERNEL_LINUX && !HAVE_SYSCTLBYNAME && !__OpenBSD__ +#if !KERNEL_LINUX && !HAVE_SYSCTLBYNAME && !HAVE_LIBKVM_NLIST # error "No applicable input method." #endif @@ -94,7 +95,8 @@ # include /* #endif HAVE_SYSCTLBYNAME */ -#elif __OpenBSD__ +/* This is for OpenBSD and possibly NetBSD. */ +#elif HAVE_LIBKVM_NLIST # include # include # include @@ -109,7 +111,7 @@ # include # include # include -#endif /* __OpenBSD__ */ +#endif /* HAVE_LIBKVM_NLIST */ #if KERNEL_LINUX static const char *tcp_state[] = @@ -154,7 +156,7 @@ static const char *tcp_state[] = # define TCP_STATE_MAX 10 /* #endif HAVE_SYSCTLBYNAME */ -#elif __OpenBSD__ +#elif HAVE_LIBKVM_NLIST static const char *tcp_state[] = { "CLOSED", @@ -174,102 +176,10 @@ static kvm_t *kvmd; static u_long inpcbtable_off = 0; struct inpcbtable *inpcbtable_ptr = NULL; -#if 0 -static struct nlist nl[] = { /* {{{ */ -#define N_MBSTAT 0 - { "_mbstat" }, -#define N_IPSTAT 1 - { "_ipstat" }, -#define N_TCBTABLE 2 - { "_tcbtable" }, -#define N_TCPSTAT 3 - { "_tcpstat" }, -#define N_UDBTABLE 4 - { "_udbtable" }, -#define N_UDPSTAT 5 - { "_udpstat" }, -#define N_IFNET 6 - { "_ifnet" }, -#define N_ICMPSTAT 7 - { "_icmpstat" }, -#define N_RTSTAT 8 - { "_rtstat" }, -#define N_UNIXSW 9 - { "_unixsw" }, -#define N_RTREE 10 - { "_rt_tables"}, -#define N_FILE 11 - { "_file" }, -#define N_IGMPSTAT 12 - { "_igmpstat" }, -#define N_MRTPROTO 13 - { "_ip_mrtproto" }, -#define N_MRTSTAT 14 - { "_mrtstat" }, -#define N_MFCHASHTBL 15 - { "_mfchashtbl" }, -#define N_MFCHASH 16 - { "_mfchash" }, - { "_viftable" }, -#define N_AHSTAT 18 - { "_ahstat"}, -#define N_ESPSTAT 19 - { "_espstat"}, -#define N_IP4STAT 20 - { "_ipipstat"}, -#define N_DDPSTAT 21 - { "_ddpstat"}, -#define N_DDPCB 22 - { "_ddpcb"}, -#define N_ETHERIPSTAT 23 - { "_etheripstat"}, -#define N_IP6STAT 24 - { "_ip6stat" }, -#define N_ICMP6STAT 25 - { "_icmp6stat" }, -#define N_PIM6STAT 26 - { "_pim6stat" }, -#define N_MRT6PROTO 27 - { "_ip6_mrtproto" }, -#define N_MRT6STAT 28 - { "_mrt6stat" }, -#define N_MF6CTABLE 29 - { "_mf6ctable" }, -#define N_MIF6TABLE 30 - { "_mif6table" }, -#define N_MBPOOL 31 - { "_mbpool" }, -#define N_MCLPOOL 32 - { "_mclpool" }, -#define N_IPCOMPSTAT 33 - { "_ipcompstat" }, -#define N_RIP6STAT 34 - { "_rip6stat" }, -#define N_CARPSTAT 35 - { "_carpstats" }, -#define N_RAWIPTABLE 36 - { "_rawcbtable" }, -#define N_RAWIP6TABLE 37 - { "_rawin6pcbtable" }, -#define N_PFSYNCSTAT 38 - { "_pfsyncstats" }, -#define N_PIMSTAT 39 - { "_pimstat" }, -#define N_AF2RTAFIDX 40 - { "_af2rtafidx" }, -#define N_RTBLIDMAX 41 - { "_rtbl_id_max" }, -#define N_RTMASK 42 - { "_mask_rnhead" }, - - { "" } -}; /* }}} struct nlist nl[] */ -#endif /* 0 */ - # define TCP_STATE_LISTEN 1 # define TCP_STATE_MIN 1 # define TCP_STATE_MAX 10 -#endif /* __OpenBSD__ */ +#endif /* HAVE_LIBKVM_NLIST */ #define PORT_COLLECT_LOCAL 0x01 #define PORT_COLLECT_REMOTE 0x02 @@ -312,7 +222,7 @@ static void conn_submit_port_entry (port_entry_t *pe) || (pe->flags & PORT_COLLECT_LOCAL)) { ssnprintf (vl.plugin_instance, sizeof (vl.plugin_instance), - "%hu-local", pe->port); + "%"PRIu16"-local", pe->port); for (i = 1; i <= TCP_STATE_MAX; i++) { @@ -327,7 +237,7 @@ static void conn_submit_port_entry (port_entry_t *pe) if (pe->flags & PORT_COLLECT_REMOTE) { ssnprintf (vl.plugin_instance, sizeof (vl.plugin_instance), - "%hu-remote", pe->port); + "%"PRIu16"-remote", pe->port); for (i = 1; i <= TCP_STATE_MAX; i++) { @@ -393,7 +303,7 @@ static void conn_reset_port_entry (void) port_entry_t *next = pe->next; DEBUG ("tcpconns plugin: Removing temporary entry " - "for listening port %hu", pe->port); + "for listening port %"PRIu16, pe->port); if (prev == NULL) port_list_head = next; @@ -424,8 +334,8 @@ static int conn_handle_ports (uint16_t port_local, uint16_t port_remote, uint8_t #endif ) { - NOTICE ("tcpconns plugin: Ignoring connection with unknown state 0x%02x.", - state); + NOTICE ("tcpconns plugin: Ignoring connection with " + "unknown state 0x%02"PRIx8".", state); return (-1); } @@ -437,7 +347,7 @@ static int conn_handle_ports (uint16_t port_local, uint16_t port_remote, uint8_t pe->flags |= PORT_IS_LISTENING; } - DEBUG ("tcpconns plugin: Connection %hu <-> %hu (%s)", + DEBUG ("tcpconns plugin: Connection %"PRIu16" <-> %"PRIu16" (%s)", port_local, port_remote, tcp_state[state]); pe = conn_get_port_entry (port_local, 0 /* no create */); @@ -531,8 +441,8 @@ static int conn_read_file (const char *file) #elif HAVE_SYSCTLBYNAME /* #endif HAVE_SYSCTLBYNAME */ -#elif __OpenBSD__ -#endif /* __OpenBSD__ */ +#elif HAVE_LIBKVM_NLIST +#endif /* HAVE_LIBKVM_NLIST */ static int conn_config (const char *key, const char *value) { @@ -688,7 +598,7 @@ static int conn_read (void) } /* int conn_read */ /* #endif HAVE_SYSCTLBYNAME */ -#elif __OpenBSD__ +#elif HAVE_LIBKVM_NLIST static int kread (u_long addr, void *buf, int size) { int status; @@ -743,7 +653,6 @@ static int conn_init (void) static int conn_read (void) { - u_long off = nl[2].n_value; struct inpcbtable table; struct inpcb *head; struct inpcb *next; @@ -787,7 +696,7 @@ static int conn_read (void) return (0); } -#endif /* __OpenBSD__ */ +#endif /* HAVE_LIBKVM_NLIST */ void module_register (void) { @@ -797,7 +706,7 @@ void module_register (void) plugin_register_init ("tcpconns", conn_init); #elif HAVE_SYSCTLBYNAME /* no initialization */ -#elif __OpenBSD__ +#elif HAVE_LIBKVM_NLIST plugin_register_init ("tcpconns", conn_init); #endif plugin_register_read ("tcpconns", conn_read);