david/ipxe
Archived
1
0

Temporarily work around the bug when port numbers are reused between

subsequent runs.
This commit is contained in:
Michael Brown 2006-08-09 14:44:58 +00:00
parent 09688cb3b5
commit dc8b96b446

View File

@ -562,6 +562,13 @@ int tcp_listen ( struct tcp_connection *conn, uint16_t local_port ) {
static uint16_t try_port = 1024; static uint16_t try_port = 1024;
int rc; int rc;
#warning "Fix the port re-use bug"
/* If we re-use the same port, the connection should be reset
* and a new connection set up. This doesn't happen yet, so
* randomise the port to avoid hitting the problem.
*/
try_port = random();
/* If no port specified, find the first available port */ /* If no port specified, find the first available port */
if ( ! local_port ) { if ( ! local_port ) {
for ( ; try_port ; try_port++ ) { for ( ; try_port ; try_port++ ) {