Subversion Repositories ALCASAR

Rev

Rev 2853 | Rev 3179 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><!-- written by Rexy -->
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?
$bl_dir="/etc/e2guardian/lists/blacklists/";
$bl_iptables_dir="/usr/local/share/iptables-bl/";
$wl_iptables_dir="/usr/local/share/iptables-wl/";
$bl_unbound_dir="/usr/local/share/unbound-bl/";
$wl_unbound_dir="/usr/local/share/unbound-wl/";
# Choice of language
$Language = 'en';
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE']))
{
         $Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
         $Language = strtolower(substr(chop($Langue[0]),0,2));
}
if($Language == 'fr')
{
        $l_title = "Catégories de la liste noire";
        $l_error_open_file="Erreur d'ouverture du fichier";
        $l_close="Fermer";
        $l_description_cat="Cette catégorie n'est pas décrite";
        $l_name_cat ="Cette catégorie n'a pas de nom";
        $l_nb_domains="Nombre de noms de domaine :";
        $l_nb_urls="Nombre d'URLs :";
        $l_nb_ip="Nombre d'adresses IP :";
        $l_example="Exemple(s) : ";
        $l_error_cat = "Erreur de categorie";
        $l_error_list = "Erreur de listing";
} else if ($Language == 'es') {
        $l_title = "Categorías de la lista negra";
        $l_error_open_file="Error de apertura del archivo";
        $l_close="Cerrar";
        $l_description_cat="Esta categoría no se describe";
        $l_name_cat ="Esta categoría no tiene nombre";
        $l_nb_domains=" número de nombres de dominio :";
        $l_nb_urls="Número de URLs :";
        $l_nb_ip="Número de direcciones IP :";
        $l_example="Ejemplo(s) : ";
        $l_error_cat = "Error de categoría";
        $l_error_list = "Error de listado";
} else {
        $l_title = "Blacklist categories";
        $l_error_open_file="Error opening the file";
        $l_close="Close";
        $l_description_cat="This category isn't described";
        $l_name_cat ="This category has no name";
        $l_nb_domains="Number of domain names :";
        $l_nb_urls="Number of URLs :";
        $l_nb_ip="Number of IP addresses :";
        $l_example="Example(s) : ";
        $l_error_cat = "Error category";
        $l_error_list = "Error listing";
}
if(isset($_GET['cat']))
{
        $categorie = $_GET['cat'];
}
else
{
        $categorie = $l_error_cat;
}
if(isset($_GET['liste']))
{
        $liste = $_GET['liste'];
}
else
{
        $liste = $l_error_list;
}
if($liste == "bl")
{
        $bl_categorie_domain_file = $bl_unbound_dir.$categorie.".conf";
        $bl_categorie_url_file = $bl_dir.$categorie."/urls";
        $bl_categorie_ip_file = $bl_iptables_dir.$categorie;
        //don't calc again on reload (click on the number of domain/urls/ip)
        if (isset ($_GET['nb_domains']) && isset($_GET['nb_urls']) && isset($_GET['nb_ip']))
        {
                $nb_domains = $_GET['nb_domains'];
                $nb_urls = $_GET['nb_urls'];
                $nb_ip = $_GET['nb_ip'];
        }
        else
        {
                if (file_exists($bl_categorie_domain_file))
                {
                        # two lines per domain
                        $nb_domains = exec("wc -l $bl_categorie_domain_file | cut -d ' ' -f1") / 2;
                }
                else
                {
                        $nb_domains = $l_error_open_file." ".$bl_categorie_domain_file;
                }

                if (file_exists($bl_categorie_url_file))
                {
                        $nb_urls = exec ("wc -l $bl_categorie_url_file | cut -d ' ' -f1");
                }
                else
                {
                        $nb_urls = $l_error_open_file." ".$bl_categorie_url_file;
                }

                if(file_exists($bl_categorie_ip_file))
                {
                        $nb_ip = exec("wc -l $bl_categorie_ip_file | cut -d ' ' -f1");
                }
                else
                {
                        $nb_ip = $l_error_open_file." ".$bl_categorie_ip_file;
                }
        }
}
else
{
        $wl_categorie_domain_file = $wl_unbound_dir.$categorie.".conf";
        $wl_categorie_ip_file = $wl_iptables_dir.$categorie;
        if (file_exists($wl_categorie_domain_file))
        {
                $nb_domains = exec("wc -l $wl_categorie_domain_file | cut -d ' ' -f1");
        }
        else
        {
                $nb_domains = $l_error_open_file." ".$wl_categorie_domain_file;
        }

        if (file_exists($wl_categorie_ip_file))
        {
                $nb_ip = exec("wc -l $wl_categorie_ip_file | cut -d ' ' -f1");
        }
        else
        {
                $nb_ip = 0;
                //$nb_ip = $l_error_open_file." ".$wl_categorie_ip_file;
        }

        $nb_urls = 0; //no urls in WL
}
$global_usage = file($bl_dir."global_usage");
$langue = strtoupper($Language);
if(isset($categorie))
{
        $fin1 = 0; $fin2 = 0;
        foreach ($global_usage as $line)
        {
                if(preg_match("#^NAME:.$categorie$#", $line) == 1)
                {
                        $fin1 = 1;
                }
                if($fin1 && preg_match("#^DESC.$langue:.#", $line) == 1)
                {
                        $l_description_cat = preg_replace("#^DESC.$langue:.#", "", $line);
                }
                if($fin1 && preg_match("#^NAME.$langue:.#", $line) == 1)
                {
                        $l_name_cat = preg_replace("#^NAME.$langue:.#", "", $line);
                        $fin2 = 1;
                }
                if($fin2) break;
        }
}
echo "<TITLE>$l_title</TITLE>";
?>
<link rel="stylesheet" href="/css/acc.css" type="text/css">
</HEAD>
<body>
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr><th><?php if(isset($categorie)){echo $categorie ;}else{echo $l_error_cat;}?></th></tr>
        <tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1" height="2"></td></tr>
</TABLE>
<TABLE width="100%" border=1 cellspacing=0 cellpadding=1>
        <tr><td valign="middle" align="left">
                <?php
                if(isset($_GET["filtre"]))
                {
                        $filtre = $_GET["filtre"];
                }
                else
                {
                        $filtre = $liste == "bl" ? $bl_categorie_domain_file : $wl_categorie_domain_file;
                }
                $filtre_domain = $liste == "bl" ? $bl_categorie_domain_file : $wl_categorie_domain_file;
                $filtre_ip = $liste == "bl" ? $bl_categorie_ip_file : $wl_categorie_ip_file;
                $filtre_url = $liste == "bl" ? $bl_categorie_url_file : "";
                $compat_categorie=strtr($categorie,"-","_");
                echo "<br><center><b>$l_name_cat</b></center>";
                echo "<center><b>$l_description_cat</b></center><br>";
                echo "$l_nb_domains <b><a href='?liste=$liste&cat=$categorie&filtre=$filtre_domain&titre=domain&nb_domains=$nb_domains&nb_urls=$nb_urls&nb_ip=$nb_ip'>$nb_domains</a></b><br>";
                echo "$l_nb_urls <b><a href='?liste=$liste&cat=$categorie&filtre=$filtre_url&titre=url&nb_domains=$nb_domains&nb_urls=$nb_urls&nb_ip=$nb_ip'>$nb_urls</a></b><br>";
                echo "$l_nb_ip <b><a href='?liste=$liste&cat=$categorie&filtre=$filtre_ip&titre=ip&nb_domains=$nb_domains&nb_urls=$nb_urls&nb_ip=$nb_ip'>$nb_ip</a></b><br>";
                ?>
        </td></tr>
</TABLE>
<br>
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr><th>
                <?php
                if(isset($_GET["titre"]))
                {
                        $titre = $_GET["titre"];
                }
                else
                {
                        $titre = "domain";
                }
                echo $l_example.$titre;
                ?>
        </th></tr>
        <tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1" height="2"></td></tr>
</TABLE>
<TABLE width="100%" border=1 cellspacing=0 cellpadding=1>
        <tr><td valign="middle" align="left">
<?php
                if($titre == "domain")
                {

                        $filtre = $liste == "bl" ? $bl_categorie_domain_file : $wl_categorie_domain_file;
                        exec("head -n 15 ".escapeshellarg($filtre)." | grep 'transparent' | awk '{ print $2 }'", $resultat);
                }
                elseif($titre == "ip")
                {
                        $filtre = $liste == "bl" ? $bl_categorie_ip_file : $wl_categorie_ip_file;
                        exec("head -n 15 ".escapeshellarg($filtre)." | cut -d ' ' -f3", $resultat);
                }
                else
                {
                        exec("head -n 15 ".escapeshellarg($filtre), $resultat);
                }
                for($i=0; $i<count($resultat); $i++)
                {
                        echo $resultat[$i]."<br/>";
                }
                ?>
        </td></tr>
</TABLE>
<center><a href="javascript:window.close();"><b><?php echo "$l_close"; ?></b></a></center>
</BODY>
</HTML>