From e4cdf7c807c63420d22dbf29143ce5fc75cd3848 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=85kre=20Solberg?= <andreas.solberg@uninett.no> Date: Mon, 22 Jun 2009 05:42:47 +0000 Subject: [PATCH] Do not trust expired metadata.. throw exception... git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@1530 44740490-163a-0410-bde0-09ae8108e29a --- lib/SimpleSAML/Metadata/MetaDataStorageHandler.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/SimpleSAML/Metadata/MetaDataStorageHandler.php b/lib/SimpleSAML/Metadata/MetaDataStorageHandler.php index 66953f9b9..eb9d38596 100644 --- a/lib/SimpleSAML/Metadata/MetaDataStorageHandler.php +++ b/lib/SimpleSAML/Metadata/MetaDataStorageHandler.php @@ -295,7 +295,17 @@ class SimpleSAML_Metadata_MetaDataStorageHandler { foreach($this->sources as $source) { $metadata = $source->getMetaData($index, $set); + if($metadata !== NULL) { + + if (array_key_exists('expire', $metadata)) { + if ($metadata['expire'] < time()) { + throw new Exception('Metadata for the entity [' . $index . '] expired ' . + (time() - $metadata['expire']) . ' seconds ago.' + ); + } + } + $metadata['metadata-index'] = $index; $metadata['metadata-set'] = $set; return $metadata; -- GitLab