summaryrefslogtreecommitdiff
path: root/tests/ip-utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ip-utils.c')
-rw-r--r--tests/ip-utils.c88
1 files changed, 47 insertions, 41 deletions
diff --git a/tests/ip-utils.c b/tests/ip-utils.c
index 5718953f86..3d05470bc2 100644
--- a/tests/ip-utils.c
+++ b/tests/ip-utils.c
@@ -32,28 +32,29 @@
#include <gnutls/x509.h>
#ifndef _WIN32
-# include <cmocka.h>
-# include <sys/socket.h>
+#include <cmocka.h>
+#include <sys/socket.h>
-# define BUILD_IN_TESTS
-# include "../lib/x509/ip-in-cidr.h"
+#define BUILD_IN_TESTS
+#include "../lib/x509/ip-in-cidr.h"
-# define _MATCH_FUNC(fname, CIDR, IP, status) \
-static void fname(void **glob_state) \
-{ \
- gnutls_datum_t dcidr; \
- const char cidr[] = CIDR; \
- const char ip[] = IP; \
- char xip[4]; \
- gnutls_datum_t dip = {(unsigned char*)xip, sizeof(xip)}; \
- assert_int_equal(gnutls_x509_cidr_to_rfc5280(cidr, &dcidr), 0); \
- assert_int_equal(inet_pton(AF_INET, ip, xip), 1); \
- assert_int_equal(ip_in_cidr(&dip, &dcidr), status); \
- gnutls_free(dcidr.data); \
-}
+#define _MATCH_FUNC(fname, CIDR, IP, status) \
+ static void fname(void **glob_state) \
+ { \
+ gnutls_datum_t dcidr; \
+ const char cidr[] = CIDR; \
+ const char ip[] = IP; \
+ char xip[4]; \
+ gnutls_datum_t dip = { (unsigned char *)xip, sizeof(xip) }; \
+ assert_int_equal(gnutls_x509_cidr_to_rfc5280(cidr, &dcidr), \
+ 0); \
+ assert_int_equal(inet_pton(AF_INET, ip, xip), 1); \
+ assert_int_equal(ip_in_cidr(&dip, &dcidr), status); \
+ gnutls_free(dcidr.data); \
+ }
-# define MATCH_FUNC_OK(fname, CIDR, IP) _MATCH_FUNC(fname, CIDR, IP, 1)
-# define MATCH_FUNC_NOT_OK(fname, CIDR, IP) _MATCH_FUNC(fname, CIDR, IP, 0)
+#define MATCH_FUNC_OK(fname, CIDR, IP) _MATCH_FUNC(fname, CIDR, IP, 1)
+#define MATCH_FUNC_NOT_OK(fname, CIDR, IP) _MATCH_FUNC(fname, CIDR, IP, 0)
MATCH_FUNC_OK(check_ip1_match, "192.168.1.0/24", "192.168.1.128");
MATCH_FUNC_OK(check_ip2_match, "192.168.1.0/24", "192.168.1.1");
@@ -69,34 +70,39 @@ MATCH_FUNC_NOT_OK(check_ip5_not_match, "192.168.1.0/28", "192.168.1.64");
MATCH_FUNC_NOT_OK(check_ip6_not_match, "192.168.1.0/24", "10.0.0.0");
MATCH_FUNC_NOT_OK(check_ip7_not_match, "192.168.1.0/24", "192.169.1.0");
-# define CIDR_MATCH(fname, CIDR, EXPECTED) \
-static void fname(void **glob_state) \
-{ \
- gnutls_datum_t dcidr; \
- const char cidr[] = CIDR; \
- assert_int_equal(gnutls_x509_cidr_to_rfc5280(cidr, &dcidr), 0); \
- assert_memory_equal(EXPECTED, dcidr.data, dcidr.size); \
- gnutls_free(dcidr.data); \
-}
+#define CIDR_MATCH(fname, CIDR, EXPECTED) \
+ static void fname(void **glob_state) \
+ { \
+ gnutls_datum_t dcidr; \
+ const char cidr[] = CIDR; \
+ assert_int_equal(gnutls_x509_cidr_to_rfc5280(cidr, &dcidr), \
+ 0); \
+ assert_memory_equal(EXPECTED, dcidr.data, dcidr.size); \
+ gnutls_free(dcidr.data); \
+ }
-# define CIDR_FAIL(fname, CIDR) \
-static void fname(void **glob_state) \
-{ \
- gnutls_datum_t dcidr; \
- const char cidr[] = CIDR; \
- assert_int_not_equal(gnutls_x509_cidr_to_rfc5280(cidr, &dcidr), 0); \
-}
+#define CIDR_FAIL(fname, CIDR) \
+ static void fname(void **glob_state) \
+ { \
+ gnutls_datum_t dcidr; \
+ const char cidr[] = CIDR; \
+ assert_int_not_equal( \
+ gnutls_x509_cidr_to_rfc5280(cidr, &dcidr), 0); \
+ }
CIDR_MATCH(check_cidr_ok1, "0.0.0.0/32", "\x00\x00\x00\x00\xff\xff\xff\xff");
CIDR_MATCH(check_cidr_ok2, "192.168.1.1/12",
"\xc0\xa0\x00\x00\xff\xf0\x00\x00");
CIDR_MATCH(check_cidr_ok3, "192.168.1.1/0", "\x00\x00\x00\x00\x00\x00\x00\x00");
-CIDR_MATCH(check_cidr_ok4, "::/19",
- "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xe0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00");
-CIDR_MATCH(check_cidr_ok5, "::1/128",
- "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff");
-CIDR_MATCH(check_cidr_ok6, "2001:db8::/48",
- "\x20\x01\x0d\xb8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00");
+CIDR_MATCH(
+ check_cidr_ok4, "::/19",
+ "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xe0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00");
+CIDR_MATCH(
+ check_cidr_ok5, "::1/128",
+ "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff");
+CIDR_MATCH(
+ check_cidr_ok6, "2001:db8::/48",
+ "\x20\x01\x0d\xb8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00");
CIDR_FAIL(check_cidr_fail1, "0.0.0.0/100");
CIDR_FAIL(check_cidr_fail2, "1.2.3.4/-1");