]> git.ipfire.org Git - thirdparty/pdns.git/blob - pdns/test-nameserver_cc.cc
Merge pull request #14237 from romeroalx/fix-docs-pip-pinning
[thirdparty/pdns.git] / pdns / test-nameserver_cc.cc
1 #ifndef BOOST_TEST_DYN_LINK
2 #define BOOST_TEST_DYN_LINK
3 #endif
4
5 #define BOOST_TEST_NO_MAIN
6
7 #ifdef HAVE_CONFIG_H
8 #include "config.h"
9 #endif
10 #include <boost/test/unit_test.hpp>
11 #include "iputils.hh"
12 #include "nameserver.hh"
13 #include "statbag.hh"
14 #include <utility>
15
16 extern vector<ComboAddress> g_localaddresses;
17 NetmaskGroup g_proxyProtocolACL;
18 size_t g_proxyProtocolMaximumSize = 512;
19
20 BOOST_AUTO_TEST_SUITE(test_nameserver_cc)
21
22 BOOST_AUTO_TEST_CASE(test_AddressIsUs4) {
23 ComboAddress local1("127.0.0.1", 53);
24 ComboAddress local2("127.0.0.2", 53);
25 ComboAddress Remote("192.168.255.255", 53);
26
27 g_localaddresses.push_back(ComboAddress("0.0.0.0", 53));
28
29 BOOST_CHECK_EQUAL(AddressIsUs(local1), true);
30 // BOOST_CHECK_EQUAL(AddressIsUs(local2), false);
31 BOOST_CHECK_EQUAL(AddressIsUs(Remote), false);
32
33 g_localaddresses.clear();
34 g_localaddresses.push_back(ComboAddress("192.168.255.255", 53));
35 BOOST_CHECK_EQUAL(AddressIsUs(Remote), true);
36 Remote.sin4.sin_port = 1;
37 BOOST_CHECK_EQUAL(AddressIsUs(Remote), false);
38 }
39
40 BOOST_AUTO_TEST_CASE(test_AddressIsUs6) {
41 ComboAddress local1("127.0.0.1", 53);
42 ComboAddress local2("127.0.0.2", 53);
43 ComboAddress local3("::1", 53);
44 ComboAddress Remote("192.168.255.255", 53);
45
46 g_localaddresses.clear();
47 g_localaddresses.push_back(ComboAddress("::", 53));
48
49 BOOST_CHECK_EQUAL(AddressIsUs(local1), true);
50 // BOOST_CHECK_EQUAL(AddressIsUs(local2), false);
51 if(!getenv("PDNS_TEST_NO_IPV6")) BOOST_CHECK_EQUAL(AddressIsUs(local3), true);
52 BOOST_CHECK_EQUAL(AddressIsUs(Remote), false);
53 Remote.sin4.sin_port = 1;
54 BOOST_CHECK_EQUAL(AddressIsUs(Remote), false);
55 }
56
57 BOOST_AUTO_TEST_SUITE_END()