\n"; // if (file_exists($caFile)) // echo "\n"; } if (file_exists($caFile)) Swekey_SetCAFile($caFile); else if (! empty($caFile) && (substr($_SESSION['SWEKEY']['CONF_SERVER_CHECK'], 0, 8) == "https://")) return "Internal Error: CA File $caFile not found"; $result = null; parse_str($_SERVER['QUERY_STRING']); if (isset($swekey_id)) { unset($_SESSION['SWEKEY']['AUTHENTICATED_SWEKEY']); if (! isset($_SESSION['SWEKEY']['RND_TOKEN'])) { unset($swekey_id); } else { if (strlen($swekey_id) == 32) { $res = Swekey_CheckOtp($swekey_id, $_SESSION['SWEKEY']['RND_TOKEN'], $swekey_otp); unset($_SESSION['SWEKEY']['RND_TOKEN']); if (! $res) { $result = $GLOBALS['strSwekeyAuthFailed'] . ' (' . Swekey_GetLastError() . ')'; } else { $_SESSION['SWEKEY']['AUTHENTICATED_SWEKEY'] = $swekey_id; $_SESSION['SWEKEY']['FORCE_USER'] = $_SESSION['SWEKEY']['VALID_SWEKEYS'][$swekey_id]; return null; } } else { $result = $GLOBALS['strSwekeyNoKey']; if ($_SESSION['SWEKEY']['CONF_DEBUG']) { $result .= "
".$swekey_id; } unset($_SESSION['SWEKEY']['CONF_LOADED']); // reload the conf file } } } else unset($_SESSION['SWEKEY']); $_SESSION['SWEKEY']['RND_TOKEN'] = Swekey_GetFastRndToken(); if (strlen($_SESSION['SWEKEY']['RND_TOKEN']) != 64) { $result = $GLOBALS['strSwekeyAuthFailed'] . ' (' . Swekey_GetLastError() . ')'; unset($_SESSION['SWEKEY']['CONF_LOADED']); // reload the conf file } if (! isset($swekey_id)) { ?> display(); if ($GLOBALS['error_handler']->hasDisplayErrors()) { echo '
'; $GLOBALS['error_handler']->dispErrors(); echo '
'; } } if (isset($_SESSION['SWEKEY']) && $_SESSION['SWEKEY']['ENABLED']) { echo ''; } } if (strstr($_SERVER['QUERY_STRING'],'session_to_unset') != false) { parse_str($_SERVER['QUERY_STRING']); session_write_close(); session_id($session_to_unset); session_start(); $_SESSION = array(); session_write_close(); session_destroy(); exit; } if (isset($_GET['swekey_reset'])) { unset($_SESSION['SWEKEY']); } ?>