public static getFirstPathElement ( $trailingslash = true ) |
public function getBaseURL() { if (preg_match('/^\\*(.*)$/', $this->getValue('baseurlpath', ''), $matches)) { return SimpleSAML_Utilities::getFirstPathElement(false) . $matches[1]; } return $this->getValue('baseurlpath', ''); }
<?php require_once '../_include.php'; /* Load simpleSAMLphp, configuration */ $config = SimpleSAML_Configuration::getInstance(); $session = SimpleSAML_Session::getInstance(); /* Check if valid local session exists.. */ SimpleSAML_Utilities::requireAdmin(); $attributes = array(); $attributes['HTTP_HOST'] = array($_SERVER['HTTP_HOST']); $attributes['HTTPS'] = array($_SERVER['HTTPS']); $attributes['SERVER_PROTOCOL'] = array($_SERVER['SERVER_PROTOCOL']); $attributes['SERVER_PORT'] = array($_SERVER['SERVER_PORT']); $attributes['Utilities_getBaseURL()'] = array(SimpleSAML_Utilities::getBaseURL()); $attributes['Utilities_getSelfHost()'] = array(SimpleSAML_Utilities::getSelfHost()); $attributes['Utilities_selfURLhost()'] = array(SimpleSAML_Utilities::selfURLhost()); $attributes['Utilities_selfURLNoQuery()'] = array(SimpleSAML_Utilities::selfURLNoQuery()); $attributes['Utilities_getSelfHostWithPath()'] = array(SimpleSAML_Utilities::getSelfHostWithPath()); $attributes['Utilities_getFirstPathElement()'] = array(SimpleSAML_Utilities::getFirstPathElement()); $attributes['Utilities_selfURL()'] = array(SimpleSAML_Utilities::selfURL()); $et = new SimpleSAML_XHTML_Template($config, 'status.php'); $et->data['header'] = '{status:header_diagnostics}'; $et->data['remaining'] = 'na'; $et->data['attributes'] = $attributes; $et->data['valid'] = 'na'; $et->data['logout'] = null; $et->show();
/** * Retrieve the absolute path of the simpleSAMLphp installation, * relative to the root of the website. * * For example: simplesaml/ * * The path will always end with a '/' and never have a leading slash. * * @return string The absolute path relative to the root of the website. */ public function getBaseURL() { $baseURL = $this->getString('baseurlpath', 'simplesaml/'); if (preg_match('/^\\*(.*)$/D', $baseURL, $matches)) { /* deprecated behaviour, will be removed in the future */ return SimpleSAML_Utilities::getFirstPathElement(false) . $matches[1]; } if (preg_match('#^https?://[^/]*/(.*)$#', $baseURL, $matches)) { /* we have a full url, we need to strip the path */ return $matches[1]; } elseif ($baseURL === '' || $baseURL === '/') { /* Root directory of site. */ return ''; } elseif (preg_match('#^/?([^/]?.*/)#D', $baseURL, $matches)) { /* local path only */ return $matches[1]; } else { /* invalid format */ throw new SimpleSAML_Error_Exception('Incorrect format for option \'baseurlpath\'. Value is: "' . $this->getString('baseurlpath', 'simplesaml/') . '". Valid format is in the form' . ' [(http|https)://(hostname|fqdn)[:port]]/[path/to/simplesaml/].'); } }
} if (!array_key_exists('token', $_REQUEST)) { throw new SimpleSAML_Error_BadRequest('Missing authToken.'); } $token = $_REQUEST['token']; if ($token !== $authTokenContactsSP) { throw new SimpleSAML_Error_Exception('Invalid AuthToken'); } $ldapconfig = SimpleSAML_Configuration::getConfig('config-login-feide.php'); $ldapStatusConfig = SimpleSAML_Configuration::getConfig('module_ldapstatus.php'); $debug = $ldapconfig->getValue('ldapDebug', FALSE); $orgs = $ldapconfig->getValue('organizations'); $locationTemplate = $ldapconfig->getValue('locationTemplate'); $isAdmin = FALSE; $secretURL = NULL; $ignore = ''; if (array_key_exists('ignore', $_REQUEST)) { $ignore = '&ignore=' . $_REQUEST['ignore']; } $secretKey = sha1('ldapstatus|' . SimpleSAML_Utilities::getSecretSalt() . '|hobbit'); $secretURL = SimpleSAML_Utilities::addURLparameter(SimpleSAML_Utilities::selfURLNoQuery(), array('key' => $secretKey)); function generateSecret($salt, $orgtest) { $secretKey = sha1('ldapstatus|' . $salt . '|' . $orgtest); return $secretKey; } header('Content-Type: text/plain'); foreach ($orgs as $orgkey => $org) { $url = SimpleSAML_Utilities::addURLparameter(SimpleSAML_Utilities::selfURLhost() . SimpleSAML_Utilities::getFirstPathElement() . '/module.php/ldapstatus/', array('orgtest' => $orgkey, 'output' => 'text', 'key' => generateSecret(SimpleSAML_Utilities::getSecretSalt(), $orgkey))); echo "0.0.0.0 " . $orgkey . " # noconn feidesjekk:" . $url . $ignore . ";OOOKKK\n"; }