File Coverage

blib/lib/Acme/MetaSyntactic/services.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1             package Acme::MetaSyntactic::services;
2 1     1   113464 use strict;
  1         13  
  1         61  
3 1     1   22 use Acme::MetaSyntactic::List;
  1         14  
  1         292  
4             our @ISA = qw( Acme::MetaSyntactic::List );
5             our $VERSION = '1.008';
6             __PACKAGE__->init();
7              
8             our %Remote = (
9             source => 'http://www.insecure.org/nmap/data/nmap-services',
10             extract => sub {
11             return grep {/^\D/}
12             map { s/[#\s].*//; y!-:.+/*!_!; s/__+/_/g; $_ }
13             $_[0] =~ m!^(\S+)!gm;
14             },
15             );
16              
17             1;
18              
19             =head1 NAME
20              
21             Acme::MetaSyntactic::services - The services theme
22              
23             =head1 DESCRIPTION
24              
25             The names of the services usually found in F.
26              
27             The first list came from my Debian system and was extracted with:
28              
29             perl -lane '$_=$F[0];y/-/_/;!/#/&&!$s{$_}++&&print' /etc/services
30              
31             Which was then golfed down to:
32              
33             perl -lane '$_=$F[0];y/-/_/;!/#/&&$s{$_}++||print' /etc/services
34             perl -lane '$_=$F[0];y/-/_/;/#/||$s{$_}++||print' /etc/services
35             perl -ne 's/\s.*//;y/-/_/;/#/||$s{$_}++||print' /etc/services
36             perl -pe 's/[#\s].*//;y/-/_/;$s{$_}++&&goto LINE' /etc/services
37             perl -ne 's/[#\s].*//;y/-/_/;$s{$_}++||print' /etc/services
38              
39             For version 0.68, this was golfed a little more, by using the symbol
40             table as the hash table it is:
41              
42             perl -ne 's/[#\s].*//;y/-/_/;$$_++||print' /etc/services
43              
44             The reference list is given by the IANA, and available at
45             L.
46              
47             A bigger services lists is used by B:
48             L.
49             This list is used to update the theme.
50              
51             =head1 CONTRIBUTOR
52              
53             Philippe "BooK" Bruhat.
54              
55             =head1 CHANGES
56              
57             =over 4
58              
59             =item *
60              
61             2021-04-30 - v1.008
62              
63             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.055.
64              
65             =item *
66              
67             2019-07-29 - v1.007
68              
69             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.053.
70              
71             =item *
72              
73             2018-10-29 - v1.006
74              
75             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.052.
76              
77             =item *
78              
79             2017-06-12 - v1.005
80              
81             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.050.
82              
83             =item *
84              
85             2015-10-19 - v1.004
86              
87             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.048.
88              
89             =item *
90              
91             2015-06-08 - v1.003
92              
93             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.046.
94              
95             =item *
96              
97             2014-10-13 - v1.002
98              
99             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.043.
100              
101             =item *
102              
103             2014-08-18 - v1.001
104              
105             Changed the source link to use the services list from nmap,
106             as the I site seems to have disappeared.
107              
108             Updated from the source web site in Acme-MetaSyntactic-Themes version 1.041.
109              
110             =item *
111              
112             2012-05-07 - v1.000
113              
114             Received its own version number in Acme-MetaSyntactic-Themes version 1.000.
115              
116             =item *
117              
118             2006-07-24
119              
120             Updated with a link to the IANA list in Acme-MetaSyntactic version 0.84.
121              
122             =item *
123              
124             2006-04-03
125              
126             Updated and made automatically updatable with the I list
127             in Acme-MetaSyntactic version 0.68.
128              
129             This increased the theme size by a factor of 14.
130              
131             =item *
132              
133             2005-08-01
134              
135             Introduced in Acme-MetaSyntactic version 0.33, published on August 1, 2005.
136              
137             I got the idea for this list on IRC, on the day it was published.
138              
139             =back
140              
141             =head1 SEE ALSO
142              
143             L, L.
144              
145             =cut
146              
147             __DATA__