]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/resolve/test-resolve-tables.c
ec660379f44b02dfa6cd1131af3f669f09a241ba
[thirdparty/systemd.git] / src / resolve / test-resolve-tables.c
1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2
3 #include "dns-type.h"
4 #include "resolved-dns-dnssec.h"
5 #include "resolved-dns-packet.h"
6 #include "test-tables.h"
7 #include "tests.h"
8
9 int main(int argc, char **argv) {
10 uint16_t i;
11
12 test_setup_logging(LOG_DEBUG);
13
14 test_table(DnsProtocol, dns_protocol, DNS_PROTOCOL);
15 test_table(DnssecResult, dnssec_result, DNSSEC_RESULT);
16 test_table(DnssecVerdict, dnssec_verdict, DNSSEC_VERDICT);
17
18 test_table_sparse(int, dns_rcode, DNS_RCODE);
19 test_table_sparse(int, dns_type, DNS_TYPE);
20
21 log_info("/* DNS_TYPE */");
22 for (i = 0; i < _DNS_TYPE_MAX; i++) {
23 const char *s;
24
25 s = dns_type_to_string(i);
26 assert_se(s == NULL || strlen(s) < _DNS_TYPE_STRING_MAX);
27
28 if (s)
29 log_info("%-*s %s%s%s%s%s%s%s%s%s",
30 (int) _DNS_TYPE_STRING_MAX - 1, s,
31 dns_type_is_pseudo(i) ? "pseudo " : "",
32 dns_type_is_valid_query(i) ? "valid_query " : "",
33 dns_type_is_valid_rr(i) ? "is_valid_rr " : "",
34 dns_type_may_redirect(i) ? "may_redirect " : "",
35 dns_type_is_dnssec(i) ? "dnssec " : "",
36 dns_type_is_obsolete(i) ? "obsolete " : "",
37 dns_type_may_wildcard(i) ? "wildcard " : "",
38 dns_type_apex_only(i) ? "apex_only " : "",
39 dns_type_needs_authentication(i) ? "needs_authentication" : "");
40 }
41
42 log_info("/* DNS_CLASS */");
43 for (i = 0; i < _DNS_CLASS_MAX; i++) {
44 const char *s;
45
46 s = dns_class_to_string(i);
47 assert_se(s == NULL || strlen(s) < _DNS_CLASS_STRING_MAX);
48
49 if (s)
50 log_info("%-*s %s%s",
51 (int) _DNS_CLASS_STRING_MAX - 1, s,
52 dns_class_is_pseudo(i) ? "is_pseudo " : "",
53 dns_class_is_valid_rr(i) ? "is_valid_rr " : "");
54 }
55
56 return EXIT_SUCCESS;
57 }