p2p: fix endianness when checking IPv6 addresses mapping to IPv4

This commit is contained in:
moneromooo-monero 2020-11-05 16:05:54 +00:00
parent 67f2bec2df
commit c64b94bd14
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3

View File

@ -1518,11 +1518,9 @@ namespace nodetool
if (actual_ip.is_v4_mapped())
{
boost::asio::ip::address_v4 v4ip = make_address_v4_from_v6(actual_ip);
#if BOOST_VERSION >= 106600
return epee::net_utils::ipv4_network_address(v4ip.to_uint(), 0).host_str();
#else
return epee::net_utils::ipv4_network_address(v4ip.to_ulong(), 0).host_str();
#endif
uint32_t actual_ipv4;
memcpy(&actual_ipv4, v4ip.to_bytes().data(), sizeof(actual_ipv4));
return epee::net_utils::ipv4_network_address(actual_ipv4, 0).host_str();
}
}
return address.host_str();