HLDSTART

Všetko ohľadom Linuxu...
sEinN
Amateur
Amateur
Príspevky: 14
Registrovaný: 31 dec 2008, 23:00
Bydlisko: Košice
Kontaktovať používateľa:

HLDSTART

Príspevok od používateľa sEinN »

Zdravím mam jeden problem a to taky ze vzdy my pise ze Agent Status Offline tu je screen :

http://i68.photobucket.com/albums/i30/K ... artweb.jpg

Ale ja to uz nerobim na localhoste ale je to vServer tak pls poradte

tu je ktomu control panelu navod http://209.85.229.132/translate_c?hl=cs ... O1yHKk_tzg isiel som podla toho ale nejak my to nejde

a este my pise stale chybu
Warning: shell_exec() has been disabled for security reasons in /mnt/md1/data/webs/101/seinn.eu/www/www/cp/include/lib_remote.php on line 56
tu je ten subor:

Kód: Vybrať všetko

<?php
if(file_exists("../config.php"))
 {
  include("../config.php");
 }
  else
  {
   include("config.php");
  }
//foreach($filetoread as $lines)
// {
//  echo "<option>$lines</option>";
// }
function quick_chk($remote_server)
 {
  global $listener_port;
   
  # echo "$args <br>";
   $request = xmlrpc_encode_request("quick_chk", $args);
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
   )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to remote server: $remote_server:$listener_port");
   
 } 
 
 function rfile_exists($remote_server, $file)
 {
  global $listener_port;
  #echo "$args <br>";
  $args = trim($file);
   $request = xmlrpc_encode_request("rfile_exists", $args);
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
   )));
   $status = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context);
   $status = xmlrpc_decode($status);
   #echo "$status <br>";
    return "$status";
   exit();
 } 
 
function status_chk($remote_server)
 {
  global $listener_port;
  if(file_exists("include/encrypt.pl"))
   {
     $args = `include/encrypt.pl hello`;
   }
   else
   {
     $args = `../include/encrypt.pl hello`;
    }
  #echo "$args <br>";
  $args = trim($args);
   $request = xmlrpc_encode_request("quick_chk", $args);
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
   )));
   $status = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context);
   $status = xmlrpc_decode($status);
   #echo "$status <br>";
   if($status == "")
    {
     return "Offline";
     }
    #elseif($status == "Offline")
     
    return "$status";
   exit();
 }  
 
 function remote_stop_server($remote_server, $server_ip, $server_port)
 {
  #mode is "raw", for plain text, or "list", for a drop down list
   #echo "Un: $args<br>";
   if(file_exists("include/encrypt.pl"))
   {
     $server_ip = `include/encrypt.pl $server_ip`;
     $server_port = `include/encrypt.pl $server_port`;
   }
   else
   {
     $server_ip = `../include/encrypt.pl $server_ip`;
     $server_port = `../include/encrypt.pl $server_port`;
    }

  
   #echo "En: $server_ip $server_port<br>";
   $args = trim($args);
   global $listener_port;
   $request = xmlrpc_encode_request("stop_server", array($server_ip, $server_port));
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
   )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
   $response = xmlrpc_decode($file);
   if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
      } else {
      if(preg_match("/^ERROR/", $response))
        {
          echo "$response";
          exit(1);
         }
        echo "Stopped server pids $response<br>"; 
      }
   }
 
 
function remote_readfile($remote_server, $args, $mode)
 {
  #mode is "raw", for plain text, or "list", for a drop down list
   #echo "Un: $args<br>";
   $args = `include/encrypt.pl $args`;
   #echo "En: $args<br>";
   $args = trim($args);
   global $listener_port;
   $request = xmlrpc_encode_request("readfile", $args);
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
   )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
   $response = xmlrpc_decode($file);
   if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
      } else {
      if(preg_match("/^ERROR/", $response))
      {
       if($mode == 'list')
        {
         echo "<option>$response</option>";
         echo "</select>";
         exit(1);
        }
         else
         {
          echo "$response";
          exit(1);
         }          
       }
      $filelines = preg_split("/\n/", $response);
      #print_r($filelines);
      #return $filelines;
      foreach($filelines as $lines)
       {
        $lines = trim($lines);
        if($mode == 'list')
          { 
           echo "<option value=$lines>$lines</option>\n";
          }
           else
           {
           echo "$lines\n";
           }
       }
   }
 
 }

 #$output = remote_writefile("$rserver", "/path/to/file", $content);
function remote_writefile($remote_server, $writefile, $content)
 {
   $writefile = `include/encrypt.pl $writefile`;
   global $listener_port;
   $request = xmlrpc_encode_request("writefile", array("$writefile", "$content"));
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
     )));
      $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
      $response = xmlrpc_decode($file);
       if (xmlrpc_is_fault($response)) {
         trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
       } else {
      if(preg_match("/^ERROR/", $response))
        {
         echo "$response";
         exit(1);
        }
        $filelines = preg_split("/\n/", $response);
    #  print_r($filelines);
      #return $filelines;
     
      print($response);
   }
 
 } 

function steam($remote_server, $game_home, $mod)
 {
   $game_home = `include/encrypt.pl $game_home`;
   $mod = `include/encrypt.pl $mod`;
   #echo "$game_home and $mod<br>";
   global $listener_port;
   $request = xmlrpc_encode_request("steam", array("$game_home", "$mod"));
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
    )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
   $response = xmlrpc_decode($file);
   if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
     } else {
      echo "<pre>";
       if(preg_match("/^ERROR/", $response))
        {
         echo "$response";
         exit(1);
        }
       $filelines = preg_split("/\n/", $response);
    #  print_r($filelines);
      #return $filelines;
      print($response);
    echo "</pre>";
   }
 } 
 
 
 #start_hl("$rserver", '/home/cs/hlds-again', 'cstrike', 'cs_italy', '27015', '192.168.1.105', '25', '-nomaster +sv_lan');
function start_hl($remote_server, $game_home, $modname, $map, $server_port, $server_ip, $maxplayers, $additional, $cpu)
 {
   $game_home = `include/encrypt.pl $game_home`;
   global $listener_port;
   $request = xmlrpc_encode_request("start_hl", array("$game_home", "$modname", "$map", "$server_port", "$server_ip", "$maxplayers", "$additional", "$cpu"));
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
    )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
   $response = xmlrpc_decode($file);
   if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
     } else {
      echo "<pre>";
       if(preg_match("/^ERROR/", $response))
        {
         echo "$response";
         exit(1);
        }
       $filelines = preg_split("/\n/", $response);
    #  print_r($filelines);
      #return $filelines;
      print($response);
    echo "</pre>";
   }
 }  
 
function start_hlsrc($remote_server, $game_home, $modname, $map, $server_port, $server_ip, $maxplayers, $additional, $cpu)
 {
   $game_home = `include/encrypt.pl $game_home`;
   global $listener_port;
   $request = xmlrpc_encode_request("start_hlsrc", array("$game_home", "$modname", "$map", "$server_port", "$server_ip", "$maxplayers", "$additional", "$cpu"));
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
    )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
   $response = xmlrpc_decode($file);
   if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
     } else {
      echo "<pre>";
       if(preg_match("/^ERROR/", $response))
        {
         echo "$response";
         exit(1);
        }
       $filelines = preg_split("/\n/", $response);
    #  print_r($filelines);
      #return $filelines;
      print($response);
     echo "</pre>";
    } 
  }
function start_ut2004($remote_server, $game_home, $modname, $map, $server_port, $server_ip, $maxplayers, $lanplay, $ut2004ini, $ut2004uini, $additional, $cpu)
 {
   $game_home = `include/encrypt.pl $game_home`;
   global $listener_port;
   $request = xmlrpc_encode_request("start_ut2004", array("$game_home", "$modname", "$map", "$server_port", "$server_ip", "$maxplayers", "$lanplay", "$ut2004ini", "$ut204uini","$additional", "$cpu"));
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
    )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
   $response = xmlrpc_decode($file);
   if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
     } else {
      echo "<pre>";
       if(preg_match("/^ERROR/", $response))
        {
         echo "$response";
         exit(1);
        }
       $filelines = preg_split("/\n/", $response);
    #  print_r($filelines);
      #return $filelines;
      print($response);
    echo "</pre>";
   }
  }
function start_ut4($remote_server, $game_home, $modname, $map, $server_port, $server_ip, $maxplayers, $additional, $cpu)
 {
     $game_home = `include/encrypt.pl $game_home`;
   global $listener_port;
   $request = xmlrpc_encode_request("start_ut4", array("$game_home", "$modname", "$map", "$server_port", "$server_ip", "$maxplayers", "$additional", "$cpu"));
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
    )));
   $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
   $response = xmlrpc_decode($file);
   if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
     } else {
      echo "<pre>";
       if(preg_match("/^ERROR/", $response))
        {
         echo "$response";
         exit(1);
        }
       $filelines = preg_split("/\n/", $response);
    #  print_r($filelines);
      #return $filelines;
      print($response);
    echo "</pre>";
   }
  
 } 

  #$dirtoread = remote_dirlist("$rserver", $dir, $mode);
function remote_dirlist($remote_server, $args, $mode)
  {
    #echo "Un: $args<br>";
    $args = `include/encrypt.pl $args`;
    #echo "En: $args<br>";
    $args = trim($args);
    global $listener_port;
    $request = xmlrpc_encode_request("dirlist", $args);
    $context = stream_context_create(array('http' => array(
       'method' => "POST",
       'header' => "Content-Type: text/xml",
       'content' => $request
     )));
    $file = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context) or die("Cannot connect to $remote_server:$listener_port");
    $response = xmlrpc_decode($file);
    if (xmlrpc_is_fault($response)) {
     trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
     } else {
     if(preg_match("/^ERROR/", $response))
      {
       echo "$response";
       exit(1);
       }
      $dirs = preg_split("/\s+/", $response);
      if($mode == 'list')
       {
        foreach($dirs as $lines)
          {
            if($lines !== '.' && $lines !== '..')
            {
              list($utmap, $ext) = explode(".", $lines); 
             echo "<option value=$utmap>$utmap</option>\n";
            }
          }
       }
       else
        {
         foreach($dirs as $lines)
          {
            if($lines !== '.' && $lines !== '..')
             {
               list($utmap, $ext) = explode(".", $lines); 
              echo "$utmap\n";
             }
          }
        }
       
     # return $dirs;
     # print_r($dirs);
    }
 }

 function cpu_count($remote_server, $file)
 {
  global $listener_port;
  #echo "$args <br>";
  $args = trim($file);
   $request = xmlrpc_encode_request("cpu_count", $args);
   $context = stream_context_create(array('http' => array(
      'method' => "POST",
      'header' => "Content-Type: text/xml",
      'content' => $request
   )));
   $status = @file_get_contents("http://$remote_server:$listener_port/RPC2", false, $context);
   $status = xmlrpc_decode($status);
   #echo "$status <br>";
    return "$status";
   exit();
 } 
 
 
 
?>
krasko
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 305
Registrovaný: 10 mar 2008, 5:02

Príspevok od používateľa krasko »

predpokladam, ze z bezpecnostnych (alebo inych?) dovodov je zakazane volanie php funkcie shell_exec, ktorej uloha je vykonat lokalny prikaz (viac info php.net/shell_exec). Staci nahradit volanie tejto funkcie niecim inym... (resp. ziskavat pozadovane veci inak ako vykonavanim shell prikazu).
Napísať odpoveď