argc-=optind;
argv+=optind;
for(auto p = argv; *p; ++p) {
- g_cmdLine.remotes.push_back(*p);
+ if(g_cmdLine.beClient) {
+ clientAddress = ComboAddress(*p, 5199);
+ } else {
+ g_cmdLine.remotes.push_back(*p);
+ }
}
- g_maxOutstanding = 1024;
-
ServerPolicy leastOutstandingPol{"leastOutstanding", leastOutstanding};
g_policy.setState(leastOutstandingPol);
return memcmp(&sin6.sin6_addr.s6_addr, &rhs.sin6.sin6_addr.s6_addr, 16)==0;
}
+ bool operator!=(const ComboAddress& rhs) const
+ {
+ return(!operator==(rhs));
+ }
+
bool operator<(const ComboAddress& rhs) const
{
+ if(sin4.sin_family == 0) {
+ return false;
+ }
if(boost::tie(sin4.sin_family, sin4.sin_port) < boost::tie(rhs.sin4.sin_family, rhs.sin4.sin_port))
return true;
if(boost::tie(sin4.sin_family, sin4.sin_port) > boost::tie(rhs.sin4.sin_family, rhs.sin4.sin_port))
ComboAddress a = ComboAddress();
ComboAddress b = ComboAddress();
BOOST_CHECK(a == b);
+
+ // Verify that 2 ComboAddresses are not the same
+ ComboAddress c = ComboAddress("127.0.0.1:53");
+ ComboAddress d = ComboAddress("127.0.0.1:52");
+ ComboAddress e = ComboAddress("127.0.0.2:53");
+
+ BOOST_CHECK(a != c);
+ BOOST_CHECK(c != d);
+ BOOST_CHECK(c != e);
+ BOOST_CHECK(d != e);
+ BOOST_CHECK(!(a != b));
}
+BOOST_AUTO_TEST_CASE(test_ComboAddressCompare) {
+ ComboAddress a, b;
+ memset(&a, 0, sizeof(a));
+ memset(&b, 0, sizeof(b));
+ BOOST_CHECK(!(a<b));
+ BOOST_CHECK(!(a>b));
+}
+
BOOST_AUTO_TEST_CASE(test_ComboAddressTruncate) {
ComboAddress ca4("130.161.252.29");
ca4.truncate(24);