498 |
EventAction_T ea = NULL; |
EventAction_T ea = NULL; |
499 |
Action_T a = NULL; |
Action_T a = NULL; |
500 |
|
|
501 |
/* return in the case that the eventqueue is not enabled */ |
/* return in the case that the eventqueue is not enabled or empty */ |
502 |
if(!Run.eventlist_dir) |
if( !Run.eventlist_dir || |
503 |
|
( |
504 |
|
!Run.handler_init && |
505 |
|
!Run.handler_queue[HANDLER_ALERT] && |
506 |
|
!Run.handler_queue[HANDLER_COLLECTOR] |
507 |
|
) |
508 |
|
) |
509 |
{ |
{ |
510 |
return; |
return; |
511 |
} |
} |
609 |
/* Retry all remaining handlers */ |
/* Retry all remaining handlers */ |
610 |
|
|
611 |
/* alert */ |
/* alert */ |
612 |
if( |
if(e->flag & HANDLER_ALERT) |
|
((Run.handler_flag & HANDLER_ALERT) != HANDLER_ALERT) |
|
|
&& |
|
|
e->flag & HANDLER_ALERT |
|
|
) |
|
613 |
{ |
{ |
614 |
if( handle_alert(e) != HANDLER_ALERT ) |
if(Run.handler_init) |
615 |
{ |
{ |
616 |
e->flag &= ~HANDLER_ALERT; |
Run.handler_queue[HANDLER_ALERT]++; |
617 |
} |
} |
618 |
else |
if((Run.handler_flag & HANDLER_ALERT) != HANDLER_ALERT) |
619 |
{ |
{ |
620 |
log("Alert handler failed, retry scheduled for next cycle\n"); |
if( handle_alert(e) != HANDLER_ALERT ) |
621 |
Run.handler_flag |= HANDLER_ALERT; |
{ |
622 |
|
e->flag &= ~HANDLER_ALERT; |
623 |
|
Run.handler_queue[HANDLER_ALERT]--; |
624 |
|
} |
625 |
|
else |
626 |
|
{ |
627 |
|
log("Alert handler failed, retry scheduled for next cycle\n"); |
628 |
|
Run.handler_flag |= HANDLER_ALERT; |
629 |
|
} |
630 |
} |
} |
631 |
} |
} |
632 |
|
|
633 |
/* collector */ |
/* collector */ |
634 |
if( |
if(e->flag & HANDLER_COLLECTOR) |
|
((Run.handler_flag & HANDLER_COLLECTOR) != HANDLER_COLLECTOR) |
|
|
&& |
|
|
e->flag & HANDLER_COLLECTOR |
|
|
) |
|
635 |
{ |
{ |
636 |
if( handle_collector(e) != HANDLER_COLLECTOR ) |
if(Run.handler_init) |
637 |
{ |
{ |
638 |
e->flag &= ~HANDLER_COLLECTOR; |
Run.handler_queue[HANDLER_COLLECTOR]++; |
639 |
} |
} |
640 |
else |
if((Run.handler_flag & HANDLER_COLLECTOR) != HANDLER_COLLECTOR) |
641 |
{ |
{ |
642 |
log("Collector handler failed, retry scheduled for next cycle\n"); |
if( handle_collector(e) != HANDLER_COLLECTOR ) |
643 |
Run.handler_flag |= HANDLER_COLLECTOR; |
{ |
644 |
|
e->flag &= ~HANDLER_COLLECTOR; |
645 |
|
Run.handler_queue[HANDLER_COLLECTOR]--; |
646 |
|
} |
647 |
|
else |
648 |
|
{ |
649 |
|
log("Collector handler failed, retry scheduled for next cycle\n"); |
650 |
|
Run.handler_flag |= HANDLER_COLLECTOR; |
651 |
|
} |
652 |
} |
} |
653 |
} |
} |
654 |
|
|
671 |
} |
} |
672 |
de = readdir(dir); |
de = readdir(dir); |
673 |
} |
} |
674 |
|
Run.handler_init = FALSE; |
675 |
closedir(dir); |
closedir(dir); |
676 |
FREE(a); |
FREE(a); |
677 |
FREE(ea); |
FREE(ea); |
901 |
} |
} |
902 |
else |
else |
903 |
{ |
{ |
904 |
|
if(!Run.handler_init && E->flag & HANDLER_ALERT) |
905 |
|
{ |
906 |
|
Run.handler_queue[HANDLER_ALERT]++; |
907 |
|
} |
908 |
|
if(!Run.handler_init && E->flag & HANDLER_COLLECTOR) |
909 |
|
{ |
910 |
|
Run.handler_queue[HANDLER_COLLECTOR]++; |
911 |
|
} |
912 |
fclose(file); |
fclose(file); |
913 |
} |
} |
914 |
|
|