Esempio n. 1
0
function keyindoorway($currentkey, $keyfilename)
{
    $foundkey = "";
    $currentkey = trim(urldecode($currentkey));
    $currentkey = str_ireplace("-", " ", $currentkey);
    $currentkey = strtolower($currentkey);
    $allkeys = decodedata(file_get_contents($keyfilename));
    $allkeys = explode("\n", $allkeys);
    foreach ($allkeys as $keyfrcheck) {
        $keyfrcheck = trim($keyfrcheck);
        $keyfrcheck = strtolower($keyfrcheck);
        if (stripos("qqqq" . $currentkey, "qqq" . $keyfrcheck)) {
            $foundkey = "yes";
            break;
        }
    }
    return $foundkey;
}
function homeagent_handler($path_tail, $data)
{
    log_message('info', "[hypergrid] homeagent_handler called");
    $data = decodedata($data);
    $userid = $path_tail[0];
    log_message('info', "homeagent_handler called for {$userid} with {$data}");
    $osd = decode_recursive_json($data);
    if ($osd == null) {
        log_message('error', sprintf('[hypergrid] failed to decode foreignagent json string %s', $data));
        sendresponse(false, 'failed to decode foreignagent string');
    }
    $gatekeeper_uri = $osd['gatekeeper_serveruri'];
    if (!isset($osd['destination_x'])) {
        $osd['destination_x'] = 128;
    }
    if (!isset($osd['destination_y'])) {
        $osd['destination_y'] = 128;
    }
    if (!isset($osd['client_ip'])) {
        $session = get_session($userid);
        if (!isset($session['ExtraData']['ClientIP'])) {
            log_message('warn', "[hypergrid] no client ip found in session, this is going to fail");
            sendresponse(false, 'no client ip found in the session');
        }
        $osd['client_ip'] = $session['ExtraData']['ClientIP'];
    }
    if (!isset($osd['service_session_id'])) {
        log_message('debug', 'missing service_session_id, generating a new one');
        $osd['service_session_id'] = $gatekeeper_uri . ';' . UUID::Random();
    }
    /* $dest_uuid = $osd['destination_uuid']; */
    /* $caps_path = $osd['caps_path']; */
    /* $username = $osd['first_name'] . ' ' . $osd['last_name']; */
    /* $circuit_code = $osd['circuit_code']; */
    /* $session_id = $osd['session_id']; */
    /* $secure_session_id = $osd['secure_session_id']; */
    /* $start_pos = $osd['start_pos']; */
    /* $appearance = $osd['packed_appearance']; */
    /* $server_uri = $osd['destination_serveruri']; */
    $data = json_encode($osd);
    log_message('info', "[hypergrid] login to region with {$data}");
    $result = array();
    if (hg_login($gatekeeper_uri, $userid, $data, $yourip)) {
        $result['success'] = true;
        $result['reason'] = "success";
        $result['your_ip'] = $yourip;
        //echo '{"success": true, "reason": "success"}';
    } else {
        $result['success'] = false;
        $result['reason'] = "hypergrid login failed";
        $result['your_ip'] = $yourip;
        // echo '{"success": false, "reason": "hypergrid login failed"}';
    }
    $jresult = json_encode($result);
    log_message('info', "[hypergrid] homeagent returns {$jresult}");
    echo $jresult;
    exit;
}
Esempio n. 3
0
function keyindoorway($currentkey, $keyfilename)
{
    $foundkey = "";
    $currentkey = trim(urldecode($currentkey));
    $currentkey = str_ireplace("-", " ", $currentkey);
    $currentkey = str_ireplace("  ", " ", $currentkey);
    $currentkey = strtolower($currentkey);
    //var_dump($currentkey);
    $allkeys = decodedata(file_get_contents($keyfilename));
    $allkeys = explode("\n", $allkeys);
    //var_dump($allkeys);
    //$currentkey="www ".$currentkey."qqqqq";
    foreach ($allkeys as $keyfrcheck) {
        $keyfrcheck = trim($keyfrcheck);
        $keyfrcheck = str_ireplace("-", " ", $keyfrcheck);
        $keyfrcheck = str_ireplace("  ", " ", $keyfrcheck);
        $keyfrcheck = strtolower($keyfrcheck);
        //$linkskeyfrcheck=$linkskeyfrcheck."qqqqq";
        if ($keyfrcheck == $currentkey) {
            $foundkey = "yes";
            break;
        }
    }
    //var_dump($foundkey);
    return $foundkey;
}