Ejemplo n.º 1
0
function importcomputersFromList()
{
    cpulimit(20);
    $sock = new sockets();
    $tbl = explode("\n", $sock->GET_INFO("ComputerListToImport"));
    writelogs("ComputerListToImport=" . count($tbl) . " values", __FUNCTION__, __FILE__, __LINE__);
    $i = 0;
    $max = count($tbl);
    while (list($num, $computername) = each($tbl)) {
        $z = $z + 1;
        $computername = trim($computername);
        $ip = null;
        $mac = null;
        if ($computername == null) {
            continue;
        }
        $ip_arp = unserialize(base64_decode($sock->getFrameWork("cmd.php?arp-ip=" . $_GET["arp-ip"])));
        if (is_array($ip_arp)) {
            $ip = $ip_arp[0];
            $mac = $ip_arp[1];
            unset($ip_arp);
        }
        $pourc = round($z / $max * 100);
        writelogs("{$pourc}) {$computername}", __FUNCTION__, __FILE__, __LINE__);
        WriteCOmputerBrowseProgress($pourc, "{import}: {$computername} ({$ip}/{$mac})");
        if ($mac != null) {
            $uid = $cmp->ComputerIDFromMAC($mac);
        } else {
            $uid = "{$computername}\$";
        }
        if ($uid == null) {
            $uid = "{$computername}\$";
        }
        $cmp = new computers($uid);
        if ($ip != null) {
            $cmp->ComputerIP = $ip;
        }
        if ($mac != null) {
            $cmp->ComputerMacAddress = $mac;
        }
        $cmp->ComputerRealName = $computername;
        $cmp->Add();
        $i = $i + 1;
    }
    WriteCOmputerBrowseProgress(0, "{waiting}");
}
Ejemplo n.º 2
0
<?php

include_once 'ressources/class.templates.inc';
include_once 'ressources/class.ldap.inc';
include_once 'ressources/class.users.menus.inc';
include_once 'ressources/class.mysql.inc';
include_once 'ressources/class.os.system.inc';
include_once 'ressources/class.activedirectory.inc';
include_once dirname(__FILE__) . '/framework/frame.class.inc';
include_once dirname(__FILE__) . '/framework/class.unix.inc';
if (posix_getuid() != 0) {
    die("Cannot be used in web server mode\n\n");
}
if (preg_match("#--verbose#", implode(" ", $argv))) {
    $GLOBALS["VERBOSE"] = true;
}
if (preg_match("#--output#", implode(" ", $argv))) {
    $GLOBALS["output"] = true;
}
cpulimit();
$ou = $argv[1];
$ad = new wad($ou);
$ad->Perform_import();
function BuildPatterns()
{
    $unix = new unix();
    cpulimit();
    $dirs = $unix->dirdir("/etc/dansguardian/lists/blacklists");
    if ($GLOBALS["VERBOSE"]) {
        echo "open /etc/dansguardian/lists/blacklists array of " . count($dirs) . "\n";
    }
    if (!is_array($dirs)) {
        writelogs("Unable to dir /etc/dansguardian/lists/blacklists", __FUNCTION__, __FILE__, __LINE__);
        return;
    }
    reset($dirs);
    while (list($num, $val) = each($dirs)) {
        $category = basename($num);
        if ($GLOBALS["VERBOSE"]) {
            echo "{$category}:: {$num} -> {$val}\n";
        }
        writelogs("Checking {$category}", __FUNCTION__, __FILE__, __LINE__);
        if ($category == "blacklists") {
            if ($GLOBALS["VERBOSE"]) {
                echo "{$category} == blacklists, aborting\n";
            }
            continue;
        }
        $domains = 0;
        $urls = 0;
        $expressions = 0;
        if (is_file("{$num}/domains")) {
            $domains = $unix->COUNT_LINES_OF_FILE("{$num}/domains");
            if ($GLOBALS["VERBOSE"]) {
                echo "{$category}:: {$domains} number\n";
            }
            $filetime = date("Y-m-d H:i:s", filemtime("{$num}/domains"));
        } else {
            if ($GLOBALS["VERBOSE"]) {
                echo "{$category}:: unable to stat {$num}/domains\n";
            }
        }
        if (is_file("{$num}/urls")) {
            $urls = $unix->COUNT_LINES_OF_FILE("{$num}/urls");
        } else {
            if ($GLOBALS["VERBOSE"]) {
                echo "{$category}:: unable to stat {$num}/urls\n";
            }
        }
        if ($GLOBALS["VERBOSE"]) {
            echo "{$category}={$domains},{$urls},{$filetime}\n";
        }
        $array["{$category}"] = array($domains, $urls, $filetime);
    }
    $datas = base64_encode(serialize($array));
    writelogs("writing /usr/share/artica-postfix/ressources/logs/dansguardian.patterns", __FUNCTION__, __FILE__, __LINE__);
    @file_put_contents("/usr/share/artica-postfix/ressources/logs/dansguardian.patterns", $datas);
    @chmod("/usr/share/artica-postfix/ressources/logs/dansguardian.patterns", 0755);
    if (!is_file("/usr/share/artica-postfix/ressources/logs/dansguardian.patterns")) {
        writelogs("Error writing dansguardian.patterns", __FUNCTION__, __FILE__, __LINE__);
    }
    return;
}