Fix compilation with profiling enabled. Minor unittest fixes.

remotes/origin/master
Victor Julien 14 years ago
parent de5c1d1491
commit e237841a8e

@ -1780,8 +1780,12 @@ static int Unified2TestRotate01(void)
r = 1;
error:
Unified2AlertThreadDeinit(&tv, data);
if (oc != NULL) Unified2AlertDeInitCtx(oc);
ret = Unified2AlertThreadDeinit(&tv, data);
if(ret == TM_ECODE_FAILED) {
printf("Unified2AlertThreadDeinit error");
}
if (oc != NULL)
Unified2AlertDeInitCtx(oc);
if (filename != NULL)
SCFree(filename);
return r;

@ -2406,7 +2406,10 @@ DefragTimeoutTest(void)
DefragInit();
/* Setup a small numberr of trackers. */
ConfSet("defrag.trackers", "16", 1);
if (ConfSet("defrag.trackers", "16", 1) != 1) {
printf("ConfSet failed: ");
goto end;
}
dc = DefragContextNew();
if (dc == NULL)

@ -1176,10 +1176,12 @@ int AddressTestIPv6Le05(void)
uint32_t b[4];
struct in6_addr in6;
inet_pton(AF_INET6, "1999:ffff:ffff:ffff:ffff:ffff:ffff:ffff", &in6);
if (inet_pton(AF_INET6, "1999:ffff:ffff:ffff:ffff:ffff:ffff:ffff", &in6) != 1)
return 0;
memcpy(&a, &in6.s6_addr, sizeof(in6.s6_addr));
inet_pton(AF_INET6, "2000::0", &in6);
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
return 0;
memcpy(&b, &in6.s6_addr, sizeof(in6.s6_addr));
if (AddressIPv6LeU32(a, b) == 1)
@ -1248,10 +1250,12 @@ int AddressTestIPv6Ge05(void)
uint32_t b[4];
struct in6_addr in6;
inet_pton(AF_INET6, "1999:ffff:ffff:ffff:ffff:ffff:ffff:ffff", &in6);
if (inet_pton(AF_INET6, "1999:ffff:ffff:ffff:ffff:ffff:ffff:ffff", &in6) != 1)
return 0;
memcpy(&a, &in6.s6_addr, sizeof(in6.s6_addr));
inet_pton(AF_INET6, "2000::0", &in6);
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
return 0;
memcpy(&b, &in6.s6_addr, sizeof(in6.s6_addr));
if (AddressIPv6GeU32(a, b) == 0)
@ -1267,7 +1271,8 @@ int AddressTestIPv6SubOne01(void)
uint32_t a[4], b[4];
struct in6_addr in6;
inet_pton(AF_INET6, "2000::1", &in6);
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
a[0] = ntohl(a[0]);
@ -1277,7 +1282,8 @@ int AddressTestIPv6SubOne01(void)
AddressCutIPv6CopySubOne(a, b);
inet_pton(AF_INET6, "2000::0", &in6);
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
if (b[0] == a[0] && b[1] == a[1] &&
b[2] == a[2] && b[3] == a[3]) {
@ -1294,7 +1300,8 @@ int AddressTestIPv6SubOne02(void)
uint32_t a[4], b[4];
struct in6_addr in6;
inet_pton(AF_INET6, "2000::0", &in6);
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
a[0] = ntohl(a[0]);
@ -1304,7 +1311,8 @@ int AddressTestIPv6SubOne02(void)
AddressCutIPv6CopySubOne(a, b);
inet_pton(AF_INET6, "1FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6);
if (inet_pton(AF_INET6, "1FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
if (b[0] == a[0] && b[1] == a[1] &&
b[2] == a[2] && b[3] == a[3]) {
@ -1321,7 +1329,8 @@ int AddressTestIPv6AddOne01(void)
uint32_t a[4], b[4];
struct in6_addr in6;
inet_pton(AF_INET6, "2000::0", &in6);
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
a[0] = ntohl(a[0]);
@ -1331,7 +1340,8 @@ int AddressTestIPv6AddOne01(void)
AddressCutIPv6CopyAddOne(a, b);
inet_pton(AF_INET6, "2000::1", &in6);
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
if (b[0] == a[0] && b[1] == a[1] &&
b[2] == a[2] && b[3] == a[3]) {
@ -1348,7 +1358,8 @@ int AddressTestIPv6AddOne02(void)
uint32_t a[4], b[4];
struct in6_addr in6;
inet_pton(AF_INET6, "1FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6);
if (inet_pton(AF_INET6, "1FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
a[0] = ntohl(a[0]);
@ -1358,7 +1369,8 @@ int AddressTestIPv6AddOne02(void)
AddressCutIPv6CopyAddOne(a, b);
inet_pton(AF_INET6, "2000::0", &in6);
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
return 0;
memcpy(a, in6.s6_addr, sizeof(in6.s6_addr));
if (b[0] == a[0] && b[1] == a[1] &&
b[2] == a[2] && b[3] == a[3]) {
@ -1378,424 +1390,424 @@ static int AddressTestIPv6AddressCmp01(void)
if (a == NULL || b == NULL)
goto error;
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_EQ);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_ES);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::11", &in6) < 0)
if (inet_pton(AF_INET6, "2000::11", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_ES);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_ES);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::11", &in6) < 0)
if (inet_pton(AF_INET6, "2000::11", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_ES);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::11", &in6) < 0)
if (inet_pton(AF_INET6, "2000::11", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_ES);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::11", &in6) < 0)
if (inet_pton(AF_INET6, "2000::11", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_EB);
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_EB);
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::11", &in6) < 0)
if (inet_pton(AF_INET6, "2000::11", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_EB);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::11", &in6) < 0)
if (inet_pton(AF_INET6, "2000::11", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_EB);
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_LE);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_LE);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_LE);
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_LE);
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_LE);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_LT);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
/* we could get a LE */
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_LT);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
/* we could get a LE */
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_LT);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::19", &in6) < 0)
if (inet_pton(AF_INET6, "2000::19", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_LT);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_LT);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_LT);
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_GE);
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_GE);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_GE);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_GE);
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::19", &in6) < 0)
if (inet_pton(AF_INET6, "2000::19", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_GE);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_GE);
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) == ADDRESS_GT);
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_GT);
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&b->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&b->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCmpIPv6(a, b) != ADDRESS_GT);
@ -1824,10 +1836,10 @@ static int AddressTestIPv6CutNot01(void)
if ( (a = DetectAddressInit()) == NULL)
goto error;
if (inet_pton(AF_INET6, "::", &in6) < 0)
if (inet_pton(AF_INET6, "::", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) < 0)
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCutNotIPv6(a, &b) == -1);
@ -1859,20 +1871,20 @@ static int AddressTestIPv6CutNot02(void)
if ( (temp = DetectAddressInit()) == NULL)
goto error;
if (inet_pton(AF_INET6, "::", &in6) < 0)
if (inet_pton(AF_INET6, "::", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCutNotIPv6(a, &b) == 0);
result &= (b == NULL);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) < 0)
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
@ -1909,20 +1921,20 @@ static int AddressTestIPv6CutNot03(void)
if ( (temp = DetectAddressInit()) == NULL)
goto error;
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) < 0)
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCutNotIPv6(a, &b) == 0);
result &= (b == NULL);
if (inet_pton(AF_INET6, "::", &in6) < 0)
if (inet_pton(AF_INET6, "::", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
@ -1959,18 +1971,18 @@ static int AddressTestIPv6CutNot04(void)
if ( (temp = DetectAddressInit()) == NULL)
goto error;
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCutNotIPv6(a, &b) == 0);
if (inet_pton(AF_INET6, "::", &in6) < 0)
if (inet_pton(AF_INET6, "::", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(a, temp) == ADDRESS_EQ);
@ -1978,10 +1990,10 @@ static int AddressTestIPv6CutNot04(void)
result &= (b != NULL);
if (result == 0)
goto error;
if (inet_pton(AF_INET6, "2000::2", &in6) < 0)
if (inet_pton(AF_INET6, "2000::2", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) < 0)
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(b, temp) == ADDRESS_EQ);
@ -2017,18 +2029,18 @@ static int AddressTestIPv6CutNot05(void)
if ( (temp = DetectAddressInit()) == NULL)
goto error;
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&a->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&a->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressCutNotIPv6(a, &b) == 0);
if (inet_pton(AF_INET6, "::", &in6) < 0)
if (inet_pton(AF_INET6, "::", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::0", &in6) < 0)
if (inet_pton(AF_INET6, "2000::0", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(a, temp) == ADDRESS_EQ);
@ -2036,10 +2048,10 @@ static int AddressTestIPv6CutNot05(void)
result &= (b != NULL);
if (result == 0)
goto error;
if (inet_pton(AF_INET6, "2000::21", &in6) < 0)
if (inet_pton(AF_INET6, "2000::21", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) < 0)
if (inet_pton(AF_INET6, "FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(b, temp) == ADDRESS_EQ);
@ -2074,121 +2086,121 @@ static int AddressTestIPv6Join01(void)
goto error;
/* case 1 */
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&target->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&target->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&source->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000:20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&source->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressJoinIPv6(NULL, target, source) == 0);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(target, temp) == ADDRESS_EQ);
/* case 2 */
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&target->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&target->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::2", &in6) < 0)
if (inet_pton(AF_INET6, "2000::2", &in6) != 1)
goto error;
memcpy(&source->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::19", &in6) < 0)
if (inet_pton(AF_INET6, "2000::19", &in6) != 1)
goto error;
memcpy(&source->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressJoinIPv6(NULL, target, source) == 0);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(target, temp) == ADDRESS_EQ);
/* case 3 */
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&target->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::15", &in6) < 0)
if (inet_pton(AF_INET6, "2000::15", &in6) != 1)
goto error;
memcpy(&target->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&source->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&source->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressJoinIPv6(NULL, target, source) == 0);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(target, temp) == ADDRESS_EQ);
/* case 4 */
if (inet_pton(AF_INET6, "2000::10", &in6) < 0)
if (inet_pton(AF_INET6, "2000::10", &in6) != 1)
goto error;
memcpy(&target->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&target->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&source->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&source->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressJoinIPv6(NULL, target, source) == 0);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(target, temp) == ADDRESS_EQ);
/* case 5 */
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&target->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&target->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&source->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&source->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result &= (DetectAddressJoinIPv6(NULL, target, source) == 0);
if (inet_pton(AF_INET6, "2000::1", &in6) < 0)
if (inet_pton(AF_INET6, "2000::1", &in6) != 1)
goto error;
memcpy(&temp->ip.address, in6.s6_addr, sizeof(in6.s6_addr));
if (inet_pton(AF_INET6, "2000::20", &in6) < 0)
if (inet_pton(AF_INET6, "2000::20", &in6) != 1)
goto error;
memcpy(&temp->ip2.address, in6.s6_addr, sizeof(in6.s6_addr));
result = (DetectAddressCmpIPv6(target, temp) == ADDRESS_EQ);
@ -2208,6 +2220,7 @@ static int AddressTestIPv6Join01(void)
DetectAddressFree(target);
if (temp != NULL)
DetectAddressFree(temp);
return 0;
}

@ -2191,8 +2191,8 @@ int AddressTestMatch01(void)
struct in_addr in;
Address a;
inet_pton(AF_INET, "1.2.3.4", &in);
if (inet_pton(AF_INET, "1.2.3.4", &in) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET;
a.addr_data32[0] = in.s_addr;
@ -2216,8 +2216,8 @@ int AddressTestMatch02(void)
struct in_addr in;
Address a;
inet_pton(AF_INET, "1.2.3.127", &in);
if (inet_pton(AF_INET, "1.2.3.127", &in) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET;
a.addr_data32[0] = in.s_addr;
@ -2241,8 +2241,8 @@ int AddressTestMatch03(void)
struct in_addr in;
Address a;
inet_pton(AF_INET, "1.2.3.128", &in);
if (inet_pton(AF_INET, "1.2.3.128", &in) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET;
a.addr_data32[0] = in.s_addr;
@ -2266,8 +2266,8 @@ int AddressTestMatch04(void)
struct in_addr in;
Address a;
inet_pton(AF_INET, "1.2.2.255", &in);
if (inet_pton(AF_INET, "1.2.2.255", &in) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET;
a.addr_data32[0] = in.s_addr;
@ -2291,8 +2291,8 @@ int AddressTestMatch05(void)
struct in_addr in;
Address a;
inet_pton(AF_INET, "1.2.3.4", &in);
if (inet_pton(AF_INET, "1.2.3.4", &in) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET;
a.addr_data32[0] = in.s_addr;
@ -2316,8 +2316,8 @@ int AddressTestMatch06(void)
struct in_addr in;
Address a;
inet_pton(AF_INET, "1.2.3.4", &in);
if (inet_pton(AF_INET, "1.2.3.4", &in) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET;
a.addr_data32[0] = in.s_addr;
@ -2341,7 +2341,8 @@ int AddressTestMatch07(void)
struct in6_addr in6;
Address a;
inet_pton(AF_INET6, "2001::1", &in6);
if (inet_pton(AF_INET6, "2001::1", &in6) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET6;
memcpy(&a.addr_data32, &in6.s6_addr, sizeof(in6.s6_addr));
@ -2365,7 +2366,8 @@ int AddressTestMatch08(void)
struct in6_addr in6;
Address a;
inet_pton(AF_INET6, "1999:ffff:ffff:ffff:ffff:ffff:ffff:ffff", &in6);
if (inet_pton(AF_INET6, "1999:ffff:ffff:ffff:ffff:ffff:ffff:ffff", &in6) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET6;
memcpy(&a.addr_data32, &in6.s6_addr, sizeof(in6.s6_addr));
@ -2389,7 +2391,8 @@ int AddressTestMatch09(void)
struct in6_addr in6;
Address a;
inet_pton(AF_INET6, "2001::2", &in6);
if (inet_pton(AF_INET6, "2001::2", &in6) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET6;
memcpy(&a.addr_data32, &in6.s6_addr, sizeof(in6.s6_addr));
@ -2413,7 +2416,8 @@ int AddressTestMatch10(void)
struct in6_addr in6;
Address a;
inet_pton(AF_INET6, "2001::2", &in6);
if (inet_pton(AF_INET6, "2001::2", &in6) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET6;
memcpy(&a.addr_data32, &in6.s6_addr, sizeof(in6.s6_addr));
@ -2437,7 +2441,8 @@ int AddressTestMatch11(void)
struct in6_addr in6;
Address a;
inet_pton(AF_INET6, "2001::3", &in6);
if (inet_pton(AF_INET6, "2001::3", &in6) != 1)
return 0;
memset(&a, 0, sizeof(Address));
a.family = AF_INET6;
memcpy(&a.addr_data32, &in6.s6_addr, sizeof(in6.s6_addr));

@ -806,8 +806,10 @@ int DetectTagTestPacket04 (void) {
FLOW_INITIALIZE(&f);
f.protoctx = (void *)&ssn;
f.flags |= FLOW_IPV4;
inet_pton(AF_INET, "192.168.1.5", f.src.addr_data32);
inet_pton(AF_INET, "192.168.1.1", f.dst.addr_data32);
if (inet_pton(AF_INET, "192.168.1.5", f.src.addr_data32) != 1)
goto end;
if (inet_pton(AF_INET, "192.168.1.1", f.dst.addr_data32) != 1)
goto end;
DecodeThreadVars dtv;
ThreadVars th_v;

@ -4844,7 +4844,7 @@ static int StreamTcpTestMissedPacket (TcpReassemblyThreadCtx *ra_ctx,
{
Packet *p = SCMalloc(SIZE_OF_PACKET);
if (p == NULL)
return 0;
return -1;
Flow f;
TCPHdr tcph;
Port sp;
@ -4864,9 +4864,15 @@ static int StreamTcpTestMissedPacket (TcpReassemblyThreadCtx *ra_ctx,
dp = 220;
FLOW_INITIALIZE(&f);
inet_pton(AF_INET, "1.2.3.4", &in);
if (inet_pton(AF_INET, "1.2.3.4", &in) != 1) {
SCFree(p);
return -1;
}
f.src.addr_data32[0] = in.s_addr;
inet_pton(AF_INET, "1.2.3.5", &in);
if (inet_pton(AF_INET, "1.2.3.5", &in) != 1) {
SCFree(p);
return -1;
}
f.dst.addr_data32[0] = in.s_addr;
f.flags |= FLOW_IPV4;
f.sp = sp;
@ -5947,9 +5953,11 @@ static int StreamTcpReassembleTest38 (void) {
uint32_t httplen2 = sizeof(httpbuf2) - 1; /* minus the \0 */
FLOW_INITIALIZE(&f);
inet_pton(AF_INET, "1.2.3.4", &in);
if (inet_pton(AF_INET, "1.2.3.4", &in) != 1)
goto end;
f.src.addr_data32[0] = in.s_addr;
inet_pton(AF_INET, "1.2.3.5", &in);
if (inet_pton(AF_INET, "1.2.3.5", &in) != 1)
goto end;
f.dst.addr_data32[0] = in.s_addr;
sp = 200;
dp = 220;

@ -134,9 +134,7 @@ void *TmThreadsSlot1NoIn(void *td)
while (run) {
TmThreadTestThreadUnPaused(tv);
PACKET_PROFILING_TMM_START(p, s->tm_id);
r = s->SlotFunc(tv, NULL, s->slot_data, &s->slot_pre_pq, &s->slot_post_pq);
PACKET_PROFILING_TMM_END(p, s->tm_id);
/* handle error */
if (r == TM_ECODE_FAILED) {

@ -814,7 +814,7 @@ int SCThresholdConfLineLength(FILE *fd) {
int len = 0;
int c;
while ( (c = fgetc(fd)) && c != EOF && !feof(fd))
while ( (c = fgetc(fd)) && (char)c != '\n' && c != EOF && !feof(fd))
len++;
if (pos < 0)

@ -52,7 +52,10 @@
*/
uint32_t UTHSetIPv4Address(char *str) {
struct in_addr in;
inet_pton(AF_INET, str, &in);
if (inet_pton(AF_INET, str, &in) != 1) {
printf("invalid IPv6 address %s\n", str);
exit(EXIT_FAILURE);
}
return (uint32_t)in.s_addr;
}
@ -96,7 +99,7 @@ Packet *UTHBuildPacketIPV6Real(uint8_t *payload, uint16_t payload_len,
p->ip6h->s_ip6_nxt = ipproto;
p->ip6h->s_ip6_plen = htons(payload_len + sizeof(TCPHdr));
if (inet_pton(AF_INET6, src, &in) <= 0)
if (inet_pton(AF_INET6, src, &in) != 1)
goto error;
p->src.addr_data32[0] = in[0];
p->src.addr_data32[1] = in[1];
@ -108,7 +111,7 @@ Packet *UTHBuildPacketIPV6Real(uint8_t *payload, uint16_t payload_len,
p->ip6h->s_ip6_src[2] = in[2];
p->ip6h->s_ip6_src[3] = in[3];
if (inet_pton(AF_INET6, dst, &in) <= 0)
if (inet_pton(AF_INET6, dst, &in) != 1)
goto error;
p->dst.addr_data32[0] = in[0];
p->dst.addr_data32[1] = in[1];
@ -178,12 +181,12 @@ Packet *UTHBuildPacketReal(uint8_t *payload, uint16_t payload_len,
p->payload_len = payload_len;
p->proto = ipproto;
if (inet_pton(AF_INET, src, &in) <= 0)
if (inet_pton(AF_INET, src, &in) != 1)
goto error;
p->src.addr_data32[0] = in.s_addr;
p->sp = sport;
if (inet_pton(AF_INET, dst, &in) <= 0)
if (inet_pton(AF_INET, dst, &in) != 1)
goto error;
p->dst.addr_data32[0] = in.s_addr;
p->dp = dport;
@ -443,7 +446,11 @@ Flow *UTHBuildFlow(int family, char *src, char *dst, Port sp, Port dp) {
if (src != NULL) {
if (family == AF_INET) {
inet_pton(AF_INET, src, &in);
if (inet_pton(AF_INET, src, &in) != 1) {
printf("invalid address %s\n", src);
SCFree(f);
return NULL;
}
f->src.addr_data32[0] = in.s_addr;
} else {
BUG_ON(1);
@ -451,7 +458,11 @@ Flow *UTHBuildFlow(int family, char *src, char *dst, Port sp, Port dp) {
}
if (dst != NULL) {
if (family == AF_INET) {
inet_pton(AF_INET, src, &in);
if (inet_pton(AF_INET, src, &in) != 1) {
printf("invalid address %s\n", src);
SCFree(f);
return NULL;
}
f->dst.addr_data32[0] = in.s_addr;
} else {
BUG_ON(1);

Loading…
Cancel
Save