From 33c6b0d9ecafc950f48c6c05b4d6958b943d7fa9 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Tue, 15 Dec 2009 19:39:01 +0000 Subject: [PATCH] (trunk libT) #2667 "ignore martian addresses" -- revise the tests to tr_isValidPeerAddr() base d on feedback from jch @ http://trac.transmissionbt.com/ticket/2667#comment:6 --- libtransmission/net.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/libtransmission/net.c b/libtransmission/net.c index 5abec6bee..9fe6d3b39 100644 --- a/libtransmission/net.c +++ b/libtransmission/net.c @@ -606,11 +606,9 @@ isMulticastAddress( const tr_address * addr ) } static tr_bool -isIPv4MappedOrCompatAddress( const tr_address * addr ) +isIPv4MappedAddress( const tr_address * addr ) { - return ( ( addr->type == TR_AF_INET6 ) - && ( IN6_IS_ADDR_V4MAPPED( &addr->addr.addr6 ) - || IN6_IS_ADDR_V4COMPAT( &addr->addr.addr6 ) ) ); + return ( addr->type == TR_AF_INET6 ) && IN6_IS_ADDR_V4MAPPED( &addr->addr.addr6 ); } static tr_bool @@ -663,6 +661,6 @@ tr_isValidPeerAddress( const tr_address * addr, tr_port port ) && ( tr_isAddress( addr ) ) && ( !isMulticastAddress( addr ) ) && ( !isIPv6LinkLocalAddress( addr ) ) - && ( !isIPv4MappedOrCompatAddress( addr ) ) + && ( !isIPv4MappedAddress( addr ) ) && ( !isMartianAddr( addr ) ); }