|
2 | 2 | // Distributed under the MIT software license, see the accompanying |
3 | 3 | // file COPYING or http://www.opensource.org/licenses/mit-license.php. |
4 | 4 | #include <addrman.h> |
5 | | -#include <i2p.h> |
6 | 5 | #include <test/data/asmap.raw.h> |
7 | 6 | #include <test/util/setup_common.h> |
8 | 7 | #include <util/asmap.h> |
@@ -967,121 +966,5 @@ BOOST_AUTO_TEST_CASE(addrman_evictionworks) |
967 | 966 | BOOST_CHECK(addrman.SelectTriedCollision().ToString() == "[::]:0"); |
968 | 967 | } |
969 | 968 |
|
970 | | -BOOST_AUTO_TEST_CASE(reset_i2p_ports) |
971 | | -{ |
972 | | - CAddrManTest addrman1; |
973 | | - CAddrManTest addrman2; |
974 | | - const uint32_t good_time{static_cast<uint32_t>(GetAdjustedTime())}; |
975 | | - constexpr uint16_t port = 8333; |
976 | | - |
977 | | - // Has its port changed, will be re-positioned within the same bucket in vvNew. |
978 | | - const CAddress i2p_new1{ |
979 | | - ResolveService("72l3ucjkuscrbiiepoehuwqgknyzgo7zuix5ty4puwrkyhtmnsga.b32.i2p", port), |
980 | | - NODE_NONE, |
981 | | - good_time}; |
982 | | - |
983 | | - // Has its port changed, will not be re-positioned in vvNew because ports 0 and 10075 result in |
984 | | - // the same bucket position. |
985 | | - const CAddress i2p_new2{ |
986 | | - ResolveService("gehtac45oaghz54ypyopim64mql7oad2bqclla74l6tfeolzmodq.b32.i2p", 10075), |
987 | | - NODE_NONE, |
988 | | - good_time}; |
989 | | - |
990 | | - // Remains unchanged, port is already as it should be. |
991 | | - const CAddress i2p_new3{ |
992 | | - ResolveService("c4gfnttsuwqomiygupdqqqyy5y5emnk5c73hrfvatri67prd7vyq.b32.i2p", |
993 | | - I2P_SAM31_PORT), |
994 | | - NODE_NONE, |
995 | | - good_time}; |
996 | | - |
997 | | - // Has its port changed, re-positioning in vvNew will cause i2p_new3 to be evicted. |
998 | | - const CAddress i2p_new4{ |
999 | | - ResolveService("c4cbbkn46qxftwja53pxiykntegfyfjqtnzbm6iv6r5mungmqgmq.b32.i2p", port), |
1000 | | - NODE_NONE, |
1001 | | - good_time}; |
1002 | | - |
1003 | | - // Remains unchanged. |
1004 | | - const CAddress ipv4_new{ResolveService("1.2.3.4", port), NODE_NONE, good_time}; |
1005 | | - |
1006 | | - // Has its port changed, will be re-positioned in vvTried. |
1007 | | - const CAddress i2p_tried1{ |
1008 | | - ResolveService("h3r6bkn46qxftwja53pxiykntegfyfjqtnzbm6iv6r5mungmqgmq.b32.i2p", port), |
1009 | | - NODE_NONE, |
1010 | | - good_time}; |
1011 | | - |
1012 | | - // Has its port changed, will not be re-positioned in vvTried because ports 0 and 10537 |
1013 | | - // result in the same position (bucket, i). |
1014 | | - const CAddress i2p_tried2{ |
1015 | | - ResolveService("pjs7or2ctvteeo5tu4bwyrtydeuhqhvdprtujn4daxr75jpebjxa.b32.i2p", 10537), |
1016 | | - NODE_NONE, |
1017 | | - good_time}; |
1018 | | - |
1019 | | - // Remains unchanged, port is already as it should be. |
1020 | | - const CAddress i2p_tried3{ |
1021 | | - ResolveService("hnbbyjpxx54623l555sta7pocy3se4sdgmuebi5k6reesz5rjp6q.b32.i2p", |
1022 | | - I2P_SAM31_PORT), |
1023 | | - NODE_NONE, |
1024 | | - good_time}; |
1025 | | - |
1026 | | - // Has its port changed, re-positioning in vvTried will cause i2p_tried3 to be moved to vvNew. |
1027 | | - const CAddress i2p_tried4{ |
1028 | | - ResolveService("hna37nqr3ahkqv62cuqfwgtneekvvpnuc4i4f6yo7tpoqjswvcwa.b32.i2p", port), |
1029 | | - NODE_NONE, |
1030 | | - good_time}; |
1031 | | - |
1032 | | - // Remains unchanged. |
1033 | | - const CAddress ipv4_tried{ResolveService("2.3.4.5", port), NODE_NONE, good_time}; |
1034 | | - |
1035 | | - const CNetAddr source; |
1036 | | - |
1037 | | - CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); |
1038 | | - |
1039 | | - addrman1.Add(i2p_new1, source); |
1040 | | - addrman1.Add(i2p_new2, source); |
1041 | | - addrman1.Add(i2p_new3, source); |
1042 | | - addrman1.Add(i2p_new4, source); |
1043 | | - addrman1.Add(ipv4_new, source); |
1044 | | - |
1045 | | - addrman1.Add(i2p_tried1, source); |
1046 | | - addrman1.Good(i2p_tried1); |
1047 | | - addrman1.Add(i2p_tried2, source); |
1048 | | - addrman1.Good(i2p_tried2); |
1049 | | - addrman1.Add(i2p_tried3, source); |
1050 | | - addrman1.Good(i2p_tried3); |
1051 | | - addrman1.Add(i2p_tried4, source); |
1052 | | - addrman1.Good(i2p_tried4); |
1053 | | - addrman1.Add(ipv4_tried, source); |
1054 | | - addrman1.Good(ipv4_tried); |
1055 | | - |
1056 | | - stream << addrman1; |
1057 | | - stream >> addrman2; |
1058 | | - |
1059 | | - const size_t max_addresses{0}; |
1060 | | - const size_t max_pct{0}; |
1061 | | - |
1062 | | - auto addresses = addrman2.GetAddr(max_addresses, max_pct, NET_I2P); |
1063 | | - BOOST_REQUIRE_EQUAL(addresses.size(), 7UL); |
1064 | | - std::sort(addresses.begin(), addresses.end()); // Just some deterministic order. |
1065 | | - BOOST_CHECK_EQUAL(addresses[0].ToStringIP(), i2p_new4.ToStringIP()); |
1066 | | - BOOST_CHECK_EQUAL(addresses[0].GetPort(), I2P_SAM31_PORT); |
1067 | | - BOOST_CHECK_EQUAL(addresses[1].ToStringIP(), i2p_new2.ToStringIP()); |
1068 | | - BOOST_CHECK_EQUAL(addresses[1].GetPort(), I2P_SAM31_PORT); |
1069 | | - BOOST_CHECK_EQUAL(addresses[2].ToStringIP(), i2p_tried4.ToStringIP()); |
1070 | | - BOOST_CHECK_EQUAL(addresses[2].GetPort(), I2P_SAM31_PORT); |
1071 | | - BOOST_CHECK_EQUAL(addresses[3].ToStringIP(), i2p_tried3.ToStringIP()); |
1072 | | - BOOST_CHECK_EQUAL(addresses[3].GetPort(), I2P_SAM31_PORT); |
1073 | | - BOOST_CHECK_EQUAL(addresses[4].ToStringIP(), i2p_tried1.ToStringIP()); |
1074 | | - BOOST_CHECK_EQUAL(addresses[4].GetPort(), I2P_SAM31_PORT); |
1075 | | - BOOST_CHECK_EQUAL(addresses[5].ToStringIP(), i2p_tried2.ToStringIP()); |
1076 | | - BOOST_CHECK_EQUAL(addresses[5].GetPort(), I2P_SAM31_PORT); |
1077 | | - BOOST_CHECK_EQUAL(addresses[6].ToStringIP(), i2p_new1.ToStringIP()); |
1078 | | - BOOST_CHECK_EQUAL(addresses[6].GetPort(), I2P_SAM31_PORT); |
1079 | | - |
1080 | | - addresses = addrman2.GetAddr(max_addresses, max_pct, NET_IPV4); |
1081 | | - BOOST_REQUIRE_EQUAL(addresses.size(), 2UL); |
1082 | | - std::sort(addresses.begin(), addresses.end()); // Just some deterministic order. |
1083 | | - BOOST_CHECK_EQUAL(addresses[0].ToStringIPPort(), ipv4_new.ToStringIPPort()); |
1084 | | - BOOST_CHECK_EQUAL(addresses[1].ToStringIPPort(), ipv4_tried.ToStringIPPort()); |
1085 | | -} |
1086 | 969 |
|
1087 | 970 | BOOST_AUTO_TEST_SUITE_END() |
0 commit comments