]>
Commit | Line | Data |
---|---|---|
ac1cfefa | 1 | #!/usr/bin/perl |
70df8302 MT |
2 | ############################################################################### |
3 | # # | |
4 | # IPFire.org - A linux based firewall # | |
4e481c3a | 5 | # Copyright (C) 2008 Michael Tremer & Christian Schmidt # |
70df8302 MT |
6 | # # |
7 | # This program is free software: you can redistribute it and/or modify # | |
8 | # it under the terms of the GNU General Public License as published by # | |
9 | # the Free Software Foundation, either version 3 of the License, or # | |
10 | # (at your option) any later version. # | |
11 | # # | |
12 | # This program is distributed in the hope that it will be useful, # | |
13 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # | |
14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # | |
15 | # GNU General Public License for more details. # | |
16 | # # | |
17 | # You should have received a copy of the GNU General Public License # | |
18 | # along with this program. If not, see <http://www.gnu.org/licenses/>. # | |
19 | # # | |
20 | ############################################################################### | |
ac1cfefa MT |
21 | |
22 | use strict; | |
23 | ||
24 | # enable only the following on debugging purpose | |
25 | #use warnings; | |
26 | #use CGI::Carp 'fatalsToBrowser'; | |
27 | ||
986e08d9 | 28 | require '/var/ipfire/general-functions.pl'; |
ac1cfefa MT |
29 | require "${General::swroot}/lang.pl"; |
30 | require "${General::swroot}/header.pl"; | |
4e481c3a | 31 | require "${General::swroot}/graphs.pl"; |
ac1cfefa | 32 | |
4e481c3a CS |
33 | my %color = (); |
34 | my %mainsettings = (); | |
35 | &General::readhash("${General::swroot}/main/settings", \%mainsettings); | |
36 | &General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color); | |
ac1cfefa | 37 | |
4e481c3a | 38 | my @pings=(); |
ac1cfefa | 39 | |
4e481c3a CS |
40 | my @querry = split(/\?/,$ENV{'QUERY_STRING'}); |
41 | $querry[0] = '' unless defined $querry[0]; | |
42 | $querry[1] = 'hour' unless defined $querry[1]; | |
ac1cfefa | 43 | |
4e481c3a CS |
44 | if ( $querry[0] =~ "fwhits"){ |
45 | print "Content-type: image/png\n\n"; | |
46 | binmode(STDOUT); | |
0c5393e3 | 47 | &Graphs::updatefwhitsgraph($querry[1]); |
4e481c3a CS |
48 | }elsif ( $querry[0] ne ""){ |
49 | print "Content-type: image/png\n\n"; | |
50 | binmode(STDOUT); | |
51 | &Graphs::updatepinggraph($querry[0],$querry[1]); | |
52 | }else{ | |
ac1cfefa | 53 | |
4e481c3a CS |
54 | &Header::showhttpheaders(); |
55 | &Header::openpage($Lang::tr{'network traffic graphs others'}, 1, ''); | |
56 | &Header::openbigbox('100%', 'left'); | |
57 | ||
58 | my @pinggraphs = `ls -dA /var/log/rrd/collectd/localhost/ping/*`; | |
59 | foreach (@pinggraphs){ | |
60 | $_ =~ /(.*)\/ping\/ping-(.*)\.rrd/; | |
61 | push(@pings,$2); | |
ac1cfefa | 62 | } |
ac1cfefa | 63 | |
4e481c3a CS |
64 | foreach (@pings) { |
65 | &Header::openbox('100%', 'center', "$_ $Lang::tr{'graph'}"); | |
66 | &Graphs::makegraphbox("netother.cgi",$_,"day"); | |
67 | &Header::closebox(); | |
68 | } | |
ac1cfefa | 69 | |
4e481c3a CS |
70 | &Header::openbox('100%', 'center', "Firewall Hits $Lang::tr{'graph'}"); |
71 | &Graphs::makegraphbox("netother.cgi","fwhits","day"); | |
72 | &Header::closebox(); | |
443e9cf4 AF |
73 | |
74 | my $output = ''; | |
4507b3c2 CS |
75 | |
76 | &Header::openbox('100%', 'left', $Lang::tr{'routing table entries'}); | |
77 | $output = `/sbin/ip route show`; | |
78 | $output = &Header::cleanhtml($output,"y"); | |
79 | print "<pre>$output</pre>\n"; | |
80 | &Header::closebox(); | |
81 | ||
82 | &Header::openbox('100%', 'left', $Lang::tr{'arp table entries'}); | |
83 | $output = `/sbin/ip neigh show`; | |
84 | $output = &Header::cleanhtml($output,"y"); | |
85 | print "<pre>$output</pre>\n"; | |
86 | &Header::closebox(); | |
ac1cfefa | 87 | |
4e481c3a CS |
88 | &Header::closebigbox(); |
89 | &Header::closepage(); | |
90 | } |