<?php $config = SimpleSAML_Configuration::getInstance(); $mconfig = SimpleSAML_Configuration::getOptionalConfig('config-metarefresh.php'); SimpleSAML\Utils\Auth::requireAdmin(); SimpleSAML\Logger::setCaptureLog(TRUE); $sets = $mconfig->getConfigList('sets', array()); foreach ($sets as $setkey => $set) { SimpleSAML\Logger::info('[metarefresh]: Executing set [' . $setkey . ']'); try { $expireAfter = $set->getInteger('expireAfter', NULL); if ($expireAfter !== NULL) { $expire = time() + $expireAfter; } else { $expire = NULL; } $metaloader = new sspmod_metarefresh_MetaLoader($expire); # Get global black/whitelists $blacklist = $mconfig->getArray('blacklist', array()); $whitelist = $mconfig->getArray('whitelist', array()); // get global type filters $available_types = array('saml20-idp-remote', 'saml20-sp-remote', 'shib13-idp-remote', 'shib13-sp-remote', 'attributeauthority-remote'); $set_types = $set->getArrayize('types', $available_types); foreach ($set->getArray('sources') as $source) { // filter metadata by type of entity if (isset($source['types'])) { $metaloader->setTypes($source['types']); } else { $metaloader->setTypes($set_types); } # Merge global and src specific blacklists