示例#1
0
文件: cmd.php 项目: filonuse/fedlab
        $newtester = new $ct($idpmetadata, $spm->parsed, $inputmeta['metadata'], $initsso, $initslo, $attributeurl);
        $testers[] = $newtester;
        $newflows = $newtester->getFlows();
        foreach ($newflows as $nf => $name) {
            $flows[] = array('id' => $ct . '__' . $nf, 'name' => $name);
        }
    }
} catch (Exception $e) {
    echo 'Error: ' . $e->getMessage() . "\n";
    exit(1);
}
if ($action === 'check') {
    try {
        $testprogramme = new sspmod_fedlab_TestProgramme($testconfig, $idpmetadata, $spm->parsed, $spm->xmlmetadata, $initsso, $initslo, $attributeurl);
        $test = new sspmod_fedlab_BasicSPTest($idpmetadata, $spm->parsed, $inputmeta['metadata'], $initsso, $initslo, $attributeurl);
        $res = $test->simpleTest();
        $result = array('status' => 0, 'id' => 'verify');
    } catch (Exception $e) {
        $result = array('id' => 'verify', 'status' => 4, 'message' => $e->getMessage());
    }
    echo json_encode($result, TRUE);
    exit(0);
} else {
    if ($action === 'runTest') {
        if (empty($argv[2])) {
            throw new Exception('Missing parameter name of test');
        }
        $test = $argv[2];
        $splitted = explode('__', $test);
        $testername = $splitted[0];
        $flowname = $splitted[1];
示例#2
0
    $initslo = $spm->initslo;
    $attributeurl = $spm->attributeurl;
    if (empty($initurl)) {
        throw new Exception('InitSSO parameter not found in metadata (EntityAttribute extension)');
    }
    if (empty($attributeurl)) {
        $attributeurl = $initurl;
    }
    $idpentityid = SimpleSAML_Utilities::getBaseURL() . 'module.php/fedlab/metadata.php';
    $idpmetadata = array('entityid' => $idpentityid, 'certificate' => 'server.crt', 'privatekey' => 'server.pem');
    $testconfig = array('sspmod_fedlab_BasicSPTest', 'sspmod_fedlab_AuthnRequestVerify', 'sspmod_fedlab_ExtendedSPTest', 'sspmod_fedlab_tests_CheckRequestID', 'sspmod_fedlab_tests_Metadata', 'sspmod_fedlab_tests_Replay', 'sspmod_fedlab_tests_MultipleAttr', 'sspmod_fedlab_tests_TrickySignature', 'sspmod_fedlab_tests_TrickySignature2', 'sspmod_fedlab_tests_MultipleAssertions', 'sspmod_fedlab_tests_SLOTest', 'sspmod_fedlab_tests_IdPInitSLOTest', 'sspmod_fedlab_tests_IdPInitSLONoCookie', 'sspmod_fedlab_tests_SessionFixtation', 'sspmod_fedlab_tests_LogoutBeforeAssertion');
    $testprogramme = new sspmod_fedlab_TestProgramme($testconfig, $idpmetadata, $spm->parsed, $spm->xmlmetadata, $initurl, $initslo, $attributeurl);
    $session->setData('fedlab', 'testprogramme', $testprogramme);
    $test = new sspmod_fedlab_BasicSPTest($idpmetadata, $spm->parsed, $entity, $initurl, $initslo, $attributeurl);
    error_log('before test2');
    $test->simpleTest();
    error_log('after test');
    $result = array('status' => 'success');
} catch (Exception $e) {
    $err = $e->getTraceAsString();
    foreach (split("\n", $err) as $el) {
        error_log('exception: ' . $el);
    }
    $result = array('status' => 'error', 'message' => $e->getMessage());
}
/* 
 * The first two headers prevent the browser from caching the response (a problem with IE and GET requests) 
 * and the third sets the correct MIME type for JSON.
 */
header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');