]> granicus.if.org Git - transmission/commitdiff
(trunk libT) more speed tweaks from valgrind
authorCharles Kerr <charles@transmissionbt.com>
Sun, 12 Apr 2009 14:52:17 +0000 (14:52 +0000)
committerCharles Kerr <charles@transmissionbt.com>
Sun, 12 Apr 2009 14:52:17 +0000 (14:52 +0000)
libtransmission/net.c
libtransmission/peer-io.c

index 643c9235c220457e8d6354a46e00725b65e132be..c29d4371c03b875ad79855df64607bc5478dfa99 100644 (file)
@@ -180,7 +180,7 @@ tr_pton( const char * src, tr_address * dst )
 int
 tr_compareAddresses( const tr_address * a, const tr_address * b)
 {
-    int addrlen;
+    static const int sizes[2] = { sizeof(struct in_addr), sizeof(struct in6_addr) };
 
     assert( tr_isAddress( a ) );
     assert( tr_isAddress( b ) );
@@ -189,11 +189,7 @@ tr_compareAddresses( const tr_address * a, const tr_address * b)
     if( a->type != b->type )
         return a->type == TR_AF_INET ? 1 : -1;
 
-    if( a->type == TR_AF_INET ) 
-        addrlen = sizeof( struct in_addr ); 
-    else 
-        addrlen = sizeof( struct in6_addr ); 
-    return memcmp( &a->addr, &b->addr, addrlen );
+    return memcmp( &a->addr, &b->addr, sizes[a->type] );
 } 
 
 tr_bool
index 7f787524799154782b998e6fa22fef301f15858d..9877c551a6718eda467b4bef56d45ceb0affc162 100644 (file)
@@ -743,8 +743,8 @@ tr_peerIoReadBytes( tr_peerIo       * io,
             break;
 
         case PEER_ENCRYPTION_RC4:
-            evbuffer_remove( inbuf, bytes, byteCount );
-            tr_cryptoDecrypt( io->crypto, byteCount, bytes, bytes );
+            tr_cryptoDecrypt( io->crypto, byteCount, EVBUFFER_DATA(inbuf), bytes );
+            evbuffer_drain(inbuf, byteCount );
             break;
 
         default: