/dev/null 2>&1 &'); } sleep(1); $temp = $query . '&k=' . urlencode($_SESSION["username"] . "\r"); $output = rconsSynchronise($temp); if (0 < substr_count($output, 'error')) { echo json_encode(array('err'=>$output)); exit; } sleep(1); $temp = $query . '&k=' . urlencode(getpassword() . "\r"); $output = rconsSynchronise($temp); if (0 < substr_count($output, 'error')) { echo json_encode(array('err'=>$output)); exit; } sleep(1); $temp = $query . '&c=1&k=' . urlencode('rcons ' . $_POST['s'] . "\r"); } else { $temp = $query . '&c=1&k=' . urlencode($_POST['k']); } $output = rconsSynchronise($temp); if (0 < substr_count($output, 'error')) { echo (array('err'=>$output)); } else { $xml = simplexml_load_string($output); if ('pre' == $xml->getName()) { $output = $xml->asXML(); $output = preg_replace('/'. chr(160) . '/', ' ', $output); echo json_encode(array('term'=>$output)); } else { echo json_encode(array('nc'=>'nc')); } } function rconsSynchronise($parameter) { $flag = false; $return = ""; $out = ""; $fp = fsockopen("127.0.0.1", 8022, $errno, $errstr, 30); if (!$fp) { return "$errstr($errno)"; } $out = "GET /u?$parameter HTTP/1.1\r\nHost: 127.0.0.1:8022\r\nConnection: Close\r\n\r\n"; fwrite($fp, $out); while (!feof($fp)) { $line = fgets($fp,1024); if (0 == strlen($line)) { continue; } if ('<' == substr($line, 0, 1)) { $flag = true; $return .= $line; break; } } if ($flag) { while (!feof($fp)) { $return .= fgets($fp, 1024); } } return ($return); } ?>