]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
radix: cleanup test
authorVictor Julien <vjulien@oisf.net>
Fri, 11 Feb 2022 14:53:41 +0000 (15:53 +0100)
committerJeff Lucovsky <jeff@lucovsky.org>
Fri, 11 Mar 2022 14:03:33 +0000 (09:03 -0500)
(cherry picked from commit d04dface20657e781f683c30f159afcefa5ac1ea)

src/util-radix-tree.c

index 047dd11d8dd9b53c34eb35b3aa7b917f4b8e9f58..719297be7646ceae821086c6c3775039df83d5e0 100644 (file)
@@ -2527,7 +2527,6 @@ static int SCRadixTestIPV4NetblockInsertion10(void)
     SCRadixTree *tree = NULL;
     SCRadixNode *node[2];
     struct sockaddr_in servaddr;
-    int result = 1;
 
     tree = SCRadixCreateRadixTree(free, NULL);
 
@@ -2570,8 +2569,7 @@ static int SCRadixTestIPV4NetblockInsertion10(void)
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.128.0", &servaddr.sin_addr) <= 0)
         return 0;
-    node[0] = SCRadixAddKeyIPV4Netblock((uint8_t *)&servaddr.sin_addr, tree, NULL,
-                                        24);
+    node[0] = SCRadixAddKeyIPV4Netblock((uint8_t *)&servaddr.sin_addr, tree, NULL, 24);
 
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.128.45", &servaddr.sin_addr) <= 0)
@@ -2587,26 +2585,34 @@ static int SCRadixTestIPV4NetblockInsertion10(void)
         return 0;
     SCRadixAddKeyIPV4Netblock((uint8_t *)&servaddr.sin_addr, tree, NULL, 16);
 
+    SCRadixPrintTree(tree);
+
     /* test for the existance of a key */
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.128.53", &servaddr.sin_addr) <= 0)
         return 0;
-    result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[0]);
+    SCRadixNode *found = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL);
+    FAIL_IF_NOT(found == node[0]);
 
+    SCLogDebug("search \"exact\" match for 192.171.128.45");
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.128.45", &servaddr.sin_addr) <= 0)
         return 0;
-    result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[1]);
+    found = SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL);
+    FAIL_IF_NOT(found == node[1]);
 
+    SCLogDebug("search \"best\" match for 192.171.128.45");
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.128.45", &servaddr.sin_addr) <= 0)
         return 0;
-    result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[1]);
+    found = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL);
+    FAIL_IF_NOT(found == node[1]);
 
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.128.78", &servaddr.sin_addr) <= 0)
         return 0;
-    result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[0]);
+    found = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL);
+    FAIL_IF_NOT(found == node[0]);
 
     /* let us remove a netblock */
     memset(&servaddr, 0, sizeof(servaddr));
@@ -2617,16 +2623,16 @@ static int SCRadixTestIPV4NetblockInsertion10(void)
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.128.78", &servaddr.sin_addr) <= 0)
         return 0;
-    result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL);
+    found = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL);
+    FAIL_IF_NOT_NULL(found);
 
     memset(&servaddr, 0, sizeof(servaddr));
     if (inet_pton(AF_INET, "192.171.127.78", &servaddr.sin_addr) <= 0)
         return 0;
-    result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL);
+    found = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL);
+    FAIL_IF_NOT_NULL(found);
 
-    SCRadixReleaseRadixTree(tree);
-
-    return result;
+    PASS;
 }
 
 static int SCRadixTestIPV4NetblockInsertion11(void)