diff options
| author | Feng Chen <VonChenPlus@gmail.com> | 2022-09-20 11:56:43 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-09-20 11:56:43 +0800 |
| commit | 328ad69854496822f6058407485a0da7be6f3631 (patch) | |
| tree | ca79c4397f40990488a7b5691e15c0fcfec507b6 /src/core/internal_network/socket_proxy.cpp | |
| parent | 38e9c78843915d0c0bbadcf00497cfc91f8bf163 (diff) | |
| parent | fa7daaf17101a126b979fa6ba9254796ea9f7469 (diff) | |
Merge branch 'master' into mipmap
Diffstat (limited to 'src/core/internal_network/socket_proxy.cpp')
| -rw-r--r-- | src/core/internal_network/socket_proxy.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/core/internal_network/socket_proxy.cpp b/src/core/internal_network/socket_proxy.cpp index 49d067f4c2..0c746bd824 100644 --- a/src/core/internal_network/socket_proxy.cpp +++ b/src/core/internal_network/socket_proxy.cpp @@ -26,6 +26,12 @@ void ProxySocket::HandleProxyPacket(const ProxyPacket& packet) { closed) { return; } + + if (!broadcast && packet.broadcast) { + LOG_INFO(Network, "Received broadcast packet, but not configured for broadcast mode"); + return; + } + std::lock_guard guard(packets_mutex); received_packets.push(packet); } @@ -203,7 +209,7 @@ std::pair<s32, Errno> ProxySocket::SendTo(u32 flags, const std::vector<u8>& mess packet.local_endpoint = local_endpoint; packet.remote_endpoint = *addr; packet.protocol = protocol; - packet.broadcast = broadcast; + packet.broadcast = broadcast && packet.remote_endpoint.ip[3] == 255; auto& ip = local_endpoint.ip; auto ipv4 = Network::GetHostIPv4Address(); |
