diff options
Diffstat (limited to 'net-analyzer/nagios-core/files')
-rw-r--r-- | net-analyzer/nagios-core/files/nagios-4.4.2-pre.patch | 209 | ||||
-rw-r--r-- | net-analyzer/nagios-core/files/nagios-4.4.3-pre.patch | 42 |
2 files changed, 0 insertions, 251 deletions
diff --git a/net-analyzer/nagios-core/files/nagios-4.4.2-pre.patch b/net-analyzer/nagios-core/files/nagios-4.4.2-pre.patch deleted file mode 100644 index 6483b9df9f29..000000000000 --- a/net-analyzer/nagios-core/files/nagios-4.4.2-pre.patch +++ /dev/null @@ -1,209 +0,0 @@ -diff --git a/Changelog b/Changelog -index 1e1bd9e2..8dd26fec 100644 ---- a/Changelog -+++ b/Changelog -@@ -2,6 +2,18 @@ - Nagios Core 4 Change Log - ######################## - -+4.4.2 - ?????????? -+------------------ -+FIXES -+* Fix comment data being duplicated after a `service nagios reload` or similar (Bryan Heden) -+* Fix check_interval and retry_interval not changing at the appropriate times (Scott Wilkerson) -+* Fixed passive checks sending recovery email when host was previously UP (Scott Wilkerson) -+* Fixed flapping comments duplication on nagios reload (Christian Jung) -+* Fix for CVE-2018-13441, CVE-2018-13458, CVE-2018-13457 null pointer dereference (Trevor McDonald) -+* Fixed syntax error in file: default-init.in (#558) (Christian Zettel) -+* Reset current notification number and state flags when the host recovers, reset all service variables when they recover fixes (#557) (Scott Wilkerson) -+* Fixed wrong counting of service status totals when showing servicegroup details (#548) (Christian Zettel, Bryan Heden) -+ - 4.4.1 - 2018-06-25 - ------------------ - FIXES -diff --git a/base/checks.c b/base/checks.c -index 725dec9d..d45b6ac4 100644 ---- a/base/checks.c -+++ b/base/checks.c -@@ -911,6 +911,11 @@ static inline void service_state_or_hard_state_type_change(service * svc, int st - - if (state_or_type_change) { - -+ /* check if service should go into downtime from flexible downtime */ -+ if (svc->pending_flex_downtime > 0) { -+ check_pending_flex_service_downtime(svc); -+ } -+ - /* reset notification times and suppression option */ - svc->last_notification = (time_t)0; - svc->next_notification = (time_t)0; -@@ -941,7 +946,10 @@ static inline void host_state_or_hard_state_type_change(host * hst, int state_ch - - log_debug_info(DEBUGL_CHECKS, 2, "Check type passive and passive host checks aren't false\n"); - -- hst->current_attempt = 1; -+ if (state_change == TRUE) { -+ hst->current_attempt = 1; -+ } -+ - hard_state_change = TRUE; - } - -@@ -989,6 +997,9 @@ static inline void host_state_or_hard_state_type_change(host * hst, int state_ch - - if (state_or_type_change) { - -+ /* check if host should go into downtime from flexible downtime */ -+ check_pending_flex_host_downtime(hst); -+ - /* reset notification times and suppression option */ - hst->last_notification = (time_t)0; - hst->next_notification = (time_t)0; -@@ -1228,7 +1239,7 @@ int handle_async_service_check_result(service *svc, check_result *cr) - next_check = (time_t)(svc->last_check + (svc->check_interval * interval_length)); - - /***********************************************/ -- /********** SCHEDULE HOST CHECK LOGIC **********/ -+ /********** SCHEDULE SERVICE CHECK LOGIC **********/ - /***********************************************/ - if (svc->current_state == STATE_OK) { - -@@ -1269,6 +1280,7 @@ int handle_async_service_check_result(service *svc, check_result *cr) - - svc->host_problem_at_last_check = TRUE; - } -+ - } - else { - -@@ -1368,6 +1380,9 @@ int handle_async_service_check_result(service *svc, check_result *cr) - else { - - log_debug_info(DEBUGL_CHECKS, 1, "Service is a non-OK state (%s)!", service_state_name(svc->current_state)); -+ -+ svc->state_type = SOFT_STATE; -+ svc->current_attempt = 1; - - handle_event = TRUE; - } -@@ -1395,6 +1410,21 @@ int handle_async_service_check_result(service *svc, check_result *cr) - - log_debug_info(DEBUGL_CHECKS, 1, "Service experienced a SOFT recovery.\n"); - } -+ -+ -+ /* reset all service variables because its okay now... */ -+ svc->host_problem_at_last_check = FALSE; -+ svc->current_attempt = 1; -+ svc->state_type = HARD_STATE; -+ svc->last_hard_state = STATE_OK; -+ svc->last_notification = (time_t)0; -+ svc->next_notification = (time_t)0; -+ svc->current_notification_number = 0; -+ svc->problem_has_been_acknowledged = FALSE; -+ svc->acknowledgement_type = ACKNOWLEDGEMENT_NONE; -+ svc->notified_on = 0; -+ -+ hard_state_change = TRUE; - } - - /***** SERVICE IS STILL IN PROBLEM STATE *****/ -@@ -1418,6 +1448,14 @@ int handle_async_service_check_result(service *svc, check_result *cr) - } - } - } -+ -+ /* soft states should be using retry_interval */ -+ if (svc->state_type == SOFT_STATE) { -+ -+ log_debug_info(DEBUGL_CHECKS, 2, "Service state type is soft, using retry_interval\n"); -+ -+ next_check = (unsigned long) (current_time + svc->retry_interval * interval_length); -+ } - - /* check for a state change */ - if (svc->current_state != svc->last_state || (svc->current_state == STATE_OK && svc->state_type == SOFT_STATE)) { -@@ -1454,6 +1492,8 @@ int handle_async_service_check_result(service *svc, check_result *cr) - if (svc->current_attempt >= svc->max_attempts && svc->current_state != svc->last_hard_state) { - - log_debug_info(DEBUGL_CHECKS, 2, "Service had a HARD STATE CHANGE!!\n"); -+ -+ next_check = (unsigned long)(current_time + (svc->check_interval * interval_length)); - - hard_state_change = TRUE; - -@@ -2197,6 +2237,9 @@ int handle_async_host_check_result(host *hst, check_result *cr) - else { - - log_debug_info(DEBUGL_CHECKS, 1, "Host is no longer UP (%s)!\n", host_state_name(hst->current_state)); -+ -+ hst->state_type = SOFT_STATE; -+ hst->current_attempt = 1; - - /* propagate checks to immediate parents if they are UP */ - host_propagate_checks_to_immediate_parents(hst, FALSE, current_time); -@@ -2276,7 +2319,9 @@ int handle_async_host_check_result(host *hst, check_result *cr) - if (hst->current_state != HOST_UP && (hst->check_type == CHECK_TYPE_ACTIVE || translate_passive_host_checks == TRUE)) { - - hst->current_state = determine_host_reachability(hst); -- next_check = (unsigned long)(current_time + (hst->retry_interval * interval_length)); -+ if (hst->state_type == SOFT_STATE) -+ next_check = (unsigned long)(current_time + (hst->retry_interval * interval_length)); -+ - } - - /* check for state change */ -@@ -2310,7 +2355,9 @@ int handle_async_host_check_result(host *hst, check_result *cr) - - log_debug_info(DEBUGL_CHECKS, 2, "Host had a HARD STATE CHANGE!!\n"); - -- hard_state_change = TRUE; -+ next_check = (unsigned long)(current_time + (hst->check_interval * interval_length)); -+ -+ hard_state_change = TRUE; - send_notification = TRUE; - } - -@@ -2372,6 +2419,12 @@ int handle_async_host_check_result(host *hst, check_result *cr) - } - } - -+ /* the host recovered, so reset the current notification number and state flags (after the recovery notification has gone out) */ -+ if(hst->current_state == HOST_UP && hst->state_type == HARD_STATE && hard_state_change == TRUE) { -+ hst->current_notification_number = 0; -+ hst->notified_on = 0; -+ } -+ - if (obsess_over_hosts == TRUE) { - obsessive_compulsive_host_check_processor(hst); - } -diff --git a/base/nagios.c b/base/nagios.c -index 520ba71e..24719647 100644 ---- a/base/nagios.c -+++ b/base/nagios.c -@@ -878,6 +878,9 @@ int main(int argc, char **argv) { - /* clean up the scheduled downtime data */ - cleanup_downtime_data(); - -+ /* clean up comment data */ -+ free_comment_data(); -+ - /* clean up the status data if we are not restarting */ - if(sigrestart == FALSE) { - cleanup_status_data(TRUE); -diff --git a/cgi/status.c b/cgi/status.c -index 20c4ed48..8b1c8b31 100644 ---- a/cgi/status.c -+++ b/cgi/status.c -@@ -873,6 +873,11 @@ void show_service_status_totals(void) { - count_service = 1; - } - else if(display_type == DISPLAY_SERVICEGROUPS) { -+ -+ if (is_service_member_of_servicegroup(find_servicegroup(servicegroup_name), temp_service) == FALSE) { -+ continue; -+ } -+ - if(show_all_servicegroups == TRUE) { - count_service = 1; - } diff --git a/net-analyzer/nagios-core/files/nagios-4.4.3-pre.patch b/net-analyzer/nagios-core/files/nagios-4.4.3-pre.patch deleted file mode 100644 index 3c5eb030547c..000000000000 --- a/net-analyzer/nagios-core/files/nagios-4.4.3-pre.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff --git a/Changelog b/Changelog -index c695bd54..4c348894 100644 ---- a/Changelog -+++ b/Changelog -@@ -2,6 +2,11 @@ - Nagios Core 4 Change Log - ######################## - -+4.4.3 - 2018-XX-XX -+------------------ -+FIXES -+* Fixed services sending recovery emails when they recover if host in down state (#572) (Scott Wilkerson) -+ - 4.4.2 - 2018-08-16 - ------------------ - FIXES -diff --git a/base/notifications.c b/base/notifications.c -index d4574c41..58ad140f 100644 ---- a/base/notifications.c -+++ b/base/notifications.c -@@ -591,10 +591,6 @@ int check_service_notification_viability(service *svc, int type, int options) { - return ERROR; - } - -- /***** RECOVERY NOTIFICATIONS ARE GOOD TO GO AT THIS POINT *****/ -- if(svc->current_state == STATE_OK) -- return OK; -- - /* don't notify contacts about this service problem again if the notification interval is set to 0 */ - if(svc->no_more_notifications == TRUE) { - log_debug_info(DEBUGL_NOTIFICATIONS, 1, "We shouldn't re-notify contacts about this service problem.\n"); -@@ -1501,10 +1497,6 @@ int check_host_notification_viability(host *hst, int type, int options) { - return ERROR; - } - -- /***** RECOVERY NOTIFICATIONS ARE GOOD TO GO AT THIS POINT *****/ -- if(hst->current_state == HOST_UP) -- return OK; -- - /* check if we shouldn't renotify contacts about the host problem */ - if(hst->no_more_notifications == TRUE) { - log_debug_info(DEBUGL_NOTIFICATIONS, 1, "We shouldn't re-notify contacts about this host problem.\n"); |