diff options
Diffstat (limited to 'plugins-root')
-rw-r--r-- | plugins-root/Makefile.am | 3 | ||||
-rw-r--r-- | plugins-root/check_icmp.c | 8 | ||||
-rw-r--r-- | plugins-root/t/check_dhcp.t | 9 |
3 files changed, 14 insertions, 6 deletions
diff --git a/plugins-root/Makefile.am b/plugins-root/Makefile.am index a1ebb6d..7cd2675 100644 --- a/plugins-root/Makefile.am +++ b/plugins-root/Makefile.am | |||
@@ -37,6 +37,9 @@ TESTS = @PLUGIN_TEST@ | |||
37 | test: | 37 | test: |
38 | perl -I $(top_builddir) -I $(top_srcdir) ../test.pl | 38 | perl -I $(top_builddir) -I $(top_srcdir) ../test.pl |
39 | 39 | ||
40 | test-debug: | ||
41 | NPTEST_DEBUG=1 HARNESS_VERBOSE=1 perl -I $(top_builddir) -I $(top_srcdir) ../test.pl | ||
42 | |||
40 | setuid_root_mode = ug=rx,u+s | 43 | setuid_root_mode = ug=rx,u+s |
41 | 44 | ||
42 | # /* Author Coreutils team - see ACKNOWLEDGEMENTS */ | 45 | # /* Author Coreutils team - see ACKNOWLEDGEMENTS */ |
diff --git a/plugins-root/check_icmp.c b/plugins-root/check_icmp.c index e45fdf6..01ae174 100644 --- a/plugins-root/check_icmp.c +++ b/plugins-root/check_icmp.c | |||
@@ -502,7 +502,7 @@ main(int argc, char **argv) | |||
502 | icmp_data_size = size; | 502 | icmp_data_size = size; |
503 | icmp_pkt_size = size + ICMP_MINLEN; | 503 | icmp_pkt_size = size + ICMP_MINLEN; |
504 | } else | 504 | } else |
505 | usage_va("ICMP data length must be between: %d and %d", | 505 | usage_va("ICMP data length must be between: %lu and %lu", |
506 | sizeof(struct icmp) + sizeof(struct icmp_ping_data), | 506 | sizeof(struct icmp) + sizeof(struct icmp_ping_data), |
507 | MAX_PING_DATA - 1); | 507 | MAX_PING_DATA - 1); |
508 | break; | 508 | break; |
@@ -921,7 +921,7 @@ wait_for_reply(int sock, u_int t) | |||
921 | /* if we're in hostcheck mode, exit with limited printouts */ | 921 | /* if we're in hostcheck mode, exit with limited printouts */ |
922 | if(mode == MODE_HOSTCHECK) { | 922 | if(mode == MODE_HOSTCHECK) { |
923 | printf("OK - %s responds to ICMP. Packet %u, rta %0.3fms|" | 923 | printf("OK - %s responds to ICMP. Packet %u, rta %0.3fms|" |
924 | "pkt=%u;;0;%u rta=%0.3f;%0.3f;%0.3f;;\n", | 924 | "pkt=%u;;;0;%u rta=%0.3f;%0.3f;%0.3f;;\n", |
925 | host->name, icmp_recv, (float)tdiff / 1000, | 925 | host->name, icmp_recv, (float)tdiff / 1000, |
926 | icmp_recv, packets, (float)tdiff / 1000, | 926 | icmp_recv, packets, (float)tdiff / 1000, |
927 | (float)warn.rta / 1000, (float)crit.rta / 1000); | 927 | (float)warn.rta / 1000, (float)crit.rta / 1000); |
@@ -1134,7 +1134,7 @@ finish(int sig) | |||
1134 | while(host) { | 1134 | while(host) { |
1135 | if(!host->icmp_recv) { | 1135 | if(!host->icmp_recv) { |
1136 | /* rta 0 is ofcourse not entirely correct, but will still show up | 1136 | /* rta 0 is ofcourse not entirely correct, but will still show up |
1137 | * conspicuosly as missing entries in perfparse and cacti */ | 1137 | * conspicuously as missing entries in perfparse and cacti */ |
1138 | pl = 100; | 1138 | pl = 100; |
1139 | rta = 0; | 1139 | rta = 0; |
1140 | status = STATE_CRITICAL; | 1140 | status = STATE_CRITICAL; |
@@ -1293,7 +1293,7 @@ add_target_ip(char *arg, struct sockaddr_storage *in) | |||
1293 | if(!host) { | 1293 | if(!host) { |
1294 | char straddr[INET6_ADDRSTRLEN]; | 1294 | char straddr[INET6_ADDRSTRLEN]; |
1295 | parse_address((struct sockaddr_storage*)&in, straddr, sizeof(straddr)); | 1295 | parse_address((struct sockaddr_storage*)&in, straddr, sizeof(straddr)); |
1296 | crash("add_target_ip(%s, %s): malloc(%d) failed", | 1296 | crash("add_target_ip(%s, %s): malloc(%lu) failed", |
1297 | arg, straddr, sizeof(struct rta_host)); | 1297 | arg, straddr, sizeof(struct rta_host)); |
1298 | } | 1298 | } |
1299 | memset(host, 0, sizeof(struct rta_host)); | 1299 | memset(host, 0, sizeof(struct rta_host)); |
diff --git a/plugins-root/t/check_dhcp.t b/plugins-root/t/check_dhcp.t index 222f454..ce62773 100644 --- a/plugins-root/t/check_dhcp.t +++ b/plugins-root/t/check_dhcp.t | |||
@@ -19,7 +19,7 @@ if ($allow_sudo eq "yes" or $> == 0) { | |||
19 | my $sudo = $> == 0 ? '' : 'sudo'; | 19 | my $sudo = $> == 0 ? '' : 'sudo'; |
20 | 20 | ||
21 | my $successOutput = '/OK: Received \d+ DHCPOFFER\(s\), \d+ of 1 requested servers responded, max lease time = \d+ sec\./'; | 21 | my $successOutput = '/OK: Received \d+ DHCPOFFER\(s\), \d+ of 1 requested servers responded, max lease time = \d+ sec\./'; |
22 | my $failureOutput = '/CRITICAL: No DHCPOFFERs were received/'; | 22 | my $failureOutput = '/CRITICAL: (No DHCPOFFERs were received|Received \d+ DHCPOFFER\(s\), 0 of 1 requested servers responded, max lease time = \d+ sec\.)/'; |
23 | my $invalidOutput = '/Invalid hostname/'; | 23 | my $invalidOutput = '/Invalid hostname/'; |
24 | 24 | ||
25 | my $host_responsive = getTestParameter( "NP_HOST_DHCP_RESPONSIVE", | 25 | my $host_responsive = getTestParameter( "NP_HOST_DHCP_RESPONSIVE", |
@@ -36,7 +36,12 @@ my $hostname_invalid = getTestParameter( "NP_HOSTNAME_INVALID", | |||
36 | 36 | ||
37 | # try to determince interface | 37 | # try to determince interface |
38 | my $interface = ''; | 38 | my $interface = ''; |
39 | if(`ifconfig -a 2>/dev/null` =~ m/^(e\w*\d+)/mx and $1 ne 'eth0') { | 39 | |
40 | # find interface used for default route | ||
41 | if (-x '/usr/sbin/ip' and `/usr/sbin/ip route get 1.1.1.1 2>/dev/null` =~ m/\sdev\s(\S+)/) { | ||
42 | $interface = "-i $1"; | ||
43 | } | ||
44 | elsif (`ifconfig -a 2>/dev/null` =~ m/^(e\w*\d+)/mx and $1 ne 'eth0') { | ||
40 | $interface = ' -i '.$1; | 45 | $interface = ' -i '.$1; |
41 | } | 46 | } |
42 | 47 | ||