From 69f67dc34083c60d3fc8e3601472f2e6be5cdd0f Mon Sep 17 00:00:00 2001 From: Jaime Perez Crespo <jaime.perez@uninett.no> Date: Tue, 16 Feb 2016 09:19:44 +0100 Subject: [PATCH] Desist on the optimization introduced in d32eb4a, it doesn't work. --- lib/SimpleSAML/Utils/Config/Metadata.php | 28 ++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/lib/SimpleSAML/Utils/Config/Metadata.php b/lib/SimpleSAML/Utils/Config/Metadata.php index 3ac022ba3..3e50fab4f 100644 --- a/lib/SimpleSAML/Utils/Config/Metadata.php +++ b/lib/SimpleSAML/Utils/Config/Metadata.php @@ -257,10 +257,30 @@ class Metadata */ public static function isHiddenFromDiscovery(array $metadata) { - try { - return @in_array(self::$HIDE_FROM_DISCOVERY, $metadata['EntityAttributes'][self::$ENTITY_CATEGORY]); - } catch (\Exception $e) { + if (!is_array($metadata)) { + return false; } - return false; + + if (!array_key_exists('EntityAttributes', $metadata)) { + return false; + } + + if (!is_array($metadata['EntityAttributes'])) { + return false; + } + + if (!array_key_exists(self::$ENTITY_CATEGORY, $metadata['EntityAttributes'])) { + return false; + } + + if (!is_array($metadata['EntityAttributes'][self::$ENTITY_CATEGORY])) { + return false; + } + + if (!in_array(self::$HIDE_FROM_DISCOVERY, $metadata['EntityAttributes'][self::$ENTITY_CATEGORY])) { + return false; + } + + return true; } } -- GitLab