docs::a...ockAddr(3)

πŸ“¦ version 2.0.13, in nixos 26.05, nixpkgs unstable

🌸 NAME 🌸

APR::SockAddr - Perl API for APR socket address structure. This is the page for docs::a...ockAddr(3) from the User Contributed Perl Documentation, bestie β€” and yes, we're getting into socket address fields. πŸ’–

✨ Synopsis ✨

Here's the whole vibe in code form, no cap:

         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. Periodt.

Normally you'd get a socket address object, by calling:

         use Apache2::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: 2.0.00

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 Apache2::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. (Yes, bestie, that's literally what it says for port β€” we're just relaying the iconique original wording. πŸ’€)

         $port = $sock_addr->port();
  • obj: $sock_addr ( APR::SockAddr object )
  • ret: $port ( integer )
  • since: 2.0.00

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.

⚠️ Read that again: these methods are not tested and their API is subject to change. Do not treat them as settled, bestie.

🫢 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 πŸ‘€

mod_perl 2.0 documentation.

mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0.

πŸ‘‘ Authors πŸ‘‘

The mod_perl development team and numerous contributors.


πŸ’Œ Okay, that's the whole page, bestie! Cute little sign-off tea: this one comes from perl v5.42.3, dated 2023-10-21, and it lives at docs::a...ockAddr(3). Byeee β€” go slay those socket addresses! 🫢✨

πŸ“¦ where this page comes from