libprelude/master: Fix critical warnings on destroy when assigning NULL value to IDMEF union
[email protected] Fri, 4 Dec 2009 10:29:42 +0100 (CET)
| Newsgroups | gmane.comp.security.ids.prelude.cvs |
|---|---|
| Message-ID | <[email protected]> |
commit a626cbec816ddb6bab001aa650d8dae0d3aed6eb Author: Yoann Vandoorselaere <[email protected]> Date: Fri Dec 4 10:21:45 2009 +0100 Fix critical warnings on destroy when assigning NULL value to IDMEF union When setting an IDMEF union member to NULL, make sure we reset the variable holding the object type to zero, so that we do not get a critical warning when the parent object is destroyed. ======================================== src/idmef-tree-wrap.c | 14 +++++++------- src/idmef-wrappers-gen/GenerateIDMEFTreeWrapC.pm | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) ======================================== diff --git a/src/idmef-tree-wrap.c b/src/idmef-tree-wrap.c index 9fdeeda..902f757 100644 --- a/src/idmef-tree-wrap.c +++ b/src/idmef-tree-wrap.c @@ -8467,7 +8467,7 @@ void idmef_service_set_web_service(idmef_service_t *ptr, idmef_web_service_t *we } ptr->specific.web_service = web_service; - ptr->type = IDMEF_SERVICE_TYPE_WEB; + ptr->type = (web_service) ? IDMEF_SERVICE_TYPE_WEB : 0; } /** @@ -8552,7 +8552,7 @@ void idmef_service_set_snmp_service(idmef_service_t *ptr, idmef_snmp_service_t * } ptr->specific.snmp_service = snmp_service; - ptr->type = IDMEF_SERVICE_TYPE_SNMP; + ptr->type = (snmp_service) ? IDMEF_SERVICE_TYPE_SNMP : 0; } /** @@ -21025,7 +21025,7 @@ void idmef_alert_set_tool_alert(idmef_alert_t *ptr, idmef_tool_alert_t *tool_ale } ptr->detail.tool_alert = tool_alert; - ptr->type = IDMEF_ALERT_TYPE_TOOL; + ptr->type = (tool_alert) ? IDMEF_ALERT_TYPE_TOOL : 0; } /** @@ -21118,7 +21118,7 @@ void idmef_alert_set_correlation_alert(idmef_alert_t *ptr, idmef_correlation_ale } ptr->detail.correlation_alert = correlation_alert; - ptr->type = IDMEF_ALERT_TYPE_CORRELATION; + ptr->type = (correlation_alert) ? IDMEF_ALERT_TYPE_CORRELATION : 0; } /** @@ -21211,7 +21211,7 @@ void idmef_alert_set_overflow_alert(idmef_alert_t *ptr, idmef_overflow_alert_t * } ptr->detail.overflow_alert = overflow_alert; - ptr->type = IDMEF_ALERT_TYPE_OVERFLOW; + ptr->type = (overflow_alert) ? IDMEF_ALERT_TYPE_OVERFLOW : 0; } /** @@ -22766,7 +22766,7 @@ void idmef_message_set_alert(idmef_message_t *ptr, idmef_alert_t *alert) } ptr->message.alert = alert; - ptr->type = IDMEF_MESSAGE_TYPE_ALERT; + ptr->type = (alert) ? IDMEF_MESSAGE_TYPE_ALERT : 0; } /** @@ -22851,7 +22851,7 @@ void idmef_message_set_heartbeat(idmef_message_t *ptr, idmef_heartbeat_t *heartb } ptr->message.heartbeat = heartbeat; - ptr->type = IDMEF_MESSAGE_TYPE_HEARTBEAT; + ptr->type = (heartbeat) ? IDMEF_MESSAGE_TYPE_HEARTBEAT : 0; } /** diff --git a/src/idmef-wrappers-gen/GenerateIDMEFTreeWrapC.pm b/src/idmef-wrappers-gen/GenerateIDMEFTreeWrapC.pm index 35472f6..2da76f1 100644 --- a/src/idmef-wrappers-gen/GenerateIDMEFTreeWrapC.pm +++ b/src/idmef-wrappers-gen/GenerateIDMEFTreeWrapC.pm @@ -1510,7 +1510,7 @@ void idmef_$struct->{short_typename}_set_$member->{name}($struct->{typename} *pt \} ptr->$field->{name}.$member->{name} = $member->{name}; - ptr->$field->{var} = $member->{value}; + ptr->$field->{var} = ($member->{name}) ? $member->{value} : 0; \} "); _______________________________________________ Prelude-cvslog site list [email protected] http://lists.prelude-ids.org/mailman/listinfo/prelude-cvslog