[udp] Avoid reusing auto-allocated ports after connection close.
authorMichael Brown <mcb30@etherboot.org>
Thu, 10 Jul 2008 03:21:10 +0000 (04:21 +0100)
committerMichael Brown <mcb30@etherboot.org>
Thu, 10 Jul 2008 03:21:10 +0000 (04:21 +0100)
This duplicates a fix made to tcp.c in commit
d5735c631cf26d8e1bcf7b5e635623b52d6b48aa.

src/net/udp.c

index 8df76a4..407ea14 100644 (file)
@@ -55,11 +55,12 @@ struct tcpip_protocol udp_protocol;
  */
 static int udp_bind ( struct udp_connection *udp ) {
        struct udp_connection *existing;
-       static uint16_t try_port = 1024;
+       static uint16_t try_port = 1023;
 
        /* If no port specified, find the first available port */
        if ( ! udp->local.st_port ) {
-               for ( ; try_port ; try_port++ ) {
+               while ( try_port ) {
+                       try_port++;
                        if ( try_port < 1024 )
                                continue;
                        udp->local.st_port = htons ( try_port );