From 92213c286af39927080b35e3da81dfe8b46717b1 Mon Sep 17 00:00:00 2001 From: denis <> Date: Tue, 13 Mar 2007 23:24:53 +0000 Subject: fixed udp remoteport handling --- opentracker.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'opentracker.c') diff --git a/opentracker.c b/opentracker.c index a83b276..7217f63 100644 --- a/opentracker.c +++ b/opentracker.c @@ -563,10 +563,10 @@ static void handle_udp4( int64 serversocket ) { unsigned long *inpacket = (unsigned long*)static_inbuf; unsigned long *outpacket = (unsigned long*)static_outbuf; unsigned long numwant, left, event; - uint16 port; + uint16 port, remoteport; size_t r; - r = socket_recv4( serversocket, static_inbuf, 8192, remoteip, &port); + r = socket_recv4( serversocket, static_inbuf, 8192, remoteip, &remoteport); /* Minimum udp tracker packet size, also catches error */ if( r < 16 ) @@ -576,7 +576,7 @@ static void handle_udp4( int64 serversocket ) { case 0: /* This is a connect action */ outpacket[0] = 0; outpacket[1] = inpacket[3]; outpacket[2] = inpacket[0]; outpacket[3] = inpacket[1]; - socket_send4( serversocket, static_outbuf, 16, remoteip, port ); + socket_send4( serversocket, static_outbuf, 16, remoteip, remoteport ); break; case 1: /* This is an announce action */ /* Minimum udp announce packet size */ @@ -611,7 +611,7 @@ static void handle_udp4( int64 serversocket ) { outpacket[1] = inpacket[12/4]; outpacket[2] = htonl( OT_CLIENT_REQUEST_INTERVAL_RANDOM ); outpacket[3] = outpacket[4] = 0; - socket_send4( serversocket, static_outbuf, 20, remoteip, port ); + socket_send4( serversocket, static_outbuf, 20, remoteip, remoteport ); } else { torrent = add_peer_to_torrent( hash, &peer ); if( !torrent ) @@ -620,7 +620,7 @@ static void handle_udp4( int64 serversocket ) { outpacket[0] = htonl( 1 ); outpacket[1] = inpacket[12/4]; r = 8 + return_peers_for_torrent( torrent, numwant, static_outbuf + 8, 0 ); - socket_send4( serversocket, static_outbuf, r, remoteip, port ); + socket_send4( serversocket, static_outbuf, r, remoteip, remoteport ); } break; } -- cgit v1.2.3