test-dns-util.c revision 00a15fe7ccadda399a86fe67ad2ed22488ff0c05
a81d5c3f5a4ad5d100b258d10d4c75f4a02ab1f6Stephan Bosch/* Copyright (c) 2016 Dovecot authors, see the included COPYING file */
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomistatic void test_dns_compare(void)
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi const char *a;
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi const char *b;
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi test_assert_idx(dns_compare(tests[i].a, tests[i].b) == tests[i].res, i);
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi test_assert_idx(dns_compare_labels(tests[i].a, tests[i].b) == tests[i].res, i);
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomistatic void test_dns_match(void)
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi const char *name;
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi const char *mask;
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi { "real.name.test.invalid", "*.test.invalid", -1 },
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi { "real.name.test.invalid", "*.*.test.invalid", 0 },
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi { "name.test.invalid", "*name*.test.invalid", -1 },
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi test_assert_idx(dns_match_wildcard(tests[i].name, tests[i].mask) == tests[i].res, i);
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomiarr_dns_compare(const char *const *a, const char *const *b)
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomistatic void test_dns_sort(void)
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi const char *input[] = {
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi "test.invalid",
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi const char *output[] = {
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi "test.invalid",
00a15fe7ccadda399a86fe67ad2ed22488ff0c05Timo Sirainen test_assert_idx(dns_compare(*strp, output[i]) == 0, i);
a7f58d28d4ccceaf03e2032ec8e855e1ba965bfeAki Tuomi void (*test_functions[])(void) = {