@@ -50,6 +50,18 @@ class CAddrManTest : public CAddrMan
5050 }
5151};
5252
53+ static CNetAddr ResolveIP (const char * ip)
54+ {
55+ CNetAddr addr;
56+ BOOST_CHECK_MESSAGE (LookupHost (ip, addr, false ), strprintf (" failed to resolve: %s" , ip));
57+ return addr;
58+ }
59+
60+ static CNetAddr ResolveIP (std::string ip)
61+ {
62+ return ResolveIP (ip.c_str ());
63+ }
64+
5365BOOST_FIXTURE_TEST_SUITE (addrman_tests, BasicTestingSetup)
5466
5567BOOST_AUTO_TEST_CASE(addrman_simple)
@@ -59,7 +71,7 @@ BOOST_AUTO_TEST_CASE(addrman_simple)
5971 // Set addrman addr placement to be deterministic.
6072 addrman.MakeDeterministic ();
6173
62- CNetAddr source = CNetAddr (" 252.2.2.2" );
74+ CNetAddr source = ResolveIP (" 252.2.2.2" );
6375
6476 // Test 1: Does Addrman respond correctly when empty.
6577 BOOST_CHECK (addrman.size () == 0 );
@@ -100,7 +112,7 @@ BOOST_AUTO_TEST_CASE(addrman_ports)
100112 // Set addrman addr placement to be deterministic.
101113 addrman.MakeDeterministic ();
102114
103- CNetAddr source = CNetAddr (" 252.2.2.2" );
115+ CNetAddr source = ResolveIP (" 252.2.2.2" );
104116
105117 BOOST_CHECK (addrman.size () == 0 );
106118
@@ -132,7 +144,7 @@ BOOST_AUTO_TEST_CASE(addrman_select)
132144 // Set addrman addr placement to be deterministic.
133145 addrman.MakeDeterministic ();
134146
135- CNetAddr source = CNetAddr (" 252.2.2.2" );
147+ CNetAddr source = ResolveIP (" 252.2.2.2" );
136148
137149 // Test 9: Select from new with 1 addr in new.
138150 CService addr1 = CService (" 250.1.1.1" , 8333 );
@@ -160,20 +172,20 @@ BOOST_AUTO_TEST_CASE(addrman_select)
160172 CService addr3 = CService (" 250.3.2.2" , 9999 );
161173 CService addr4 = CService (" 250.3.3.3" , 9999 );
162174
163- addrman.Add (CAddress (addr2, NODE_NONE), CService (" 250.3.1.1" , 8333 ));
164- addrman.Add (CAddress (addr3, NODE_NONE), CService (" 250.3.1.1" , 8333 ));
165- addrman.Add (CAddress (addr4, NODE_NONE), CService (" 250.4.1.1" , 8333 ));
175+ addrman.Add (CAddress (addr2, NODE_NONE), CService (" 250.3.1.1" , 8333 ), NODE_NONE );
176+ addrman.Add (CAddress (addr3, NODE_NONE), CService (" 250.3.1.1" , 8333 ), NODE_NONE );
177+ addrman.Add (CAddress (addr4, NODE_NONE), CService (" 250.4.1.1" , 8333 ), NODE_NONE );
166178
167179 // Add three addresses to tried table.
168180 CService addr5 = CService (" 250.4.4.4" , 8333 );
169181 CService addr6 = CService (" 250.4.5.5" , 7777 );
170182 CService addr7 = CService (" 250.4.6.6" , 8333 );
171183
172- addrman.Add (CAddress (addr5, NODE_NONE), CService (" 250.3.1.1" , 8333 ));
184+ addrman.Add (CAddress (addr5, NODE_NONE), CService (" 250.3.1.1" , 8333 ), NODE_NONE );
173185 addrman.Good (CAddress (addr5, NODE_NONE));
174- addrman.Add (CAddress (addr6, NODE_NONE), CService (" 250.3.1.1" , 8333 ));
186+ addrman.Add (CAddress (addr6, NODE_NONE), CService (" 250.3.1.1" , 8333 ), NODE_NONE );
175187 addrman.Good (CAddress (addr6, NODE_NONE));
176- addrman.Add (CAddress (addr7, NODE_NONE), CService (" 250.1.1.3" , 8333 ));
188+ addrman.Add (CAddress (addr7, NODE_NONE), CService (" 250.1.1.3" , 8333 ), NODE_NONE );
177189 addrman.Good (CAddress (addr7, NODE_NONE));
178190
179191 // Test 11: 6 addrs + 1 addr from last test = 7.
@@ -194,7 +206,7 @@ BOOST_AUTO_TEST_CASE(addrman_new_collisions)
194206 // Set addrman addr placement to be deterministic.
195207 addrman.MakeDeterministic ();
196208
197- CNetAddr source = CNetAddr (" 252.2.2.2" );
209+ CNetAddr source = ResolveIP (" 252.2.2.2" );
198210
199211 BOOST_CHECK (addrman.size () == 0 );
200212
@@ -223,7 +235,7 @@ BOOST_AUTO_TEST_CASE(addrman_tried_collisions)
223235 // Set addrman addr placement to be deterministic.
224236 addrman.MakeDeterministic ();
225237
226- CNetAddr source = CNetAddr (" 252.2.2.2" );
238+ CNetAddr source = ResolveIP (" 252.2.2.2" );
227239
228240 BOOST_CHECK (addrman.size () == 0 );
229241
@@ -260,8 +272,8 @@ BOOST_AUTO_TEST_CASE(addrman_find)
260272 CAddress addr2 = CAddress (CService (" 250.1.2.1" , 9999 ), NODE_NONE);
261273 CAddress addr3 = CAddress (CService (" 251.255.2.1" , 8333 ), NODE_NONE);
262274
263- CNetAddr source1 = CNetAddr (" 250.1.2.1" );
264- CNetAddr source2 = CNetAddr (" 250.1.2.2" );
275+ CNetAddr source1 = ResolveIP (" 250.1.2.1" );
276+ CNetAddr source2 = ResolveIP (" 250.1.2.2" );
265277
266278 addrman.Add (addr1, source1);
267279 addrman.Add (addr2, source2);
@@ -296,7 +308,7 @@ BOOST_AUTO_TEST_CASE(addrman_create)
296308 BOOST_CHECK (addrman.size () == 0 );
297309
298310 CAddress addr1 = CAddress (CService (" 250.1.2.1" , 8333 ), NODE_NONE);
299- CNetAddr source1 = CNetAddr (" 250.1.2.1" );
311+ CNetAddr source1 = ResolveIP (" 250.1.2.1" );
300312
301313 int nId;
302314 CAddrInfo* pinfo = addrman.Create (addr1, source1, &nId);
@@ -319,7 +331,7 @@ BOOST_AUTO_TEST_CASE(addrman_delete)
319331 BOOST_CHECK (addrman.size () == 0 );
320332
321333 CAddress addr1 = CAddress (CService (" 250.1.2.1" , 8333 ), NODE_NONE);
322- CNetAddr source1 = CNetAddr (" 250.1.2.1" );
334+ CNetAddr source1 = ResolveIP (" 250.1.2.1" );
323335
324336 int nId;
325337 addrman.Create (addr1, source1, &nId);
@@ -355,8 +367,8 @@ BOOST_AUTO_TEST_CASE(addrman_getaddr)
355367 addr4.nTime = GetAdjustedTime ();
356368 CAddress addr5 = CAddress (CService (" 252.254.4.5" , 8333 ), NODE_NONE);
357369 addr5.nTime = GetAdjustedTime ();
358- CNetAddr source1 = CNetAddr (" 250.1.2.1" );
359- CNetAddr source2 = CNetAddr (" 250.2.3.3" );
370+ CNetAddr source1 = ResolveIP (" 250.1.2.1" );
371+ CNetAddr source2 = ResolveIP (" 250.2.3.3" );
360372
361373 // Test 23: Ensure GetAddr works with new addresses.
362374 addrman.Add (addr1, source1);
@@ -383,7 +395,7 @@ BOOST_AUTO_TEST_CASE(addrman_getaddr)
383395
384396 // Ensure that for all addrs in addrman, isTerrible == false.
385397 addr.nTime = GetAdjustedTime ();
386- addrman.Add (addr, CNetAddr (strAddr));
398+ addrman.Add (addr, ResolveIP (strAddr));
387399 if (i % 8 == 0 )
388400 addrman.Good (addr);
389401 }
@@ -407,7 +419,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_tried_bucket)
407419 CAddress addr1 = CAddress (CService (" 250.1.1.1" , 8333 ), NODE_NONE);
408420 CAddress addr2 = CAddress (CService (" 250.1.1.1" , 9999 ), NODE_NONE);
409421
410- CNetAddr source1 = CNetAddr (" 250.1.1.1" );
422+ CNetAddr source1 = ResolveIP (" 250.1.1.1" );
411423
412424
413425 CAddrInfo info1 = CAddrInfo (addr1, source1);
@@ -433,7 +445,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_tried_bucket)
433445 for (int i = 0 ; i < 255 ; i++) {
434446 CAddrInfo infoi = CAddrInfo (
435447 CAddress (CService (" 250.1.1." + boost::to_string (i)), NODE_NONE),
436- CNetAddr (" 250.1.1." + boost::to_string (i)));
448+ ResolveIP (" 250.1.1." + boost::to_string (i)));
437449 int bucket = infoi.GetTriedBucket (nKey1);
438450 buckets.insert (bucket);
439451 }
@@ -445,7 +457,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_tried_bucket)
445457 for (int j = 0 ; j < 255 ; j++) {
446458 CAddrInfo infoj = CAddrInfo (
447459 CAddress (CService (" 250." + boost::to_string (j) + " .1.1" ), NODE_NONE),
448- CNetAddr (" 250." + boost::to_string (j) + " .1.1" ));
460+ ResolveIP (" 250." + boost::to_string (j) + " .1.1" ));
449461 int bucket = infoj.GetTriedBucket (nKey1);
450462 buckets.insert (bucket);
451463 }
@@ -464,7 +476,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_new_bucket)
464476 CAddress addr1 = CAddress (CService (" 250.1.2.1" , 8333 ), NODE_NONE);
465477 CAddress addr2 = CAddress (CService (" 250.1.2.1" , 9999 ), NODE_NONE);
466478
467- CNetAddr source1 = CNetAddr (" 250.1.2.1" );
479+ CNetAddr source1 = ResolveIP (" 250.1.2.1" );
468480
469481 CAddrInfo info1 = CAddrInfo (addr1, source1);
470482
@@ -486,7 +498,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_new_bucket)
486498 for (int i = 0 ; i < 255 ; i++) {
487499 CAddrInfo infoi = CAddrInfo (
488500 CAddress (CService (" 250.1.1." + boost::to_string (i)), NODE_NONE),
489- CNetAddr (" 250.1.1." + boost::to_string (i)));
501+ ResolveIP (" 250.1.1." + boost::to_string (i)));
490502 int bucket = infoi.GetNewBucket (nKey1);
491503 buckets.insert (bucket);
492504 }
@@ -499,7 +511,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_new_bucket)
499511 CAddrInfo infoj = CAddrInfo (CAddress (
500512 CService (
501513 boost::to_string (250 + (j / 255 )) + " ." + boost::to_string (j % 256 ) + " .1.1" ), NODE_NONE),
502- CNetAddr (" 251.4.1.1" ));
514+ ResolveIP (" 251.4.1.1" ));
503515 int bucket = infoj.GetNewBucket (nKey1);
504516 buckets.insert (bucket);
505517 }
@@ -511,7 +523,7 @@ BOOST_AUTO_TEST_CASE(caddrinfo_get_new_bucket)
511523 for (int p = 0 ; p < 255 ; p++) {
512524 CAddrInfo infoj = CAddrInfo (
513525 CAddress (CService (" 250.1.1.1" ), NODE_NONE),
514- CNetAddr (" 250." + boost::to_string (p) + " .1.1" ));
526+ ResolveIP (" 250." + boost::to_string (p) + " .1.1" ));
515527 int bucket = infoj.GetNewBucket (nKey1);
516528 buckets.insert (bucket);
517529 }
0 commit comments