void sanitize(Graph g) { Node n; for(n = g -> source; n != NULL; n = n -> next) { sanitize_node(n); } }
static void sanitize_alert(idmef_alert_t *alert) { int ret; idmef_node_t *node; idmef_source_t *src = NULL; idmef_target_t *dst = NULL; idmef_analyzer_t *analyzer = NULL; if ( ! alert ) return; while ( (analyzer = idmef_alert_get_next_analyzer(alert, analyzer)) ) { node = idmef_analyzer_get_node(analyzer); if ( node ) { ret = sanitize_node(node); if ( ret < 0 ) idmef_analyzer_set_node(analyzer, NULL); } } while ( (src = idmef_alert_get_next_source(alert, src)) ) { sanitize_service_protocol(idmef_source_get_service(src)); node = idmef_source_get_node(src); if ( node ) { ret = sanitize_node(node); if ( ret < 0 ) idmef_source_set_node(src, NULL); } } while ( (dst = idmef_alert_get_next_target(alert, dst)) ) { sanitize_service_protocol(idmef_target_get_service(dst)); node = idmef_target_get_node(dst); if ( node ) { ret = sanitize_node(node); if ( ret < 0 ) idmef_target_set_node(dst, NULL); } } }
static void sanitize_heartbeat(idmef_heartbeat_t *heartbeat) { int ret; idmef_node_t *node; idmef_analyzer_t *analyzer = NULL; if ( ! heartbeat ) return; while ( (analyzer = idmef_heartbeat_get_next_analyzer(heartbeat, analyzer)) ) { node = idmef_analyzer_get_node(analyzer); if ( node ) { ret = sanitize_node(node); if ( ret < 0 ) idmef_analyzer_set_node(analyzer, NULL); } } }
void initialize_graph(Graph g, int pid) { Node n; int i = 0; for(n = g -> source; n != NULL; n = n -> next) { n -> data = (void *) malloc (sizeof (struct data)); sanitize_node(n); PID(n) = pid; STATE(n) = ACT_NONE; ORDER(n) = i; i++; ITER_START(n) = FALSE; ITER_END(n) = FALSE; ITER_START_NODES(n) = ListCreate(); ITER_END_NODES(n) = ListCreate(); SUPER_NODES(n) = ListCreate(); } add_super_node_lists(g); /* add the node lists */ mark_for_iteration(g); /* mark beginning and end of iterations */ add_iteration_lists(g); /* add the iteration lists */ sanitize(g); /* sanitize markers */ mark_successors(g->source->next,ACT_READY); }