|
Server : LiteSpeed System : Linux srv104790275 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64 User : dewac4139 ( 1077) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/lib/x86_64-linux-gnu/perl5/5.34/auto/NetAddr/IP/ |
Upload File : |
# NOTE: Derived from blib/lib/NetAddr/IP.pm.
# Changes made here will be lost when autosplit is run again.
# See AutoSplit.pm.
package NetAddr::IP;
#line 1421 "blib/lib/NetAddr/IP.pm (autosplit into blib/lib/auto/NetAddr/IP/re.al)"
sub re ($)
{
return &re6 unless isIPv4($_[0]->{addr});
my $self = shift->network; # Insure a "zero" host part
my ($addr, $mlen) = ($self->addr, $self->masklen);
my @o = split('\.', $addr, 4);
my $octet= '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
my @r = @o;
my $d;
# for my $i (0 .. $#o)
# {
# warn "# $self: $r[$i] == $o[$i]\n";
# }
if ($mlen != 32)
{
if ($mlen > 24)
{
$d = 2 ** (32 - $mlen) - 1;
$r[3] = '(?:' . join('|', ($o[3]..$o[3] + $d)) . ')';
}
else
{
$r[3] = $octet;
if ($mlen > 16)
{
$d = 2 ** (24 - $mlen) - 1;
$r[2] = '(?:' . join('|', ($o[2]..$o[2] + $d)) . ')';
}
else
{
$r[2] = $octet;
if ($mlen > 8)
{
$d = 2 ** (16 - $mlen) - 1;
$r[1] = '(?:' . join('|', ($o[1]..$o[1] + $d)) . ')';
}
else
{
$r[1] = $octet;
if ($mlen > 0)
{
$d = 2 ** (8 - $mlen) - 1;
$r[0] = '(?:' . join('|', ($o[0] .. $o[0] + $d)) . ')';
}
else { $r[0] = $octet; }
}
}
}
}
### no digit before nor after (look-behind, look-ahead)
return "(?:(?<![0-9])$r[0]\\.$r[1]\\.$r[2]\\.$r[3](?![0-9]))";
}
# end of NetAddr::IP::re
1;