]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - html/cgi-bin/logs.cgi/firewalllogcountry.dat
Merge remote-tracking branch 'mfischer/python' into next
[people/pmueller/ipfire-2.x.git] / html / cgi-bin / logs.cgi / firewalllogcountry.dat
index 198e239de8a78ffb301cf766e37ca4620d506a89..29c0842188b8974e1e08b3812e65be2bb18bfa52 100644 (file)
@@ -19,6 +19,7 @@ use Getopt::Std;
 #use CGI::Carp 'fatalsToBrowser';
 
 require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/geoip-functions.pl";
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -283,12 +284,14 @@ END
 &Header::openbox('100%', 'left', 'Firewall Logs');
 print "<p><b>$Lang::tr{'firewall hits'} $longmonthstr $daystr: $lines</b></p>";
 
+my $red_interface = &General::get_red_interface();
 my $linesjc = 0;
 my %tabjc;
 my $gi = Geo::IP::PurePerl->new();
 
 if ($pienumber == -1 || $pienumber > $lines || $sortcolumn == 2) { $pienumber = $lines; };
 $lines = 0;
+
 foreach $_ (@log)
 {
   /^... (..) (..:..:..) [\w\-]+ kernel:(.*)(IN=.*)$/;
@@ -296,7 +299,7 @@ foreach $_ (@log)
   $packet =~ /IN=(\w+)/;       my $iface=$1; if ( $1 =~ /2./ ){ $iface="";}
   $packet =~ /SRC=([\d\.]+)/;  my $srcaddr=$1;
 
-  if($iface eq 'red0') {
+  if($iface eq $red_interface) {
     if($srcaddr ne '') {
       my $ccode = $gi->country_code_by_name($srcaddr);
       if( $ccode eq '') {
@@ -408,16 +411,16 @@ if ($showpie != 2 && $pienumber <= 50 && $pienumber != 0) {
         $mygraph->set( dclrs => [ "$color{'color1'}" , "$color{'color2'}" , "$color{'color3'}" , "$color{'color4'}" , "$color{'color5'}" , "$color{'color6'}" , "$color{'color7'}" , "$color{'color8'}" , "$color{'color9'}" , "$color{'color10'}" ] );
         my $myimage = $mygraph->plot(\@data) or die $mygraph->error;
 
-        my @filenames = glob("/srv/web/ipfire/html/graphs/fwlog-ip*.png");
+        my @filenames = glob("/srv/web/ipfire/html/graphs/fwlog-country*.png");
         unlink(@filenames);
         my $imagerandom = rand(1000000);
-        my $imagename = "/srv/web/ipfire/html/graphs/fwlog-ip$imagerandom.png";
+        my $imagename = "/srv/web/ipfire/html/graphs/fwlog-country$imagerandom.png";
         open(FILE,">$imagename");
         print FILE $myimage->png;
         close(FILE);
         #####################################################
         print "<div style='text-align:center;'>";
-        print "<img src='/graphs/fwlog-ip$imagerandom.png'>";
+        print "<img src='/graphs/fwlog-country$imagerandom.png'>";
         print "</div>";
 }
 
@@ -458,11 +461,15 @@ for($s=0;$s<$lines;$s++)
       print "<td align='center' $col>$key[$s]</td>";
   }
   else {
-      if($key[$s] ne 'unknown' ) {
-          my $fcode = lc($key[$s]);
-          print "<td align='center' $col><a href='/cgi-bin/country.cgi#$fcode'><img src='/images/flags/$fcode.png' border='0' align='absmiddle' alt='$key[$s]' title='$key[$s]'></a></td>";}
-      else {
-          print "<td align='center' $col>$key[$s]</td>";
+       my $fcode = lc($key[$s]);
+
+       # Get flag icon for of the country.
+       my $flag_icon = &GeoIP::get_flag_icon($fcode);
+
+       if($flag_icon) {
+               print "<td align='center' $col><a href='/cgi-bin/country.cgi#$fcode'><img src='$flag_icon' border='0' align='absmiddle' alt='$key[$s]' title='$key[$s]'></a></td>";
+       } else {
+               print "<td align='center' $col>$key[$s]</td>";
       }
   }
   print "<td align='center' $col>$value[$s]</td>";