| | |
| | | } |
| | | |
| | | public function logout($returnUrl = NULL) { |
| | | session_start(); |
| | | @session_start(); |
| | | if($this->isAuthenticated()) { |
| | | unset($_SESSION[$this->sessionName]); |
| | | header('Location: '.$this->logoutUrl($returnUrl)); |
| | |
| | | } |
| | | |
| | | public function authenticate() { |
| | | session_start(); |
| | | @session_start(); |
| | | if($this->isAuthenticated()) { |
| | | return $_SESSION[$this->sessionName]; |
| | | } elseif(isset($_REQUEST['ticket'])) { |
| | |
| | | } |
| | | } |
| | | } catch(Exception $e) { |
| | | throw new JasigException('Authentication error: CAS server' |
| | | .' response invalid - parse error', 0, $e); |
| | | } finally { |
| | | libxml_clear_errors(); |
| | | libxml_disable_entity_loader($xmlEntityLoader); |
| | | libxml_use_internal_errors($xmlInternalErrors); |
| | | throw new JasigException('Authentication error: CAS server' |
| | | .' response invalid - parse error', 0, $e); |
| | | } |
| | | libxml_clear_errors(); |
| | | libxml_disable_entity_loader($xmlEntityLoader); |
| | | libxml_use_internal_errors($xmlInternalErrors); |
| | | |
| | | $failure = $xml->getElementsByTagName('authenticationFailure'); |
| | | $success = $xml->getElementsByTagName('authenticationSuccess'); |