]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
detect/tls: use list util in tests; cleanups
authorVictor Julien <vjulien@oisf.net>
Fri, 17 Mar 2023 16:50:27 +0000 (17:50 +0100)
committerVictor Julien <vjulien@oisf.net>
Sat, 15 Apr 2023 05:02:49 +0000 (07:02 +0200)
src/tests/detect-tls-cert-fingerprint.c
src/tests/detect-tls-cert-issuer.c
src/tests/detect-tls-cert-serial.c
src/tests/detect-tls-cert-subject.c
src/tests/detect-tls-certs.c

index 735a7ab771ef2b8c961c2a44cc4e1f8e92b6c170..e2ec3d5f26d9b3b1b19abe34c17f65f5e02451e6 100644 (file)
@@ -32,20 +32,21 @@ static int DetectTlsFingerprintTest01(void)
 {
     DetectEngineCtx *de_ctx = DetectEngineCtxInit();
     FAIL_IF_NULL(de_ctx);
-
     de_ctx->flags |= DE_QUIET;
-    de_ctx->sig_list = SigInit(de_ctx, "alert tls any any -> any any "
-                               "(msg:\"Testing tls.cert_fingerprint\"; "
-                               "tls.cert_fingerprint; "
-                               "content:\"11:22:33:44:55:66:77:88:99:00:11:22:33:44:55:66:77:88:99:00\"; "
-                               "sid:1;)");
-    FAIL_IF_NULL(de_ctx->sig_list);
+
+    Signature *s = DetectEngineAppendSig(de_ctx,
+            "alert tls any any -> any any "
+            "(msg:\"Testing tls.cert_fingerprint\"; "
+            "tls.cert_fingerprint; "
+            "content:\"11:22:33:44:55:66:77:88:99:00:11:22:33:44:55:66:77:88:99:00\"; "
+            "sid:1;)");
+    FAIL_IF_NULL(s);
 
     /* sm should not be in the MATCH list */
-    SigMatch *sm = de_ctx->sig_list->sm_lists[DETECT_SM_LIST_MATCH];
+    SigMatch *sm = s->init_data->smlists[DETECT_SM_LIST_MATCH];
     FAIL_IF_NOT_NULL(sm);
 
-    sm = de_ctx->sig_list->sm_lists[g_tls_cert_fingerprint_buffer_id];
+    sm = DetectBufferGetFirstSigMatch(s, g_tls_cert_fingerprint_buffer_id);
     FAIL_IF_NULL(sm);
 
     FAIL_IF(sm->type != DETECT_CONTENT);
index f11d9ec9cbba00c001307a8f0949be6705ef212b..feaa70b3d6d88a9a4106ae93a786dace4d2c4325 100644 (file)
@@ -34,18 +34,18 @@ static int DetectTlsIssuerTest01(void)
 {
     DetectEngineCtx *de_ctx = DetectEngineCtxInit();
     FAIL_IF_NULL(de_ctx);
-
     de_ctx->flags |= DE_QUIET;
-    de_ctx->sig_list = SigInit(de_ctx, "alert tls any any -> any any "
-                               "(msg:\"Testing tls.cert_issuer\"; "
-                               "tls.cert_issuer; content:\"test\"; sid:1;)");
-    FAIL_IF_NULL(de_ctx->sig_list);
+
+    Signature *s = DetectEngineAppendSig(de_ctx, "alert tls any any -> any any "
+                                                 "(msg:\"Testing tls.cert_issuer\"; "
+                                                 "tls.cert_issuer; content:\"test\"; sid:1;)");
+    FAIL_IF_NULL(s);
 
     /* sm should not be in the MATCH list */
-    SigMatch *sm = de_ctx->sig_list->sm_lists[DETECT_SM_LIST_MATCH];
+    SigMatch *sm = s->init_data->smlists[DETECT_SM_LIST_MATCH];
     FAIL_IF_NOT_NULL(sm);
 
-    sm = de_ctx->sig_list->sm_lists[g_tls_cert_issuer_buffer_id];
+    sm = DetectBufferGetFirstSigMatch(s, g_tls_cert_issuer_buffer_id);
     FAIL_IF_NULL(sm);
 
     FAIL_IF(sm->type != DETECT_CONTENT);
index e12e202f053c2a457c9e2b508a135139a85c1e89..119d94a7eb3f55b367026ad8cf379dc4dba3abeb 100644 (file)
@@ -34,26 +34,24 @@ static int DetectTlsSerialTest01(void)
 {
     DetectEngineCtx *de_ctx = DetectEngineCtxInit();
     FAIL_IF_NULL(de_ctx);
-
     de_ctx->flags |= DE_QUIET;
-    de_ctx->sig_list = SigInit(de_ctx, "alert tls any any -> any any "
-                               "(msg:\"Testing tls.cert_serial\"; "
-                               "tls.cert_serial; content:\"XX:XX:XX\"; sid:1;)");
-    FAIL_IF_NULL(de_ctx->sig_list);
+
+    Signature *s = DetectEngineAppendSig(de_ctx, "alert tls any any -> any any "
+                                                 "(msg:\"Testing tls.cert_serial\"; "
+                                                 "tls.cert_serial; content:\"XX:XX:XX\"; sid:1;)");
+    FAIL_IF_NULL(s);
 
     /* sm should not be in the MATCH list */
-    SigMatch *sm = de_ctx->sig_list->sm_lists[DETECT_SM_LIST_MATCH];
+    SigMatch *sm = s->init_data->smlists[DETECT_SM_LIST_MATCH];
     FAIL_IF_NOT_NULL(sm);
 
-    sm = de_ctx->sig_list->sm_lists[g_tls_cert_serial_buffer_id];
+    sm = DetectBufferGetFirstSigMatch(s, g_tls_cert_serial_buffer_id);
     FAIL_IF_NULL(sm);
 
     FAIL_IF(sm->type != DETECT_CONTENT);
     FAIL_IF_NOT_NULL(sm->next);
 
-    SigGroupCleanup(de_ctx);
     DetectEngineCtxFree(de_ctx);
-
     PASS;
 }
 
index 6ee69e75713ef13e6bf39b64de5d511cad44b450..2df23eb7f6a5d5af4583e9b7aadc5828fbb6b8c6 100644 (file)
@@ -34,18 +34,18 @@ static int DetectTlsSubjectTest01(void)
 {
     DetectEngineCtx *de_ctx = DetectEngineCtxInit();
     FAIL_IF_NULL(de_ctx);
-
     de_ctx->flags |= DE_QUIET;
-    de_ctx->sig_list = SigInit(de_ctx, "alert tls any any -> any any "
-                               "(msg:\"Testing tls.cert_subject\"; "
-                               "tls.cert_subject; content:\"test\"; sid:1;)");
-    FAIL_IF_NULL(de_ctx->sig_list);
+
+    Signature *s = DetectEngineAppendSig(de_ctx, "alert tls any any -> any any "
+                                                 "(msg:\"Testing tls.cert_subject\"; "
+                                                 "tls.cert_subject; content:\"test\"; sid:1;)");
+    FAIL_IF_NULL(s);
 
     /* sm should not be in the MATCH list */
-    SigMatch *sm = de_ctx->sig_list->sm_lists[DETECT_SM_LIST_MATCH];
+    SigMatch *sm = s->init_data->smlists[DETECT_SM_LIST_MATCH];
     FAIL_IF_NOT_NULL(sm);
 
-    sm = de_ctx->sig_list->sm_lists[g_tls_cert_subject_buffer_id];
+    sm = DetectBufferGetFirstSigMatch(s, g_tls_cert_subject_buffer_id);
     FAIL_IF_NULL(sm);
 
     FAIL_IF(sm->type != DETECT_CONTENT);
index 69933b46e889ec3e9baebe6166ec5c6106fd5c91..9f4d401bcb758e6ae961776535cd3a52da28995c 100644 (file)
@@ -34,26 +34,23 @@ static int DetectTlsCertsTest01(void)
 {
     DetectEngineCtx *de_ctx = DetectEngineCtxInit();
     FAIL_IF_NULL(de_ctx);
-
     de_ctx->flags |= DE_QUIET;
-    de_ctx->sig_list = SigInit(de_ctx, "alert tls any any -> any any "
-                               "(msg:\"Testing tls.certs\"; tls.certs; "
-                               "content:\"|01 02 03 04 05|\"; sid:1;)");
+    Signature *s = DetectEngineAppendSig(de_ctx, "alert tls any any -> any any "
+                                                 "(msg:\"Testing tls.certs\"; tls.certs; "
+                                                 "content:\"|01 02 03 04 05|\"; sid:1;)");
     FAIL_IF_NULL(de_ctx->sig_list);
 
     /* sm should not be in the MATCH list */
-    SigMatch *sm = de_ctx->sig_list->sm_lists[DETECT_SM_LIST_MATCH];
+    SigMatch *sm = s->init_data->smlists[DETECT_SM_LIST_MATCH];
     FAIL_IF_NOT_NULL(sm);
 
-    sm = de_ctx->sig_list->sm_lists[g_tls_certs_buffer_id];
+    sm = DetectBufferGetFirstSigMatch(s, g_tls_certs_buffer_id);
     FAIL_IF_NULL(sm);
 
     FAIL_IF(sm->type != DETECT_CONTENT);
     FAIL_IF_NOT_NULL(sm->next);
 
-    SigCleanSignatures(de_ctx);
     DetectEngineCtxFree(de_ctx);
-
     PASS;
 }