GIF87a;
# 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 1274 "blib/lib/NetAddr/IP.pm (autosplit into blib/lib/auto/NetAddr/IP/coalesce.al)" sub coalesce { my $masklen = shift; if (ref $masklen && ref $masklen eq __PACKAGE__ ) { # if called as a method push @_,$masklen; $masklen = shift; } my $number = shift; # Addresses are at @_ return [] unless @_; my %ret = (); my $type = $_[0]->{isv6}; return [] unless defined $type; for my $ip (@_) { return [] unless $ip->{isv6} == $type; $type = $ip->{isv6}; my $n = NetAddr::IP->new($ip->addr . '/' . $masklen)->network; if ($ip->masklen > $masklen) { $ret{$n} += $ip->num + $NetAddr::IP::Lite::Old_nth; } } my @ret = (); # Add to @ret any arguments with netmasks longer than our argument for my $c (sort { $a->masklen <=> $b->masklen } grep { $_->masklen <= $masklen } @_) { next if grep { $_->contains($c) } @ret; push @ret, $c->network; } # Now add to @ret all the subnets with more than $number hits for my $c (map { new NetAddr::IP $_ } grep { $ret{$_} >= $number } keys %ret) { next if grep { $_->contains($c) } @ret; push @ret, $c; } return \@ret; } # end of NetAddr::IP::coalesce 1;
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
InetBase | Folder | 0755 |
|
|
Util | Folder | 0755 |
|
|
UtilPP | Folder | 0755 |
|
|
.packlist | File | 3.61 KB | 0644 |
|
_compV6.al | File | 1 KB | 0444 |
|
_compact_v6.al | File | 1.01 KB | 0444 |
|
_splitplan.al | File | 2.91 KB | 0444 |
|
_splitref.al | File | 936 B | 0444 |
|
autosplit.ix | File | 388 B | 0444 |
|
canon.al | File | 362 B | 0444 |
|
coalesce.al | File | 1.35 KB | 0444 |
|
compactref.al | File | 1.67 KB | 0444 |
|
do_prefix.al | File | 891 B | 0444 |
|
hostenum.al | File | 329 B | 0444 |
|
mod_version.al | File | 427 B | 0444 |
|
nprefix.al | File | 603 B | 0444 |
|
prefix.al | File | 605 B | 0444 |
|
re.al | File | 1.4 KB | 0444 |
|
re6.al | File | 1.83 KB | 0444 |
|
short.al | File | 500 B | 0444 |
|
wildcard.al | File | 485 B | 0444 |
|