diff options
-rwxr-xr-x | Porting/Maintainers.pl | 2 | ||||
-rw-r--r-- | cpan/Socket/Socket.pm | 4 | ||||
-rw-r--r-- | cpan/Socket/Socket.xs | 10 | ||||
-rw-r--r-- | pod/perldelta.pod | 2 |
4 files changed, 9 insertions, 9 deletions
diff --git a/Porting/Maintainers.pl b/Porting/Maintainers.pl index bef1e74354..1b1810ec3a 100755 --- a/Porting/Maintainers.pl +++ b/Porting/Maintainers.pl @@ -1621,7 +1621,7 @@ use File::Glob qw(:case); 'Socket' => { 'MAINTAINER' => 'pevans', - 'DISTRIBUTION' => 'PEVANS/Socket-2.000.tar.gz', + 'DISTRIBUTION' => 'PEVANS/Socket-2.001.tar.gz', 'FILES' => q[cpan/Socket], 'UPSTREAM' => 'cpan', }, diff --git a/cpan/Socket/Socket.pm b/cpan/Socket/Socket.pm index 3b8ea73eed..e12d8517de 100644 --- a/cpan/Socket/Socket.pm +++ b/cpan/Socket/Socket.pm @@ -3,7 +3,7 @@ package Socket; use strict; { use 5.006001; } -our $VERSION = '2.000'; +our $VERSION = '2.001'; =head1 NAME @@ -286,7 +286,7 @@ code should use getnameinfo() or inet_ntop() instead for IPv6 support. =head2 $address = inet_pton $family, $string Takes an address family (such as C<AF_INET> or C<AF_INET6>) and a string -giving the name of a host, or a textual representation of an IP address and +containing a textual representation of an address in that family and translates that to an packed binary address structure. See also getaddrinfo() for a more powerful and flexible function to look up diff --git a/cpan/Socket/Socket.xs b/cpan/Socket/Socket.xs index 3999c4b7ce..5ddd0e9d8e 100644 --- a/cpan/Socket/Socket.xs +++ b/cpan/Socket/Socket.xs @@ -444,13 +444,13 @@ static void xs_getaddrinfo(pTHX_ CV *cv) hintshash = (HV*)SvRV(hints); - if((valp = hv_fetch(hintshash, "flags", 5, 0)) != NULL) + if((valp = hv_fetch(hintshash, "flags", 5, 0)) != NULL && SvOK(*valp)) hints_s.ai_flags = SvIV(*valp); - if((valp = hv_fetch(hintshash, "family", 6, 0)) != NULL) + if((valp = hv_fetch(hintshash, "family", 6, 0)) != NULL && SvOK(*valp)) hints_s.ai_family = SvIV(*valp); - if((valp = hv_fetch(hintshash, "socktype", 8, 0)) != NULL) + if((valp = hv_fetch(hintshash, "socktype", 8, 0)) != NULL && SvOK(*valp)) hints_s.ai_socktype = SvIV(*valp); - if((valp = hv_fetch(hintshash, "protocol", 8, 0)) != NULL) + if((valp = hv_fetch(hintshash, "protocol", 8, 0)) != NULL && SvOK(*valp)) hints_s.ai_protocol = SvIV(*valp); } @@ -712,7 +712,7 @@ unpack_sockaddr_un(sun_sv) getpeername and getsockname is not equal to sizeof(addr). */ if (sockaddrlen < sizeof(addr)) { Copy(sun_ad, &addr, sockaddrlen, char); - Zero(&addr+sockaddrlen, sizeof(addr)-sockaddrlen, char); + Zero(((char*)&addr) + sockaddrlen, sizeof(addr) - sockaddrlen, char); } else { Copy(sun_ad, &addr, sizeof(addr), char); } diff --git a/pod/perldelta.pod b/pod/perldelta.pod index c809916a42..f8691150b3 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -1403,7 +1403,7 @@ instead of 0. On most platforms C<TCSANOW> is defined to be 0, but on some =item * -L<Socket> has been upgraded from version 1.94 to 2.000. +L<Socket> has been upgraded from version 1.94 to 2.001. It has new functions and constants for handling IPv6 sockets: |