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