File Coverage

blib/lib/Net/IP/Identifier/Plugin/Enzu.pm
Criterion Covered Total %
statement 18 18 100.0
branch n/a
condition 1 3 33.3
subroutine 6 6 100.0
pod 1 2 50.0
total 26 29 89.6


line stmt bran cond sub pod time code
1             #===============================================================================
2             # PODNAME: Net::IP::Identifier::Plugin::Enzu
3             # ABSTRACT: identify Enzu/ScalableDNS owned IP addresses
4             #
5             # AUTHOR: Reid Augustin (REID)
6             # EMAIL: reid@hellosix.com
7             # CREATED: Tue Nov 11 10:10:29 PST 2014
8             #===============================================================================
9              
10 1     1   25 use 5.008;
  1         2  
  1         44  
11 1     1   4 use strict;
  1         1  
  1         39  
12 1     1   5 use warnings;
  1         1  
  1         35  
13              
14             package Net::IP::Identifier::Plugin::Enzu;
15              
16 1     1   5 use Role::Tiny::With;
  1         6  
  1         161  
17             with qw( Net::IP::Identifier_Role );
18              
19             our $VERSION = '0.111'; # VERSION
20              
21             sub new {
22 1     1 1 3 my ($class, %opts) = @_;
23              
24 1         2 my $self = {};
25 1   33     10 bless $self, (ref $class || $class);
26              
27             # List of known Enzu/ScalableDNS IP blocks as of May 2015
28 1         6 $self->ips(
29             # 22 Network Blocks
30             '23.88.0.0/15',
31             '23.244.0.0/15',
32             '37.77.80.0/20',
33             '104.151.0.0/16',
34             '104.202.0.0/15',
35             '107.183.0.0/16',
36             '172.246.0.0/16',
37             '184.105.219.0/24',
38             '188.215.80.0/21',
39             '188.215.104.0/21',
40             '192.80.128.0/18',
41             '192.157.192.0/18',
42             '198.56.128.0/17',
43             '198.71.80.0/20',
44             '198.98.96.0/19',
45             '199.48.68.0/22',
46             '199.188.72.0/22',
47             '199.193.248.0/21',
48             '199.229.232.0/22',
49             '199.231.208.0/21',
50             '2605:f700::/32',
51             '2a00:8c40::/32',
52             );
53 1         7 return $self;
54             }
55              
56             sub name {
57 3     3 0 11 return 'Enzu';
58             }
59              
60             1;
61              
62             __END__