aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authoriuyua9 <769891618@qq.com>2026-05-09 20:46:42 +0800
committeriuyua9 <suyu_usdt@163.com>2026-05-14 17:40:26 +0800
commit2a6f64d8faad464c9cecc9c317b06f00f96f4578 (patch)
tree446b4666338cbe51d7224859423a72095a2e54a7 /contrib
parent12c8ccf57fefceac40a10966fb5f0905830e7402 (diff)
downloadmonzero-core-2a6f64d8faad464c9cecc9c317b06f00f96f4578.tar.gz
monzero-core-2a6f64d8faad464c9cecc9c317b06f00f96f4578.tar.xz
monzero-core-2a6f64d8faad464c9cecc9c317b06f00f96f4578.zip
epee: skip IPv4 TOS option for non-IPv4 peers
Diffstat (limited to 'contrib')
-rw-r--r--contrib/epee/include/net/abstract_tcp_server2.inl18
1 files changed, 10 insertions, 8 deletions
diff --git a/contrib/epee/include/net/abstract_tcp_server2.inl b/contrib/epee/include/net/abstract_tcp_server2.inl
index e202d9152..56d3d7de2 100644
--- a/contrib/epee/include/net/abstract_tcp_server2.inl
+++ b/contrib/epee/include/net/abstract_tcp_server2.inl
@@ -960,14 +960,16 @@ namespace net_utils
ec_t ec;
#if !defined(_WIN32) || !defined(__i686)
- connection_basic::socket_.next_layer().set_option(
- boost::asio::detail::socket_option::integer<IPPROTO_IP, IP_TOS>{
- connection_basic::get_tos_flag()
- },
- ec
- );
- if (ec.value())
- return false;
+ if (real_remote->get_type_id() == ipv4_network_address::get_type_id()) {
+ connection_basic::socket_.next_layer().set_option(
+ boost::asio::detail::socket_option::integer<IPPROTO_IP, IP_TOS>{
+ connection_basic::get_tos_flag()
+ },
+ ec
+ );
+ if (ec.value())
+ return false;
+ }
#endif
connection_basic::socket_.next_layer().set_option(
boost::asio::ip::tcp::no_delay{false},