Exemplo n.º 1
0
 public function getSlaves()
 {
     $this->write(PACKET_LIST);
     $raw = socket_read($this->sock, 1024 * 10, PHP_NORMAL_READ) or die("Could not read from socket\n");
     $slaveStrings = explode(";", $raw);
     $slaves = array();
     foreach ($slaveStrings as $string) {
         if (strlen($string) <= 1) {
             continue;
         }
         $s = new Slave();
         $s->makearray($string);
         array_push($slaves, $s);
     }
     return $slaves;
 }
Exemplo n.º 2
0
function add_slave($pass)
{
    global $gbl, $sgbl, $login, $ghtml;
    $client = new Slave(null, null, 'slave');
    $client->initThisDef();
    $ddb = new Sqlite(null, "slave");
    if (!$ddb->existInTable("nname", 'slave')) {
        $res['password'] = $pass;
        $res['cttype'] = 'slave';
        if (if_demo()) {
            $res['email'] = "*****@*****.**";
        }
        $client->create($res);
        $client->write();
    }
}
Exemplo n.º 3
0
        if (file_exists($lockfile)) {
            system("echo \"{$now}  Lock file found in {$lockfile}. Skipping.\" >> {$logfile}");
            return;
        }
        $cp = new CronParser($schedule);
        // if 1) job is enabled
        //    2) and, we are on specified host
        //    3) and, job is scheduled to run
        // then, start execution
        if ($enabled && strcasecmp($runonhost, $thishost) == 0 && $cp->hasRunInTheLast(self::RUN_INTERVAL)) {
            // create lock file
            touch($lockfile);
            // start execution
            $cmd = file_exists("{$job}.php") ? "php {$job}.php" : "{$job}.sh";
            if (!$this->_windows) {
                $useSudo = "sudo -u {$runas}";
            }
            exec("{$useSudo} {$cmd} 1>> {$logfile} 2>&1", $dummy, $retval);
            // remove lock file
            unlink($lockfile);
            // mail log file if error
            if ($retval !== 0) {
                $this->_maillog();
            }
        }
        // clean up any old logs
        exec("find logs -mtime +{$keep} | xargs rm -f");
    }
}
$slave = new Slave();
$slave->work($argv[1]);
Exemplo n.º 4
0
 public static function none()
 {
     $slave = new Slave();
     $s = "Nothing found";
     $slave->makearray($s . ":" . $s . ":" . $s . ":" . $s . ":" . $s . ":" . $s . ":" . $s);
     return $slave;
 }