NAME
APR::SockAddr - Perl API for APR socket address structure
Synopsis
use APR::SockAddr ();
my $ip = $sock_addr->ip_get;
my $port = $sock_addr->port;
Description
APR::SockAddr
provides an access to a socket address structure fields.
Normally you'd get a socket address object, by calling:
use Apache::Connection ();
my $remote_sock_addr = $c->remote_addr;
my $local_sock_addr = $c->remote_local;
API
APR::SockAddr
provides the following functions and/or methods:
ip_get
Get the IP address of the socket
$ip = $sock_addr->ip_get();
- obj:
$sock_addr
(APR::SockAddr object
) - ret:
$ip
( string ) - since: 1.99_10
If you are familiar with how perl's Socket
works:
use Socket 'sockaddr_in';
my ($serverport, $serverip) = sockaddr_in(getpeername($local_sock));
my ($remoteport, $remoteip) = sockaddr_in(getpeername($remote_sock));
in apr-speak that'd be written as:
use APR::SockAddr ();
use Apache::Connection ();
my $serverport = $c->local_addr->port;
my $serverip = $c->local_addr->ip_get;
my $remoteport = $c->remote_addr->port;
my $remoteip = $c->remote_addr->ip_get;
port
Get the IP address of the socket
$port = $sock_addr->port();
- obj:
$sock_addr
(APR::SockAddr object
) - ret:
$port
( integer ) - since: 1.99_10
Example: see ip_get()
Unsupported API
APR::SockAddr
also provides auto-generated Perl interface for a few other methods which aren't tested at the moment and therefore their API is a subject to change. These methods will be finalized later as a need arises. If you want to rely on any of the following methods please contact the the mod_perl development mailing list so we can help each other take the steps necessary to shift the method to an officially supported API.
equal
META: Autogenerated - needs to be reviewed/completed
See if the IP addresses in two APR socket addresses are equivalent. Appropriate logic is present for comparing IPv4-mapped IPv6 addresses with IPv4 addresses.
$ret = $addr1->equal($addr2);
- obj:
$addr1
(APR::SockAddr object
) -
One of the APR socket addresses.
- arg1:
$addr2
(APR::SockAddr object
) -
The other APR socket address.
- ret:
$ret
( integer ) - since: subject to change
The return value will be non-zero if the addresses are equivalent.
See Also
Copyright
mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0.