/**
  * @param string $service_id
  * @return string
  * @throws BaseServiceIDMissingException
  * @throws BaseUserAccessDeniedException
  */
 public static function start($service_id)
 {
     global $user;
     if ($user->is_admin()) {
         if (!is_numeric($service_id)) {
             throw new BaseServiceIDMissingException();
         }
         $service = new Service($service_id);
         if ($service->start()) {
             return 1;
         } else {
             return 0;
         }
     } else {
         throw new BaseUserAccessDeniedException();
     }
 }
Esempio n. 2
0
{
    $conn = @fsockopen($host, $port, $errno, $errstr, 0.2);
    if ($conn) {
        fclose($conn);
        return false;
    }
    return true;
}
require_once 'environment.class.php';
require_once 'service.class.php';
header("Content-type: text/plain");
Service::stop();
Environment::set_env(array("installed" => false, "vnc_port" => 5900, "policy_host" => $_GET['policy_host'], "policy_port" => 1234, "password" => "", "success" => false, "vnc_port_open" => false, "policy_port_open" => false, "encrypted_password" => ""));
$env = Environment::get_env();
$l->log('Attempting to start the service in the following environment: ' . json_encode($env));
Service::start();
$trys = 0;
$success = false;
$vnc_running = false;
$policy_running = false;
while (!$success && $trys < 20) {
    if (!$vnc_running) {
        $vnc_running = !port_open($env['vnc_port']);
    }
    if (!$policy_running) {
        $policy_running = !port_open($env['policy_port'], $env['policy_host']);
    }
    if ($vnc_running && $policy_running) {
        $success = true;
    }
    $trys++;
Esempio n. 3
0
<?php

require DIR_CORE . 'services.php';
/** @var array $launch */
foreach ($launch as $s) {
    /** @var array $services */
    if (isset($services[$s])) {
        _echo('Starting ' . $services[$s]);
        _echo(Service::start($s));
    } else {
        _echo('Service ' . $s . ' not installed');
    }
}