diff --git a/common/src/nx_tcp_server_socket_accept.c b/common/src/nx_tcp_server_socket_accept.c index 04804a61e..e0059cd9d 100644 --- a/common/src/nx_tcp_server_socket_accept.c +++ b/common/src/nx_tcp_server_socket_accept.c @@ -106,7 +106,8 @@ NX_IP *ip_ptr; if (socket_ptr -> nx_tcp_socket_tx_sequence == 0) { socket_ptr -> nx_tcp_socket_tx_sequence = (((ULONG)NX_RAND()) << NX_SHIFT_BY_16) & 0xFFFFFFFF; - socket_ptr -> nx_tcp_socket_tx_sequence |= (ULONG)NX_RAND(); + socket_ptr -> nx_tcp_socket_tx_sequence += (ULONG)NX_RAND(); + socket_ptr -> nx_tcp_socket_tx_sequence &= 0xFFFFFFFF; } else { diff --git a/common/src/nxd_tcp_client_socket_connect.c b/common/src/nxd_tcp_client_socket_connect.c index 56b68f884..9c734ece8 100644 --- a/common/src/nxd_tcp_client_socket_connect.c +++ b/common/src/nxd_tcp_client_socket_connect.c @@ -411,7 +411,8 @@ ULONG ip_address_log = 0; if (socket_ptr -> nx_tcp_socket_tx_sequence == 0) { socket_ptr -> nx_tcp_socket_tx_sequence = (((ULONG)NX_RAND()) << NX_SHIFT_BY_16) & 0xFFFFFFFF; - socket_ptr -> nx_tcp_socket_tx_sequence |= (ULONG)NX_RAND(); + socket_ptr -> nx_tcp_socket_tx_sequence += (ULONG)NX_RAND(); + socket_ptr -> nx_tcp_socket_tx_sequence &= 0xFFFFFFFF; } else {