├── html ├── js │ ├── menu.js │ ├── global.js │ ├── alerting.js │ ├── profileadmin.js │ └── ColorPicker2.js ├── icons │ ├── ok.png │ ├── Error.png │ ├── close.png │ ├── edit.png │ ├── help.png │ ├── minus.png │ ├── plus.png │ ├── save.png │ ├── shade.gif │ ├── shade.png │ ├── space.png │ ├── trash.png │ ├── cancel.png │ ├── spyglas.png │ ├── trigger.png │ ├── EmptyGraph.png │ ├── ErrorGraph.png │ ├── invisible.png │ ├── progress.png │ ├── cursor-line.png │ ├── cursor-start.png │ ├── cursor-stop.png │ ├── shadeactive.png │ ├── arrow.blue.down.png │ ├── arrow.blue.right.png │ ├── arrow.yellow.down.png │ └── arrow.yellow.right.png ├── css │ ├── lookup.css │ ├── detail.css │ ├── profileadmin.css │ ├── alerting.css │ └── nfsen.css ├── lookup.php ├── rrdgraph.php ├── pic.php ├── colour_picker.html ├── overview.php ├── navigator.php └── process.php ├── plugins ├── backend │ ├── smily.jpg │ └── demoplugin.pm ├── frontend │ └── demoplugin.php └── PluginTemplate.pm ├── Installation_CentOS7 ├── contrib └── PortTracker │ ├── INSTALL │ └── PortTracker.pm ├── BSD-license.txt ├── README.plugins ├── libexec ├── Nfsync.pm ├── Log.pm ├── Lookup.pm ├── Notification.pm ├── NfSenSim.pm ├── NfConf.pm ├── Nfsources.pm └── NfSenRC.pm ├── bin ├── testPlugin └── RebuildHierarchy.pl ├── README ├── ChangeLog ├── installer-items ├── RRDconvertv1.pm └── CopyRecursive.pm └── etc └── nfsen-dist.conf /html/js/menu.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/js/menu.js -------------------------------------------------------------------------------- /html/icons/ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/ok.png -------------------------------------------------------------------------------- /html/icons/Error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/Error.png -------------------------------------------------------------------------------- /html/icons/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/close.png -------------------------------------------------------------------------------- /html/icons/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/edit.png -------------------------------------------------------------------------------- /html/icons/help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/help.png -------------------------------------------------------------------------------- /html/icons/minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/minus.png -------------------------------------------------------------------------------- /html/icons/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/plus.png -------------------------------------------------------------------------------- /html/icons/save.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/save.png -------------------------------------------------------------------------------- /html/icons/shade.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/shade.gif -------------------------------------------------------------------------------- /html/icons/shade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/shade.png -------------------------------------------------------------------------------- /html/icons/space.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/space.png -------------------------------------------------------------------------------- /html/icons/trash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/trash.png -------------------------------------------------------------------------------- /html/icons/cancel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/cancel.png -------------------------------------------------------------------------------- /html/icons/spyglas.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/spyglas.png -------------------------------------------------------------------------------- /html/icons/trigger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/trigger.png -------------------------------------------------------------------------------- /html/icons/EmptyGraph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/EmptyGraph.png -------------------------------------------------------------------------------- /html/icons/ErrorGraph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/ErrorGraph.png -------------------------------------------------------------------------------- /html/icons/invisible.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/invisible.png -------------------------------------------------------------------------------- /html/icons/progress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/progress.png -------------------------------------------------------------------------------- /plugins/backend/smily.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/plugins/backend/smily.jpg -------------------------------------------------------------------------------- /html/icons/cursor-line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/cursor-line.png -------------------------------------------------------------------------------- /html/icons/cursor-start.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/cursor-start.png -------------------------------------------------------------------------------- /html/icons/cursor-stop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/cursor-stop.png -------------------------------------------------------------------------------- /html/icons/shadeactive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/shadeactive.png -------------------------------------------------------------------------------- /html/icons/arrow.blue.down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/arrow.blue.down.png -------------------------------------------------------------------------------- /html/icons/arrow.blue.right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/arrow.blue.right.png -------------------------------------------------------------------------------- /html/icons/arrow.yellow.down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/arrow.yellow.down.png -------------------------------------------------------------------------------- /html/icons/arrow.yellow.right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/p-alik/nfsen/HEAD/html/icons/arrow.yellow.right.png -------------------------------------------------------------------------------- /Installation_CentOS7: -------------------------------------------------------------------------------- 1 | For complete instructions on how to get NFDUMP and NFSEN up and running on a new (minimal install) CentOS7 server go to the following GitHub Repository: 2 | 3 | https://github.com/paidegua/nfsen_on_centos7 4 | -------------------------------------------------------------------------------- /html/css/lookup.css: -------------------------------------------------------------------------------- 1 | /* css styles for lookup box content */ 2 | 3 | body { 4 | background-color:lightyellow; 5 | font-family: Verdana; 6 | font-size: 12px; 7 | font-weight: normal; 8 | } 9 | 10 | pre { 11 | font-family: Courier; 12 | font-size: 12px; 13 | font-weight: normal; 14 | } 15 | 16 | h3 { 17 | font-family: Verdana; 18 | font-size: 12px; 19 | font-weight: bold; 20 | margin:0px; 21 | margin-top:10px; 22 | margin-bottom:6px; 23 | } 24 | -------------------------------------------------------------------------------- /html/lookup.php: -------------------------------------------------------------------------------- 1 | 44 | 45 | 46 |
47 |
\n";
68 |
69 | } // End of demoplugin_Run
70 |
71 |
72 | ?>
73 |
--------------------------------------------------------------------------------
/html/css/profileadmin.css:
--------------------------------------------------------------------------------
1 |
2 | CAPTION.STATTABLE {
3 | background-color:#EEEEEE;
4 | color:black;
5 | border-style:solid;
6 | border-width:2px;
7 | border-color:black;
8 | }
9 |
10 | TABLE.STATTABLE {
11 | font-family:arial;
12 | font-size:10pt;
13 | background-color:#EEEEEE;
14 | width:460px;
15 | border-style:solid;
16 | border-color:black;
17 | border-width:2px;
18 | }
19 |
20 | TH.STATTABLE {
21 | font-size:12pt;
22 | color:black;
23 | text-align:left;
24 | vertical-align: top;
25 | }
26 |
27 | TR.STATTABLE {
28 | }
29 |
30 | TD.STATTABLE {
31 | font-size:10pt;
32 | background-color:#CCCCCC;
33 | color:black;
34 | border-style:solid;
35 | border-width:1px;
36 | font-size:10pt;
37 | font-weight:bold;
38 | text-align:left;
39 | }
40 |
41 | TD.MYVALUE {
42 | font-size:10pt;
43 | background-color:#FFFFFF;
44 | color:black;
45 | border-style:solid;
46 | border-width:1px;
47 | font-size:10pt;
48 | text-align:left;
49 | }
50 |
51 | TD.CHANNELTITLE {
52 | font-size:12pt;
53 | background-color:#EEEEEE;
54 | color:black;
55 | border-style:solid;
56 | border-width:0px;
57 | font-weight:bold;
58 | text-align:left;
59 | }
60 |
61 |
62 | CAPTION.CHANNELLIST {
63 | background-color:#EEEEEE;
64 | color:black;
65 | border-style:solid;
66 | border-width:2px;
67 | border-color:black;
68 | }
69 |
70 | TABLE.CHANNELLIST {
71 | font-family:arial;
72 | font-size:10pt;
73 | background-color:#EEEEEE;
74 | width:100%;
75 | border-style:solid;
76 | border-color:black;
77 | border-width:2px;
78 | }
79 |
80 | TH.CHANNELLIST {
81 | font-size:12pt;
82 | color:black;
83 | text-align:left;
84 | vertical-align: top;
85 | }
86 |
87 | TR.CHANNELLIST {
88 | }
89 |
90 | TD.CHANNELLIST {
91 | font-size:10pt;
92 | background-color:#AAAAAA;
93 | color:black;
94 | border-style:solid;
95 | border-width:1px;
96 | font-size:10pt;
97 | font-weight:bold;
98 | text-align:left;
99 | }
100 |
101 | .helptext {
102 | display:inline;
103 | font-size:10pt;
104 | font-weight:normal;
105 | margin-top:5px;
106 | margin-left:0px;
107 | background-color:#A5FF89;
108 | }
109 |
110 | .hrule {
111 | width:100%;
112 | size:1;
113 | text-align:left;
114 | }
115 |
116 | .progressbar {
117 | text-align:left;
118 | font-size:9pt;
119 | background-image: url(../icons/progress.png);
120 | background-repeat: repeat-x;
121 | }
122 |
123 |
--------------------------------------------------------------------------------
/libexec/Nfsync.pm:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2011, Peter Haag
3 | # All rights reserved.
4 | #
5 | # Redistribution and use in source and binary forms, with or without
6 | # modification, are permitted provided that the following conditions are met:
7 | #
8 | # * Redistributions of source code must retain the above copyright notice,
9 | # this list of conditions and the following disclaimer.
10 | # * Redistributions in binary form must reproduce the above copyright notice,
11 | # this list of conditions and the following disclaimer in the documentation
12 | # and/or other materials provided with the distribution.
13 | # * Neither the name of the author nor the names of its contributors may be
14 | # used to endorse or promote products derived from this software without
15 | # specific prior written permission.
16 | #
17 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 | # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 | # POSSIBILITY OF SUCH DAMAGE.
28 | #
29 | # $Author: peter $
30 | #
31 | # $Id: Nfsync.pm 27 2011-12-29 12:53:29Z peter $
32 | #
33 | # $LastChangedRevision: 27 $
34 |
35 | package Nfsync;
36 |
37 | use strict;
38 | use warnings;
39 |
40 | use IPC::SysV qw(IPC_CREAT);
41 | use IPC::SysV qw(IPC_NOWAIT);
42 | use IPC::SysV qw(IPC_PRIVATE);
43 | use IPC::SysV qw(IPC_RMID);
44 |
45 | my $semlock;
46 |
47 | sub seminit {
48 | $semlock = semget(IPC_PRIVATE, 1, 0600 | IPC_CREAT ) || die "Can not get semaphore: $!";
49 | semsignal($semlock);
50 | } # End of seminit
51 |
52 | sub semclean {
53 | semctl($semlock, 0, &IPC_RMID, 0);
54 | } # End of semclean
55 |
56 | sub semwait {
57 | my $sem=$semlock;
58 | semop($sem, pack("s3", 0, -1, 0)) || warn "semopt(): $!\n";
59 | } # End of semwait
60 |
61 | sub semnowait {
62 | my $sem=$semlock;
63 | return semop($sem, pack("s3", 0, -1, IPC_NOWAIT));
64 | } # End of semnowait
65 |
66 | sub semsignal {
67 | my $sem=$semlock;
68 | semop($sem, pack("s3", 0, +1, 0)) || warn "semopt(): $!\n";
69 | } # End of semsignal
70 |
71 | 1;
72 |
--------------------------------------------------------------------------------
/libexec/Log.pm:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2011, Peter Haag
3 | # All rights reserved.
4 | #
5 | # Redistribution and use in source and binary forms, with or without
6 | # modification, are permitted provided that the following conditions are met:
7 | #
8 | # * Redistributions of source code must retain the above copyright notice,
9 | # this list of conditions and the following disclaimer.
10 | # * Redistributions in binary form must reproduce the above copyright notice,
11 | # this list of conditions and the following disclaimer in the documentation
12 | # and/or other materials provided with the distribution.
13 | # * Neither the name of the author nor the names of its contributors may be
14 | # used to endorse or promote products derived from this software without
15 | # specific prior written permission.
16 | #
17 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25 | # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26 | # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 | # POSSIBILITY OF SUCH DAMAGE.
28 | #
29 | # $Author: peter $
30 | #
31 | # $Id: Log.pm 27 2011-12-29 12:53:29Z peter $
32 | #
33 | # $LastChangedRevision: 27 $
34 |
35 | package Log;
36 |
37 | use strict;
38 | use warnings;
39 |
40 | use Sys::Syslog;
41 |
42 | use NfConf;
43 |
44 | our $ERROR;
45 |
46 | my $log_book = undef;
47 |
48 | sub LogInit {
49 |
50 | Sys::Syslog::setlogsock($NfConf::LogSocket) if defined $NfConf::LogSocket;
51 | openlog("nfsen", 'cons,pid', $NfConf::syslog_facility);
52 |
53 | } # End of LogInit
54 |
55 | sub LogEnd {
56 | closelog();
57 |
58 | } # End of LogEnd
59 |
60 | sub StartLogBook {
61 | $log_book = shift;
62 | } # End of SetLogBook
63 |
64 | sub EndLogBook {
65 | $log_book = undef;
66 | } # End of EndLogBook
67 |
68 | sub TIEHANDLE {
69 | my $class = shift;
70 | my $name = shift;
71 |
72 | my %self;
73 | $self{'facility'} = $NfConf::syslog_facility;
74 |
75 | bless \%self, $class;
76 |
77 | } # End of TIEHANDLE
78 |
79 | sub PRINT {
80 | my $self = shift;
81 | my $msg = join '', @_;
82 |
83 | if ( defined $log_book ) {
84 | push @{$log_book}, $msg;
85 | }
86 | syslog('warning', "$msg");
87 | }
88 |
89 | sub UNTIE {
90 | my $self = shift;
91 |
92 | } # End of UNTIE
93 |
94 | 1;
95 |
--------------------------------------------------------------------------------
/plugins/PluginTemplate.pm:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 | #
3 | # Copyright (c) 2004, SWITCH - Teleinformatikdienste fuer Lehre und Forschung
4 | # All rights reserved.
5 | #
6 | # Redistribution and use in source and binary forms, with or without
7 | # modification, are permitted provided that the following conditions are met:
8 | #
9 | # * Redistributions of source code must retain the above copyright notice,
10 | # this list of conditions and the following disclaimer.
11 | # * Redistributions in binary form must reproduce the above copyright notice,
12 | # this list of conditions and the following disclaimer in the documentation
13 | # and/or other materials provided with the distribution.
14 | # * Neither the name of SWITCH nor the names of its contributors may be
15 | # used to endorse or promote products derived from this software without
16 | # specific prior written permission.
17 | #
18 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
22 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26 | # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27 | # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28 | # POSSIBILITY OF SUCH DAMAGE.
29 | #
30 | # $Author: peter $
31 | #
32 | # $Id: PluginTemplate.pm 27 2011-12-29 12:53:29Z peter $
33 | #
34 | # $LastChangedRevision: 27 $
35 |
36 | # Template for NfSen plugin
37 | # See the demoplugin for an working example
38 | package PluginTemplate;
39 |
40 | use strict;
41 | use NfSen;
42 | use NfConf;
43 |
44 | #
45 | # The plugin may send any messages to syslog
46 | # Do not initialize syslog, as this is done by
47 | # the main process nfsend
48 | use Sys::Syslog;
49 |
50 | sub run {
51 | my $profile = shift;
52 | my $timeslot = shift;
53 |
54 | syslog('debug', "plugin run: Profile: $profile, Time: $timeslot");
55 |
56 | #
57 | # Do something and process the output and notify the duty team
58 | # ....
59 |
60 | }
61 |
62 | sub Init {
63 | syslog("info", "plugin: Init");
64 |
65 | # Init some vars
66 | return 1;
67 | }
68 |
69 | sub BEGIN {
70 | syslog("info", "plugin BEGIN");
71 | # Standard BEGIN Perl function - See Perl documentation
72 | # not used here
73 | }
74 |
75 | sub END {
76 | syslog("info", "plugin END");
77 | # Standard END Perl function - See Perl documentation
78 | # not used here
79 | }
80 |
81 | 1;
82 |
--------------------------------------------------------------------------------
/html/css/alerting.css:
--------------------------------------------------------------------------------
1 |
2 | CAPTION.ALERTTABLE {
3 | background-color:#EEEEEE;
4 | color:black;
5 | border-style:solid;
6 | border-width:2px;
7 | border-color:black;
8 | }
9 |
10 | TABLE.ALERTTABLE {
11 | font-family:arial;
12 | font-size:10pt;
13 | border-style:solid;
14 | border-color:black;
15 | border-width:2px;
16 | }
17 |
18 | TH.ALERTTABLE {
19 | font-size:12pt;
20 | color:black;
21 | text-align:left;
22 | vertical-align: top;
23 | padding-left: 5px;
24 | background-color:#EEEEEE;
25 | }
26 |
27 | TR.ALERTTABLE {
28 | }
29 |
30 | TD.ALERTTABLE {
31 | font-size:10pt;
32 | background-color:#CCCCCC;
33 | color:black;
34 | border-style:solid;
35 | border-width:1px;
36 | font-size:10pt;
37 | font-weight:bold;
38 | text-align:left;
39 | }
40 |
41 | TD.MYVALUE {
42 | font-size:10pt;
43 | background-color:#FFFFFF;
44 | color:black;
45 | border-style:solid;
46 | border-width:0px;
47 | font-size:10pt;
48 | text-align:left;
49 | padding-top: 4px;
50 | padding-bottom: 4px;
51 | padding-left: 5px;
52 | padding-right: 5px;
53 | }
54 |
55 | TD.ALERTTITLE {
56 | font-size:12pt;
57 | background-color:#EEEEEE;
58 | color:black;
59 | border-style:solid;
60 | border-width:0px;
61 | font-weight:bold;
62 | text-align:left;
63 | }
64 |
65 |
66 | CAPTION.ALERTLIST {
67 | background-color:#EEEEEE;
68 | color:black;
69 | border-style:solid;
70 | border-width:2px;
71 | border-color:black;
72 | }
73 |
74 | TABLE.ALERTLIST {
75 | font-family:arial;
76 | font-size:10pt;
77 | background-color:#EEEEEE;
78 | border-style:solid;
79 | border-color:black;
80 | border-width:2px;
81 | }
82 |
83 | TH.ALERTLIST {
84 | font-size:12pt;
85 | color:black;
86 | text-align:left;
87 | vertical-align: top;
88 | }
89 |
90 | TR.ALERTLIST {
91 | }
92 |
93 | TD.ALERTLIST {
94 | font-size:10pt;
95 | background-color:#AAAAAA;
96 | color:black;
97 | border-style:solid;
98 | border-width:1px;
99 | font-size:10pt;
100 | font-weight:bold;
101 | text-align:left;
102 | padding-left: 5px;
103 | padding-right: 5px;
104 | }
105 |
106 | table.ALERTDETAILS {
107 | font: normal 75%/150% Verdana, Arial, Helvetica, sans-serif;
108 | border-width: 1px 1px 1px 1px;
109 | border-spacing: 2px;
110 | border-style: outset outset outset outset;
111 | border-color: green green green green;
112 | border-collapse: collapse;
113 | background-color: white;
114 | }
115 | table.ALERTDETAILS th {
116 | border-width: 1px 1px 1px 1px;
117 | padding: 2px 4px 2px 4px;
118 | border-style: dotted dotted dotted dotted;
119 | border-color: gray gray gray gray;
120 | background-color: rgb(255, 255, 240);
121 | }
122 | table.ALERTDETAILS td {
123 | border-width: 1px 1px 1px 1px;
124 | padding: 2px 4px 2px 4px;
125 | border-style: dotted dotted dotted dotted;
126 | border-color: gray gray gray gray;
127 | background-color: rgb(255, 255, 240);
128 | }
129 |
130 |
--------------------------------------------------------------------------------
/libexec/Lookup.pm:
--------------------------------------------------------------------------------
1 | #!%%PERL%%
2 | #
3 | # Copyright (c) 2004, SWITCH - Teleinformatikdienste fuer Lehre und Forschung
4 | # All rights reserved.
5 | #
6 | # Redistribution and use in source and binary forms, with or without
7 | # modification, are permitted provided that the following conditions are met:
8 | #
9 | # * Redistributions of source code must retain the above copyright notice,
10 | # this list of conditions and the following disclaimer.
11 | # * Redistributions in binary form must reproduce the above copyright notice,
12 | # this list of conditions and the following disclaimer in the documentation
13 | # and/or other materials provided with the distribution.
14 | # * Neither the name of SWITCH nor the names of its contributors may be
15 | # used to endorse or promote products derived from this software without
16 | # specific prior written permission.
17 | #
18 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 | # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
22 | # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 | # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 | # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 | # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26 | # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27 | # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28 | # POSSIBILITY OF SUCH DAMAGE.
29 | #
30 | # $Author: peter $
31 | #
32 | # $Id: Lookup.pm 61 2014-04-03 09:33:20Z peter $
33 | #
34 | # $LastChangedRevision: 61 $
35 |
36 | package Lookup;
37 |
38 | use strict;
39 | use warnings;
40 | use Socket;
41 | use IO::Socket::INET;
42 | use Socket;
43 | use AbuseWhois;
44 | use Log;
45 |
46 | sub Lookup {
47 | my $socket = shift;
48 | my $opts = shift;
49 |
50 | if ( !exists $$opts{'lookup'} ) {
51 | print $socket "|
14 | Current Colour |