]> git.ipfire.org Git - thirdparty/opentracker.git/commitdiff
some udp scrape style cleanup
authordenis <>
Fri, 16 Mar 2007 23:04:24 +0000 (23:04 +0000)
committerdenis <>
Fri, 16 Mar 2007 23:04:24 +0000 (23:04 +0000)
opentracker.c

index 2fb6bf5a3d1be87fbc32a9aebf7716db38d44c68..9e0a18ca25140a1936976586ba60fe6dddc6d206 100644 (file)
@@ -628,31 +628,31 @@ static void handle_udp4( int64 serversocket ) {
         case 3: OT_FLAG( &peer ) |= PEER_FLAG_STOPPED; break;
         default: break;
       }
+
       if( !left )
         OT_FLAG( &peer )         |= PEER_FLAG_SEEDING;
 
+      outpacket[0] = htonl( 1 );    /* announce action */
+      outpacket[1] = inpacket[12/4];
+
       if( OT_FLAG( &peer ) & PEER_FLAG_STOPPED ) {
         /* Peer is gone. */
         remove_peer_from_torrent( hash, &peer );
 
         /* Create fake packet to satisfy parser on the other end */
-        outpacket[0] = htonl( 1 );
-        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, remoteport );
-        ot_overall_udp_successfulannounces++;
+        r = 20;
       } else {
         torrent = add_peer_to_torrent( hash, &peer );
         if( !torrent )
           return; /* XXX maybe send error */
 
-        outpacket[0] = htonl( 1 );    /* announce action */
-        outpacket[1] = inpacket[12/4];
         r = 8 + return_peers_for_torrent( torrent, numwant, static_outbuf + 8, 0 );
-        socket_send4( serversocket, static_outbuf, r, remoteip, remoteport );
-        ot_overall_udp_successfulannounces++;
       }
+
+      socket_send4( serversocket, static_outbuf, r, remoteip, remoteport );
+      ot_overall_udp_successfulannounces++;
       break;
 
     case 2: /* This is a scrape action */