]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
prelude: don't build string objet for NULL string
authorEric Leblond <eric@regit.org>
Wed, 28 Nov 2012 09:34:35 +0000 (10:34 +0100)
committerEric Leblond <eric@regit.org>
Wed, 28 Nov 2012 16:44:09 +0000 (17:44 +0100)
prelude_string_set_ref don't like when it is called with a NULL
parameter. This patch adds check for NULL value. This is formally
good as there is no use of a NULL description.

src/alert-prelude.c

index 8abcd77b2bd464f74d3190a573679b571a7e16bc..019533f8de5099c555d875fdbf21121ee2e2a824 100644 (file)
@@ -249,11 +249,13 @@ static int EventToImpact(PacketAlert *pa, Packet *p, idmef_alert_t *alert)
         idmef_assessment_set_action(assessment, action, 0);
     }
 
-    ret = idmef_impact_new_description(impact, &str);
-    if ( ret < 0 )
-        SCReturnInt(ret);
+    if (pa->s->class_msg) {
+        ret = idmef_impact_new_description(impact, &str);
+        if ( ret < 0 )
+            SCReturnInt(ret);
 
-    prelude_string_set_ref(str, pa->s->class_msg);
+        prelude_string_set_ref(str, pa->s->class_msg);
+    }
 
     SCReturnInt(0);
 }
@@ -693,11 +695,13 @@ TmEcode AlertPrelude (ThreadVars *tv, Packet *p, void *data, PacketQueue *pq, Pa
     if ( ret < 0 )
         goto err;
 
-    ret = idmef_classification_new_text(class, &str);
-    if ( ret < 0 )
-        goto err;
+    if (pa->s->msg) {
+        ret = idmef_classification_new_text(class, &str);
+        if ( ret < 0 )
+            goto err;
 
-    prelude_string_set_ref(str, pa->s->msg);
+        prelude_string_set_ref(str, pa->s->msg);
+    }
 
     ret = EventToImpact(pa, p, alert);
     if ( ret < 0 )