diff --git a/locallib.php b/locallib.php index bf615bba1..0c78d6f74 100644 --- a/locallib.php +++ b/locallib.php @@ -146,57 +146,57 @@ function auth_saml2_get_sp_metadata($baseurl = '') { $metaArray20['NameIDFormat'] = $format; } - $name = $spconfig->getLocalizedString('name', NULL); - $attributes = $spconfig->getArray('attributes', array()); + $name = $spconfig->getOptionalLocalizedString('name', NULL); + $attributes = $spconfig->getOptionalArray('attributes', array()); if ($name !== NULL && !empty($attributes)) { $metaArray20['name'] = $name; $metaArray20['attributes'] = $attributes; - $metaArray20['attributes.required'] = $spconfig->getArray('attributes.required', array()); + $metaArray20['attributes.required'] = $spconfig->getOptionalArray('attributes.required', array()); if (empty($metaArray20['attributes.required'])) { unset($metaArray20['attributes.required']); } - $description = $spconfig->getArray('description', NULL); + $description = $spconfig->getOptionalArray('description', NULL); if ($description !== NULL) { $metaArray20['description'] = $description; } - $nameFormat = $spconfig->getString('attributes.NameFormat', NULL); + $nameFormat = $spconfig->getOptionalString('attributes.NameFormat', NULL); if ($nameFormat !== NULL) { $metaArray20['attributes.NameFormat'] = $nameFormat; } } // add organization info - $orgName = $spconfig->getLocalizedString('OrganizationName', NULL); + $orgName = $spconfig->getOptionalLocalizedString('OrganizationName', NULL); if ($orgName !== NULL) { $metaArray20['OrganizationName'] = $orgName; - $metaArray20['OrganizationDisplayName'] = $spconfig->getLocalizedString('OrganizationDisplayName', NULL); + $metaArray20['OrganizationDisplayName'] = $spconfig->getOptionalLocalizedString('OrganizationDisplayName', NULL); if ($metaArray20['OrganizationDisplayName'] === NULL) { $metaArray20['OrganizationDisplayName'] = $orgName; } - $metaArray20['OrganizationURL'] = $spconfig->getLocalizedString('OrganizationURL', NULL); + $metaArray20['OrganizationURL'] = $spconfig->getOptionalLocalizedString('OrganizationURL', NULL); if ($metaArray20['OrganizationURL'] === NULL) { throw new SimpleSAML_Error_Exception('If OrganizationName is set, OrganizationURL must also be set.'); } } if ($spconfig->hasValue('contacts')) { - $contacts = $spconfig->getArray('contacts'); + $contacts = $spconfig->getOptionalArray('contacts'); foreach ($contacts as $contact) { $metaArray20['contacts'][] = \SimpleSAML\Utils\Config\Metadata::getContact($contact); } } // add technical contact - $email = $config->getString('technicalcontact_email', 'na@example.org', FALSE); + $email = $config->getOptionalString('technicalcontact_email', 'na@example.org'); if ($email && $email !== 'na@example.org') { $techcontact['emailAddress'] = $email; - $techcontact['name'] = $config->getString('technicalcontact_name', NULL); + $techcontact['name'] = $config->getOptionalString('technicalcontact_name', NULL); $techcontact['contactType'] = 'technical'; $metaArray20['contacts'][] = \SimpleSAML\Utils\Config\Metadata::getContact($techcontact); } @@ -210,27 +210,27 @@ function auth_saml2_get_sp_metadata($baseurl = '') { // add EntityAttributes extension if ($spconfig->hasValue('EntityAttributes')) { - $metaArray20['EntityAttributes'] = $spconfig->getArray('EntityAttributes'); + $metaArray20['EntityAttributes'] = $spconfig->getOptionalArray('EntityAttributes'); } // add UIInfo extension if ($spconfig->hasValue('UIInfo')) { - $metaArray20['UIInfo'] = $spconfig->getArray('UIInfo'); + $metaArray20['UIInfo'] = $spconfig->getOptionalArray('UIInfo'); } // add RegistrationInfo extension if ($spconfig->hasValue('RegistrationInfo')) { - $metaArray20['RegistrationInfo'] = $spconfig->getArray('RegistrationInfo'); + $metaArray20['RegistrationInfo'] = $spconfig->getOptionalArray('RegistrationInfo'); } // add signature options if ($spconfig->hasValue('WantAssertionsSigned')) { - $metaArray20['saml20.sign.assertion'] = $spconfig->getBoolean('WantAssertionsSigned'); + $metaArray20['saml20.sign.assertion'] = $spconfig->getOptionalBoolean('WantAssertionsSigned', false); } if ($spconfig->hasValue('redirect.sign')) { - $metaArray20['redirect.validate'] = $spconfig->getBoolean('redirect.sign'); + $metaArray20['redirect.validate'] = $spconfig->getOptionalBoolean('redirect.sign', false); } elseif ($spconfig->hasValue('sign.authnrequest')) { - $metaArray20['validate.authnrequest'] = $spconfig->getBoolean('sign.authnrequest'); + $metaArray20['validate.authnrequest'] = $spconfig->getOptionalBoolean('sign.authnrequest', false); } $supported_protocols = array(SAML2\Constants::NS_SAMLP);