From d04dface20657e781f683c30f159afcefa5ac1ea Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Fri, 11 Feb 2022 15:53:41 +0100 Subject: [PATCH] radix: cleanup test --- src/util-radix-tree.c | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/src/util-radix-tree.c b/src/util-radix-tree.c index c8c3e9e715..07217f677b 100644 --- a/src/util-radix-tree.c +++ b/src/util-radix-tree.c @@ -2525,7 +2525,6 @@ static int SCRadixTestIPV4NetblockInsertion10(void) SCRadixTree *tree = NULL; SCRadixNode *node[2]; struct sockaddr_in servaddr; - int result = 1; tree = SCRadixCreateRadixTree(free, NULL); @@ -2568,8 +2567,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) @@ -2585,26 +2583,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)); @@ -2615,16 +2621,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)