328c328,339 < --- > > # +++ patched by GwenDragon 2005-06-14 > sub is_noproxy { > my $dom = shift; > > my $np = $ENV{'NO_PROXY'} || ''; > my ( @nop ) = split /,/,$np; > > return grep(/$dom/, @nop); > } > # +++ patched by GwenDragon 2005-06-14 > 344,347c355 < $port || die("no port given for proxy server $proxy"); < < $self->SUPER::connect($port, $iaddr) < || die("proxy connect to $host:$port failed: $!"); --- > $port || die("no port given for proxy server $proxy"); 351c359,375 < $peer_addr || die("no peer addr given"); --- > $peer_addr || die("no peer addr given"); > > # +++ patched by GwenDragon 2005-06-14 > if (is_noproxy($peer_addr)) { > $iaddr = gethostbyname($peer_addr); > $iaddr || die("can't resolve $peer_addr, $!"); > $self->SUPER::connect($peer_port, $iaddr) #try connection > || die("connect to $peer_addr:$peer_port failed: $!"); > return 1; > } > else { > # +++ patched by GwenDragon 2005-06-14 > $self->SUPER::connect($port, $iaddr) > || die("proxy connect to $host:$port failed: $!"); > # +++ patched by GwenDragon 2005-06-14 > } > # +++ patched by GwenDragon 2005-06-14