diff options
-rw-r--r-- | plugins-root/check_icmp.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/plugins-root/check_icmp.c b/plugins-root/check_icmp.c index ea17b3a8..e6a00960 100644 --- a/plugins-root/check_icmp.c +++ b/plugins-root/check_icmp.c | |||
@@ -1095,6 +1095,7 @@ static int wait_for_reply(int sock, u_int t) { | |||
1095 | host->time_waited += tdiff; | 1095 | host->time_waited += tdiff; |
1096 | host->icmp_recv++; | 1096 | host->icmp_recv++; |
1097 | icmp_recv++; | 1097 | icmp_recv++; |
1098 | |||
1098 | if (tdiff > (unsigned int)host->rtmax) { | 1099 | if (tdiff > (unsigned int)host->rtmax) { |
1099 | host->rtmax = tdiff; | 1100 | host->rtmax = tdiff; |
1100 | } | 1101 | } |
@@ -1503,10 +1504,10 @@ static void finish(int sig) { | |||
1503 | 1504 | ||
1504 | host = list; | 1505 | host = list; |
1505 | while (host) { | 1506 | while (host) { |
1506 | |||
1507 | if (debug) { | 1507 | if (debug) { |
1508 | puts(""); | 1508 | puts(""); |
1509 | } | 1509 | } |
1510 | |||
1510 | if (i) { | 1511 | if (i) { |
1511 | if (i < targets) { | 1512 | if (i < targets) { |
1512 | printf(" :: "); | 1513 | printf(" :: "); |
@@ -1514,11 +1515,14 @@ static void finish(int sig) { | |||
1514 | printf("\n"); | 1515 | printf("\n"); |
1515 | } | 1516 | } |
1516 | } | 1517 | } |
1518 | |||
1517 | i++; | 1519 | i++; |
1520 | |||
1518 | if (!host->icmp_recv) { | 1521 | if (!host->icmp_recv) { |
1519 | status = STATE_CRITICAL; | 1522 | status = STATE_CRITICAL; |
1520 | host->rtmin = 0; | 1523 | host->rtmin = 0; |
1521 | host->jitter_min = 0; | 1524 | host->jitter_min = 0; |
1525 | |||
1522 | if (host->flags & FLAG_LOST_CAUSE) { | 1526 | if (host->flags & FLAG_LOST_CAUSE) { |
1523 | char address[INET6_ADDRSTRLEN]; | 1527 | char address[INET6_ADDRSTRLEN]; |
1524 | parse_address(&host->error_addr, address, sizeof(address)); | 1528 | parse_address(&host->error_addr, address, sizeof(address)); |
@@ -1538,6 +1542,7 @@ static void finish(int sig) { | |||
1538 | printf(" rta %0.3fms > %0.3fms", (float)host->rta / 1000, (float)crit.rta / 1000); | 1542 | printf(" rta %0.3fms > %0.3fms", (float)host->rta / 1000, (float)crit.rta / 1000); |
1539 | } | 1543 | } |
1540 | } | 1544 | } |
1545 | |||
1541 | /* pl text output */ | 1546 | /* pl text output */ |
1542 | if (pl_mode) { | 1547 | if (pl_mode) { |
1543 | if (status == STATE_OK) { | 1548 | if (status == STATE_OK) { |
@@ -1548,6 +1553,7 @@ static void finish(int sig) { | |||
1548 | printf(" lost %u%% > %u%%", host->pl, crit.pl); | 1553 | printf(" lost %u%% > %u%%", host->pl, crit.pl); |
1549 | } | 1554 | } |
1550 | } | 1555 | } |
1556 | |||
1551 | /* jitter text output */ | 1557 | /* jitter text output */ |
1552 | if (jitter_mode) { | 1558 | if (jitter_mode) { |
1553 | if (status == STATE_OK) { | 1559 | if (status == STATE_OK) { |
@@ -1558,6 +1564,7 @@ static void finish(int sig) { | |||
1558 | printf(" jitter %0.3fms > %0.3fms", (float)host->jitter, crit.jitter); | 1564 | printf(" jitter %0.3fms > %0.3fms", (float)host->jitter, crit.jitter); |
1559 | } | 1565 | } |
1560 | } | 1566 | } |
1567 | |||
1561 | /* mos text output */ | 1568 | /* mos text output */ |
1562 | if (mos_mode) { | 1569 | if (mos_mode) { |
1563 | if (status == STATE_OK) { | 1570 | if (status == STATE_OK) { |
@@ -1568,6 +1575,7 @@ static void finish(int sig) { | |||
1568 | printf(" MOS %0.1f < %0.1f", (float)host->mos, (float)crit.mos); | 1575 | printf(" MOS %0.1f < %0.1f", (float)host->mos, (float)crit.mos); |
1569 | } | 1576 | } |
1570 | } | 1577 | } |
1578 | |||
1571 | /* score text output */ | 1579 | /* score text output */ |
1572 | if (score_mode) { | 1580 | if (score_mode) { |
1573 | if (status == STATE_OK) { | 1581 | if (status == STATE_OK) { |
@@ -1578,6 +1586,7 @@ static void finish(int sig) { | |||
1578 | printf(" Score %u < %u", (int)host->score, (int)crit.score); | 1586 | printf(" Score %u < %u", (int)host->score, (int)crit.score); |
1579 | } | 1587 | } |
1580 | } | 1588 | } |
1589 | |||
1581 | /* order statis text output */ | 1590 | /* order statis text output */ |
1582 | if (order_mode) { | 1591 | if (order_mode) { |
1583 | if (status == STATE_OK) { | 1592 | if (status == STATE_OK) { |