Only require Socket6.pm when resolving DNS names to IPv6 Addresses

git-svn-id: https://shorewall.svn.sourceforge.net/svnroot/shorewall/trunk@8993 fbd18981-670d-0410-9b5c-8dc0c1a9a2bb
This commit is contained in:
teastep
2008-12-11 18:48:37 +00:00
parent 12d987cd19
commit b75b9693b0
2 changed files with 5 additions and 5 deletions

View File

@ -26,7 +26,6 @@
# #
package Shorewall::IPAddrs; package Shorewall::IPAddrs;
require Exporter; require Exporter;
use Socket6;
use Shorewall::Config qw( :DEFAULT split_list require_capability in_hex8 F_IPV4 F_IPV6 ); use Shorewall::Config qw( :DEFAULT split_list require_capability in_hex8 F_IPV4 F_IPV6 );
use strict; use strict;
@ -507,13 +506,14 @@ sub validate_6address( $$ ) {
my @addrs = ( $addr ); my @addrs = ( $addr );
unless ( valid_6address $addr ) { unless ( valid_6address $addr ) {
require Socket6;
fatal_error "Invalid IPv6 Address ($addr)" unless $allow_name; fatal_error "Invalid IPv6 Address ($addr)" unless $allow_name;
fatal_error "Unknown Host ($addr)" unless (@addrs = gethostbyname2 $addr, AF_INET6()); fatal_error "Unknown Host ($addr)" unless (@addrs = Socket6::gethostbyname2( $addr, Socket6::AF_INET6()));
if ( defined wantarray ) { if ( defined wantarray ) {
shift @addrs for (1..4); shift @addrs for (1..4);
for ( @addrs ) { for ( @addrs ) {
$_ = inet_ntop AF_INET6(), $_; $_ = Socket6::inet_ntop( Socket6::AF_INET6(), $_ );
} }
} }
} }

View File

@ -1,5 +1,5 @@
# #
# Shorewall-perl 4.2 -- /usr/share/shorewall-perl/Shorewall/Zones.pm # Shorewall-perl 4.4 -- /usr/share/shorewall-perl/Shorewall/Zones.pm
# #
# This program is under GPL [http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt] # This program is under GPL [http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt]
# #
@ -66,7 +66,7 @@ our @EXPORT = qw( NOTHING
); );
our @EXPORT_OK = qw( initialize ); our @EXPORT_OK = qw( initialize );
our $VERSION = 4.1.5; our $VERSION = 4.3.1;
# #
# IPSEC Option types # IPSEC Option types