diff --git a/src/network/core/os_abstraction.h b/src/network/core/os_abstraction.h index 8fab240297..d05c14023e 100644 --- a/src/network/core/os_abstraction.h +++ b/src/network/core/os_abstraction.h @@ -164,29 +164,6 @@ typedef unsigned long in_addr_t; #endif /* OS/2 */ -#ifdef __EMSCRIPTEN__ -/** - * Emscripten doesn't set 'addrlen' for accept(), getsockname(), getpeername() - * and recvfrom(), which confuses other functions and causes them to crash. - * This function needs to be called after these four functions to make sure - * 'addrlen' is patched up. - * - * https://github.com/emscripten-core/emscripten/issues/12996 - * - * @param address The address returned by those four functions. - * @return The correct value for addrlen. - */ -static inline socklen_t FixAddrLenForEmscripten(struct sockaddr_storage &address) -{ - switch (address.ss_family) { - case AF_INET6: return sizeof(struct sockaddr_in6); - case AF_INET: return sizeof(struct sockaddr_in); - default: NOT_REACHED(); - } -} -#endif - - bool SetNonBlocking(SOCKET d); bool SetNoDelay(SOCKET d); NetworkError GetSocketError(SOCKET d); diff --git a/src/network/core/tcp_listen.h b/src/network/core/tcp_listen.h index e23ecae707..4b90eb3866 100644 --- a/src/network/core/tcp_listen.h +++ b/src/network/core/tcp_listen.h @@ -42,9 +42,6 @@ public: socklen_t sin_len = sizeof(sin); SOCKET s = accept(ls, (struct sockaddr*)&sin, &sin_len); if (s == INVALID_SOCKET) return; -#ifdef __EMSCRIPTEN__ - sin_len = FixAddrLenForEmscripten(sin); -#endif SetNonBlocking(s); // XXX error handling? diff --git a/src/network/core/udp.cpp b/src/network/core/udp.cpp index e7b99a53e8..f3dbfe2ec2 100644 --- a/src/network/core/udp.cpp +++ b/src/network/core/udp.cpp @@ -131,9 +131,6 @@ void NetworkUDPSocketHandler::ReceivePackets() /* Did we get the bytes for the base header of the packet? */ if (nbytes <= 0) break; // No data, i.e. no packet if (nbytes <= 2) continue; // Invalid data; try next packet -#ifdef __EMSCRIPTEN__ - client_len = FixAddrLenForEmscripten(client_addr); -#endif NetworkAddress address(client_addr, client_len);