NAME¶
Paranoid::Network::Socket - Socket wrapper for seemless IPv6 support
VERSION¶
$Id: Socket.pm,v 0.3 2012/05/29 21:38:37 acorliss Exp $
SYNOPSIS¶
# use Socket; # no longer needed
use Paranoid::Network::Socket;
use Paranoid::Network::Socket qw(:crlf);
$ipv6_enabled = has_ipv6();
DESCRIPTION¶
This module is a wrapper for
Socket(3) and
Socket6(3), and is
meant to be used in lieu of using those packages directly. Doing so removes
any of the version dependent support issues on Perl and its bundled
Socket(3) where IPv6 is concerned.
Starting in Perl 5.12 the beginnings of IPv6 support emerged in the bundled
Socket(3) module, but full IPv6 support didn't arrive until 5.14. Prior
versions of Perl required the use of the external
Socket6(3) module
(available on CPAN).
With this module IPv6 support, if available, is brought in automatically at
runtime, regardless of where that support is provided. It also makes a default
export of
inet_pton and
inet_ntop, something that
Socket(3) only does on request.
Finally, this module provides a
has_ipv6 function which will return
whether your Perl has full IPv6 support. Full support is determined by the
presence of
sockaddr_in6.
All of the regular tag sets provided by either
Socket modules are
supported by this module.
SUBROUTINES/METHODS¶
has_ipv6¶
$ipv6_enabled = has_ipv6();
Returns a boolean value denoting whether or not this module has full IPv6
support.
DEPENDENCIES¶
- o
- Socket
- o
- Socket6 (optional)
BUGS AND LIMITATIONS¶
AUTHOR¶
Arthur Corliss (corliss@digitalmages.com)
LICENSE AND COPYRIGHT¶
This software is licensed under the same terms as Perl, itself. Please see
http://dev.perl.org/licenses/ for more information.
(c) 2005, Arthur Corliss (corliss@digitalmages.com)