From: Victor Julien Date: Fri, 20 Dec 2013 13:29:13 +0000 (+0100) Subject: radix: update tests after API change X-Git-Tag: suricata-2.0rc1~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3b914eb7ba1feff68ddbd5d5c419b95adcdc91d1;p=thirdparty%2Fsuricata.git radix: update tests after API change This patch updates all the radix tests to the new API. In most cases it just passes a NULL user data return pointer. It also removes the tests related to SC_RADIX_NODE_USERDATA, as this macro is removed. Bug #1073 --- diff --git a/src/util-radix-tree.c b/src/util-radix-tree.c index d62de37df9..691a7de0fe 100644 --- a/src/util-radix-tree.c +++ b/src/util-radix-tree.c @@ -1731,13 +1731,13 @@ int SCRadixTestIPV4Insertion03(void) bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); /* test for the existance of a key */ bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.167.1.4", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); /* continue adding keys */ bzero(&servaddr, sizeof(servaddr)); @@ -1759,47 +1759,47 @@ int SCRadixTestIPV4Insertion03(void) bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.3", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "127.234.2.62", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.1", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.5", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.2", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.167.1.3", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.167.1.4", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "220.168.1.2", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.18", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); SCRadixReleaseRadixTree(tree); @@ -1874,12 +1874,12 @@ int SCRadixTestIPV4Removal04(void) bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.167.1.1", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.2", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.167.1.3", &servaddr.sin_addr) <= 0) @@ -1894,12 +1894,12 @@ int SCRadixTestIPV4Removal04(void) bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.5", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.2", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.2", &servaddr.sin_addr) <= 0) @@ -1937,21 +1937,21 @@ int SCRadixTestCharacterInsertion05(void) SCRadixAddKeyGeneric((uint8_t *)"Nathan", 48, tree, NULL); SCRadixAddKeyGeneric((uint8_t *)"Anoop", 40, tree, NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Victor", 48, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Matt", 32, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Josh", 32, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Margaret", 64, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Pablo", 40, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Brian", 40, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonish", 64, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonmc", 56, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Nathan", 48, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Anoop", 40, tree) != NULL); - - result &= (SCRadixFindKeyGeneric((uint8_t *)"bamboo", 48, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"bool", 32, tree) == NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"meerkat", 56, tree) == NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Victor", 48, tree) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Victor", 48, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Matt", 32, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Josh", 32, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Margaret", 64, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Pablo", 40, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Brian", 40, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonish", 64, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonmc", 56, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Nathan", 48, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Anoop", 40, tree, NULL) != NULL); + + result &= (SCRadixFindKeyGeneric((uint8_t *)"bamboo", 48, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"bool", 32, tree, NULL) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"meerkat", 56, tree, NULL) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Victor", 48, tree, NULL) == NULL); SCRadixReleaseRadixTree(tree); @@ -1981,29 +1981,29 @@ int SCRadixTestCharacterRemoval06(void) SCRadixRemoveKeyGeneric((uint8_t *)"Brian", 40, tree); SCRadixRemoveKeyGeneric((uint8_t *)"Margaret", 64, tree); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Victor", 48, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Matt", 32, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Josh", 32, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Margaret", 64, tree) == NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Brian", 40, tree) == NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Nathan", 48, tree) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Victor", 48, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Matt", 32, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Josh", 32, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Margaret", 64, tree, NULL) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Brian", 40, tree, NULL) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Nathan", 48, tree, NULL) == NULL); SCRadixRemoveKeyGeneric((uint8_t *)"Victor", 48, tree); SCRadixRemoveKeyGeneric((uint8_t *)"Josh", 32, tree); SCRadixRemoveKeyGeneric((uint8_t *)"Jasonmc", 56, tree); SCRadixRemoveKeyGeneric((uint8_t *)"Matt", 32, tree); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Pablo", 40, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonish", 64, tree) != NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Anoop", 40, tree) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Pablo", 40, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonish", 64, tree, NULL) != NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Anoop", 40, tree, NULL) != NULL); SCRadixRemoveKeyGeneric((uint8_t *)"Pablo", 40, tree); SCRadixRemoveKeyGeneric((uint8_t *)"Jasonish", 64, tree); SCRadixRemoveKeyGeneric((uint8_t *)"Anoop", 40, tree); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Pablo", 40, tree) == NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonish", 64, tree) == NULL); - result &= (SCRadixFindKeyGeneric((uint8_t *)"Anoop", 40, tree) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Pablo", 40, tree, NULL) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Jasonish", 64, tree, NULL) == NULL); + result &= (SCRadixFindKeyGeneric((uint8_t *)"Anoop", 40, tree, NULL) == NULL); result &= (tree->head == NULL); @@ -2071,55 +2071,55 @@ int SCRadixTestIPV6Insertion07(void) if (inet_pton(AF_INET6, "2003:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "BD15:9791:5346:6223:AADB:8713:9882:2432", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "1111:A21B:6221:BDEA:BBBA::DBAA:9861", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "4444:0BF7:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABC2:ABCD:DBCA:1245:2342:1111:2212", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2003:0BF5:5346:1251:7422:1112:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "5555:0BF1:ABCD:ADEA:7922:ABCD:9124:2375", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBCA:1245:2342:1111:2212", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2003:0BF1:5346:1251:7422:1112:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); SCRadixReleaseRadixTree(tree); @@ -2191,19 +2191,19 @@ int SCRadixTestIPV6Removal08(void) if (inet_pton(AF_INET6, "8888:0BF1:5346:BDEA:6422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2006:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2003:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "BD15:9791:5346:6223:AADB:8713:9882:2432", @@ -2216,37 +2216,37 @@ int SCRadixTestIPV6Removal08(void) if (inet_pton(AF_INET6, "1111:A21B:6221:BDEA:BBBA::DBAA:9861", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "4444:0BF7:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "5555:0BF1:ABCD:ADEA:7922:ABCD:9124:2375", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBCA:1245:2342:1111:2212", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2003:0BF1:5346:1251:7422:1112:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2003:0BF1:5346:BDEA:7422:8713:DDDD:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); /* remove keys */ bzero(&servaddr, sizeof(servaddr)); @@ -2266,37 +2266,37 @@ int SCRadixTestIPV6Removal08(void) if (inet_pton(AF_INET6, "2003:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "BD15:9791:5346:6223:AADB:8713:9882:2432", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "1111:A21B:6221:BDEA:BBBA::DBAA:9861", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "4444:0BF7:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "5555:0BF1:ABCD:ADEA:7922:ABCD:9124:2375", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBCA:1245:2342:1111:2212", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); /* remove keys */ bzero(&servaddr, sizeof(servaddr)); @@ -2328,37 +2328,37 @@ int SCRadixTestIPV6Removal08(void) if (inet_pton(AF_INET6, "2003:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "BD15:9791:5346:6223:AADB:8713:9882:2432", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "1111:A21B:6221:BDEA:BBBA::DBAA:9861", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "4444:0BF7:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "5555:0BF1:ABCD:ADEA:7922:ABCD:9124:2375", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBCA:1245:2342:1111:2212", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); SCRadixReleaseRadixTree(tree); @@ -2432,42 +2432,42 @@ int SCRadixTestIPV4NetblockInsertion09(void) bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.168.1.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.170.1.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.171.128.145", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.171.64.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.171.191.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.171.224.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.174.224.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.175.224.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); SCRadixReleaseRadixTree(tree); @@ -2543,22 +2543,22 @@ int SCRadixTestIPV4NetblockInsertion10(void) bzero(&servaddr, 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) == node[0]); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[0]); bzero(&servaddr, 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) == node[1]); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[1]); bzero(&servaddr, 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) == node[1]); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[1]); bzero(&servaddr, 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) == node[0]); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[0]); /* let us remove a netblock */ bzero(&servaddr, sizeof(servaddr)); @@ -2569,12 +2569,12 @@ int SCRadixTestIPV4NetblockInsertion10(void) bzero(&servaddr, 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); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, 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); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); SCRadixReleaseRadixTree(tree); @@ -2653,60 +2653,60 @@ int SCRadixTestIPV4NetblockInsertion11(void) bzero(&servaddr, 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); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, 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); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, 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); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, 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) == node); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "1.1.1.1", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == node); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.255.254.25", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == node); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "169.255.254.25", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == node); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "0.0.0.0", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == node); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "253.224.1.5", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL && - SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != node); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL && + SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "245.63.62.121", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL && - SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == node); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL && + SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "253.224.1.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL && - SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == node); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL && + SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node); /* remove node 0.0.0.0 */ bzero(&servaddr, sizeof(servaddr)); @@ -2717,32 +2717,32 @@ int SCRadixTestIPV4NetblockInsertion11(void) bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "253.224.1.6", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, 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); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "1.1.1.1", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.255.254.25", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "169.255.254.25", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "0.0.0.0", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); SCRadixReleaseRadixTree(tree); @@ -2817,57 +2817,57 @@ int SCRadixTestIPV4NetblockInsertion12(void) bzero(&servaddr, 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) == node[0]); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[0]); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.171.128.53", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, 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) == node[1]); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[1]); bzero(&servaddr, 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) == node[1]); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[1]); bzero(&servaddr, 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) == node[1]); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[1]); bzero(&servaddr, 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) == node[0]); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == node[0]); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "192.171.127.78", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "225.175.21.228", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "225.175.21.224", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "225.175.21.229", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "225.175.21.230", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV4ExactMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) == NULL); SCRadixReleaseRadixTree(tree); @@ -2930,73 +2930,73 @@ int SCRadixTestIPV6NetblockInsertion13(void) if (inet_pton(AF_INET6, "2003:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "BD15:9791:5346:6223:AADB:8713:9882:2432", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "1111:A21B:6221:BDEA:BBBA::DBAA:9861", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "1111:A21B:6221:BDEA:BBBA::DBAA:9861", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "4444:0BF7:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABC2:ABCD:DBCA:1245:2342:1111:2212", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2003:0BF5:5346:1251:7422:1112:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "5555:0BF1:ABCD:ADEA:7922:ABCD:9124:2375", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBCA:1245:2342:1111:2212", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBAA:1245:2342:1146:6241", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBAA:1245:2342:1356:1241", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DAAA:1245:2342:1146:6241", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); SCRadixReleaseRadixTree(tree); @@ -3067,39 +3067,39 @@ int SCRadixTestIPV6NetblockInsertion14(void) if (inet_pton(AF_INET6, "2004:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) == NULL); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == NULL); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2004:0BF1:5346:BDEA:7422:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) == node); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2004:0BF1:5346:B116:2362:8713:9124:2315", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) == node); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "2004:0B23:3252:BDEA:7422:8713:9124:2341", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) == node); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) == node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBAA:1245:2342:1145:6241", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL && - SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree) != node); + result &= (SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL && + SCRadixFindKeyIPV6ExactMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != node); bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DBCA:ABCD:ABCD:DBAA:1245:2342:1145:6241", &servaddr.sin6_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) != NULL && - SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree) != node); + result &= (SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != NULL && + SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, NULL) != node); SCRadixReleaseRadixTree(tree); @@ -3139,21 +3139,22 @@ int SCRadixTestIPV4NetBlocksAndBestSearch15(void) SCRadixAddKeyIPV4Netblock((uint8_t *)&servaddr.sin_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3198,21 +3199,22 @@ int SCRadixTestIPV4NetBlocksAndBestSearch16(void) SCRadixAddKeyIPV4Netblock((uint8_t *)&servaddr.sin_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3257,21 +3259,22 @@ int SCRadixTestIPV4NetBlocksAndBestSearch17(void) SCRadixAddKeyIPV4Netblock((uint8_t *)&servaddr.sin_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3316,21 +3319,22 @@ int SCRadixTestIPV4NetBlocksAndBestSearch18(void) SCRadixAddKeyIPV4Netblock((uint8_t *)&servaddr.sin_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3351,6 +3355,7 @@ int SCRadixTestIPV4NetBlocksAndBestSearch19(void) SCRadixTree *tree = NULL; struct sockaddr_in servaddr; int result = 1; + void *user_data = NULL; tree = SCRadixCreateRadixTree(free, NULL); @@ -3378,24 +3383,26 @@ int SCRadixTestIPV4NetBlocksAndBestSearch19(void) goto end; } - SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + SCRadixNode *node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 100) { + if ( *( (uint32_t *)user_data) != 100) { result = 0; goto end; } + user_data = NULL; + bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "177.0.0.0", &servaddr.sin_addr) <= 0) { result = 0; @@ -3418,48 +3425,51 @@ int SCRadixTestIPV4NetBlocksAndBestSearch19(void) goto end; } - node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 200) { + if ( *( (uint32_t *)user_data) != 200) { result = 0; goto end; } + user_data = NULL; + bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "178.168.1.15", &servaddr.sin_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 100) { + if ( *( (uint32_t*)user_data) != 100) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "177.168.0.0", &servaddr.sin_addr) <= 0) { result = 0; @@ -3482,92 +3492,95 @@ int SCRadixTestIPV4NetBlocksAndBestSearch19(void) goto end; } - node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 300) { + if ( *( (uint32_t*)user_data) != 300) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "177.167.1.15", &servaddr.sin_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 300) { + if ( *( (uint32_t *)user_data) != 300) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "177.178.1.15", &servaddr.sin_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 200) { + if ( *( (uint32_t *)user_data) != 200) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET, "197.178.1.15", &servaddr.sin_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree); + node = SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 100) { + if ( *( (uint32_t *)user_data) != 100) { result = 0; goto end; } @@ -3612,21 +3625,22 @@ int SCRadixTestIPV6NetBlocksAndBestSearch20(void) SCRadixAddKeyIPV6Netblock((uint8_t *)&servaddr.sin6_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3671,21 +3685,22 @@ int SCRadixTestIPV6NetBlocksAndBestSearch21(void) SCRadixAddKeyIPV6Netblock((uint8_t *)&servaddr.sin6_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3730,21 +3745,22 @@ int SCRadixTestIPV6NetBlocksAndBestSearch22(void) SCRadixAddKeyIPV6Netblock((uint8_t *)&servaddr.sin6_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3789,21 +3805,22 @@ int SCRadixTestIPV6NetBlocksAndBestSearch23(void) SCRadixAddKeyIPV6Netblock((uint8_t *)&servaddr.sin6_addr, tree, user, i); - SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + void *user_data = NULL; + SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != i) { - printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t*)node->prefix->user_data_result), i); + if ( *( (uint32_t *)user_data) != i) { + printf("User data == %"PRIu32"; i == %"PRIu32": ", *( (uint32_t *)user_data), i); result = 0; goto end; } @@ -3824,6 +3841,7 @@ int SCRadixTestIPV6NetBlocksAndBestSearch24(void) SCRadixTree *tree = NULL; struct sockaddr_in6 servaddr; int result = 1; + void *user_data = NULL; tree = SCRadixCreateRadixTree(free, NULL); @@ -3851,24 +3869,25 @@ int SCRadixTestIPV6NetBlocksAndBestSearch24(void) goto end; } - SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + SCRadixNode *node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 100) { + if ( *( (uint32_t*)user_data) != 100) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "ABCD::0", &servaddr.sin6_addr) <= 0) { result = 0; @@ -3891,50 +3910,52 @@ int SCRadixTestIPV6NetBlocksAndBestSearch24(void) goto end; } - node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 200) { - printf("User data == %"PRIu32"; i != 200 ", *( (uint32_t*)node->prefix->user_data_result)); + if ( *( (uint32_t *)user_data) != 200) { + printf("User data == %"PRIu32"; i != 200 ", *( (uint32_t *)user_data)); result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "DCBA::1", &servaddr.sin6_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 100) { - printf("User data == %"PRIu32"; != 100 ", *( (uint32_t*)node->prefix->user_data_result)); + if ( *( (uint32_t *)user_data) != 100) { + printf("User data == %"PRIu32"; != 100 ", *( (uint32_t *)user_data)); result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "ABCD:ABCD::0", &servaddr.sin6_addr) <= 0) { result = 0; @@ -3957,92 +3978,95 @@ int SCRadixTestIPV6NetBlocksAndBestSearch24(void) goto end; } - node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 300) { + if ( *( (uint32_t *)user_data) != 300) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "ABCD:AAAA::1", &servaddr.sin6_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 300) { + if ( *( (uint32_t *)user_data) != 300) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "ABAB::1", &servaddr.sin6_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 200) { + if ( *( (uint32_t *)user_data) != 200) { result = 0; goto end; } + user_data = NULL; bzero(&servaddr, sizeof(servaddr)); if (inet_pton(AF_INET6, "CABD::1", &servaddr.sin6_addr) <= 0) { result = 0; goto end; } - node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree); + node = SCRadixFindKeyIPV6BestMatch((uint8_t *)&servaddr.sin6_addr, tree, &user_data); if (node == NULL) { printf("node == NULL: "); result = 0; goto end; } - if (node->prefix->user_data_result == NULL) { + if (user_data == NULL) { printf("User data == NULL: "); result = 0; goto end; } - if ( *( (uint32_t*)node->prefix->user_data_result) != 100) { + if ( *( (uint32_t *)user_data) != 100) { result = 0; goto end; } @@ -4078,7 +4102,7 @@ int SCRadixTestIPV4NetblockInsertion25(void) if (inet_pton(AF_INET, "192.168.128.53", &servaddr.sin_addr) <= 0) return 0; - result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree) != NULL); + result &= (SCRadixFindKeyIPV4BestMatch((uint8_t *)&servaddr.sin_addr, tree, NULL) != NULL); SCRadixReleaseRadixTree(tree); @@ -4144,88 +4168,6 @@ this_end: return result; } -/** - * \test SC_RADIX_NODE_USERDATA macro - */ -static int SCRadixTestUserdataMacro01(void) { - int result = 0; - SCRadixNode *node = SCMalloc(sizeof(SCRadixNode)); - if (unlikely(node == NULL)) { - goto end; - } - memset(node, 0x00, sizeof(*node)); - - void *ptr = SC_RADIX_NODE_USERDATA(node, void); - if (ptr != NULL) { - printf("ptr %p, expected NULL: ", ptr); - goto end; - } - - result = 1; -end: - if (node != NULL) - SCFree(node); - return result; -} - -/** - * \test SC_RADIX_NODE_USERDATA macro - */ -static int SCRadixTestUserdataMacro02(void) { - SCRadixPrefix prefix; - int result = 0; - SCRadixNode *node = SCMalloc(sizeof(SCRadixNode)); - if (unlikely(node == NULL)) { - goto end; - } - memset(node, 0x00, sizeof(*node)); - memset(&prefix, 0x00, sizeof(prefix)); - - node->prefix = &prefix; - - void *ptr = SC_RADIX_NODE_USERDATA(node, void); - if (ptr != NULL) { - printf("ptr %p, expected NULL: ", ptr); - goto end; - } - - result = 1; -end: - if (node != NULL) - SCFree(node); - return result; -} - -/** - * \test SC_RADIX_NODE_USERDATA macro - */ -static int SCRadixTestUserdataMacro03(void) { - SCRadixPrefix prefix; - int result = 0; - void *somep = &result; - SCRadixNode *node = SCMalloc(sizeof(SCRadixNode)); - if (unlikely(node == NULL)) { - goto end; - } - memset(node, 0x00, sizeof(*node)); - memset(&prefix, 0x00, sizeof(prefix)); - - node->prefix = &prefix; - prefix.user_data_result = somep; - - void *ptr = SC_RADIX_NODE_USERDATA(node, void); - if (ptr != somep) { - printf("ptr %p, expected %p: ", ptr, somep); - goto end; - } - - result = 1; -end: - if (node != NULL) - SCFree(node); - return result; -} - #endif void SCRadixRegisterTests(void) @@ -4278,12 +4220,6 @@ void SCRadixRegisterTests(void) SCRadixTestIPV4NetblockInsertion25, 1); UtRegisterTest("SCRadixTestIPV4NetblockInsertion26", SCRadixTestIPV4NetblockInsertion26, 1); - UtRegisterTest("SCRadixTestUserdataMacro01", - SCRadixTestUserdataMacro01, 1); - UtRegisterTest("SCRadixTestUserdataMacro02", - SCRadixTestUserdataMacro02, 1); - UtRegisterTest("SCRadixTestUserdataMacro03", - SCRadixTestUserdataMacro03, 1); #endif return;