/** Deinitialize the dnx server. * * @return Always returns zero. */ static int dnxServerDeInit(void) { // deregister for all nagios events we previously registered for... neb_deregister_callback(NEBCALLBACK_PROCESS_DATA, ehProcessData); neb_deregister_callback(NEBCALLBACK_SERVICE_CHECK_DATA, ehSvcCheck); #if CURRENT_NEB_API_VERSION == 3 && defined(DIRECT_POST) neb_deregister_callback(NEBCALLBACK_TIMED_EVENT_DATA, ehTimedEvent); #endif dnxReleaseAgent(); // ensure we don't destroy non-existent objects from here on out... if (registrar) dnxRegistrarDestroy(registrar); if (dispatcher) dnxDispatcherDestroy(dispatcher); if (collector) dnxCollectorDestroy(collector); if (joblist) dnxJobListDestroy(joblist); // it doesn't matter if we haven't initialized the // channel map - it can figure that out for itself dnxChanMapRelease(); dnxStatsCleanup(); return OK; }
void deregister_callbacks () { //neb_deregister_callback (NEBCALLBACK_PROCESS_DATA, event_process); //neb_deregister_callback (NEBCALLBACK_PROGRAM_STATUS_DATA, event_program_status); neb_deregister_callback (NEBCALLBACK_SERVICE_CHECK_DATA, n2a_event_service_check); neb_deregister_callback (NEBCALLBACK_HOST_CHECK_DATA, n2a_event_host_check); //neb_deregister_callback (NEBCALLBACK_ACKNOWLEDGEMENT_DATA, event_acknowledgement); //neb_deregister_callback (NEBCALLBACK_DOWNTIME_DATA, event_downtime); //neb_deregister_callback (NEBCALLBACK_COMMENT_DATA, event_comment); }
/* this function gets called when the module is unloaded by the event broker */ int nebmodule_deinit(int flags, int reason) { char temp_buffer[1024]; /* deregister for all events we previously registered for... */ neb_deregister_callback(NEBCALLBACK_HOST_CHECK_DATA,npcdmod_handle_data); neb_deregister_callback(NEBCALLBACK_SERVICE_CHECK_DATA,npcdmod_handle_data); /* log a message to the Nagios log file */ snprintf(temp_buffer, sizeof(temp_buffer) - 1, "npcdmod: If you don't like me, I will go out! Bye.\n"); temp_buffer[sizeof(temp_buffer) - 1] = '\x0'; write_to_all_logs(temp_buffer, NSLOG_INFO_MESSAGE); return 0; }
/* deregister all events */ int nebmodule_deinit( int flags, int reason ) { int x; gm_log( GM_LOG_TRACE, "nebmodule_deinit(%i, %i)\n", flags, reason ); /* should be removed already, but just for the case it wasn't */ neb_deregister_callback( NEBCALLBACK_PROCESS_DATA, gearman_module_handle ); neb_deregister_callback( NEBCALLBACK_TIMED_EVENT_DATA, gearman_module_handle ); /* only if we have hostgroups defined or general hosts enabled */ if ( mod_gm_opt->do_hostchecks == GM_ENABLED && ( mod_gm_opt->hostgroups_num > 0 || mod_gm_opt->hosts == GM_ENABLED )) neb_deregister_callback( NEBCALLBACK_HOST_CHECK_DATA, gearman_module_handle ); /* only if we have groups defined or general services enabled */ if ( mod_gm_opt->servicegroups_num > 0 || mod_gm_opt->hostgroups_num > 0 || mod_gm_opt->services == GM_ENABLED ) neb_deregister_callback( NEBCALLBACK_SERVICE_CHECK_DATA, gearman_module_handle ); if ( mod_gm_opt->events == GM_ENABLED ) neb_deregister_callback( NEBCALLBACK_EVENT_HANDLER_DATA, gearman_module_handle ); if ( mod_gm_opt->perfdata == GM_ENABLED ) { neb_deregister_callback( NEBCALLBACK_HOST_CHECK_DATA, gearman_module_handle ); neb_deregister_callback( NEBCALLBACK_SERVICE_CHECK_DATA, gearman_module_handle ); } /* register export callbacks */ for(x=0;x<GM_NEBTYPESSIZE;x++) { if(mod_gm_opt->exports[x]->elem_number > 0) neb_deregister_callback( x, gearman_module_handle ); } neb_deregister_callback( NEBCALLBACK_PROCESS_DATA, gearman_module_handle ); gm_log( GM_LOG_DEBUG, "deregistered callbacks\n" ); /* stop result threads */ for(x = 0; x < result_threads_running; x++) { pthread_cancel(result_thr[x]); pthread_join(result_thr[x], NULL); } /* cleanup */ free_client(&client); /* close old logfile */ if(mod_gm_opt->logfile_fp != NULL) { fclose(mod_gm_opt->logfile_fp); } mod_gm_free_opt(mod_gm_opt); return NEB_OK; }
static int nerd_deregister_channel_callbacks(struct nerd_channel *chan) { unsigned int i; for(i = 0; i < chan->num_callbacks; i++) { neb_deregister_callback(chan->callbacks[i], chan->handler); } return 0; }
/* * We ignore any event masks here. Nagios should handle a module * unloading a function it hasn't registered gracefully anyways. */ int merlin_hooks_deinit(void) { uint i; for (i = 0; i < ARRAY_SIZE(callback_table); i++) { struct callback_struct *cb = &callback_table[i]; neb_deregister_callback(cb->type, merlin_mod_hook); } return 0; }
/* this function gets called when the module is unloaded by the event broker */ int nebmodule_deinit(int flags, int reason) { char temp_buffer[1024]; /* deregister for all events we previously registered for... */ neb_deregister_callback(NEBCALLBACK_AGGREGATED_STATUS_DATA, helloworld_handle_data); /* log a message to the Nagios log file */ snprintf(temp_buffer, sizeof(temp_buffer) - 1, "helloworld: Goodbye world!\n"); temp_buffer[sizeof(temp_buffer) - 1] = '\x0'; logit(NSLOG_INFO_MESSAGE, temp_buffer); return 0; }
/* this function gets called when the module is unloaded by the event broker */ int nebmodule_deinit(int flags, int reason){ char temp_buffer[1024]; /* deregister for all events we previously registered for... */ neb_deregister_callback(NEBCALLBACK_SERVICE_CHECK_DATA,modpnpsender_handle_data); /* log a message to the Nagios log file */ snprintf(temp_buffer,sizeof(temp_buffer)-1,"modpnpsender: Exiting - Thanks for for the flight!\n"); temp_buffer[sizeof(temp_buffer)-1]='\x0'; write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE); return 0; }
/* dregisters all callback functions for a given module */ int neb_deregister_module_callbacks(nebmodule *mod) { nebcallback *temp_callback = NULL; nebcallback *next_callback = NULL; int callback_type = 0; if (mod == NULL) return NEBERROR_NOMODULE; if (neb_callback_list == NULL) return OK; for (callback_type = 0; callback_type < NEBCALLBACK_NUMITEMS; callback_type++) { for (temp_callback = neb_callback_list[callback_type]; temp_callback != NULL; temp_callback = next_callback) { next_callback = temp_callback->next; if ((void *)temp_callback->module_handle == (void *)mod->module_handle) neb_deregister_callback(callback_type, (int(*)(int, void*))temp_callback->callback_func); } } return OK; }
/* deregisters callbacks */ int altinity_set_initial_state_deregister_callbacks(void){ neb_deregister_callback(NEBCALLBACK_PROCESS_DATA,altinity_set_initial_state_broker_data); return NDO_OK; }