https://issues.shibboleth.net/jira/browse/CPPOST-11
[shibboleth/cpp-opensaml.git] / saml / saml2 / metadata / impl / SignatureMetadataFilter.cpp
index 4e67a8e..bdd2852 100644 (file)
@@ -147,6 +147,7 @@ void SignatureMetadataFilter::doFilter(XMLObject& xmlObject) const
         if (!entity.getSignature())
             throw MetadataFilterException("Root metadata element was unsigned.");
         verifySignature(entity.getSignature(), entity.getEntityID());
+        return;
     }
     catch (bad_cast) {
     }
@@ -181,7 +182,7 @@ void SignatureMetadataFilter::doFilter(EntitiesDescriptor& entities, bool rootOb
     VectorOf(EntitiesDescriptor) w=entities.getEntitiesDescriptors();
     for (VectorOf(EntitiesDescriptor)::size_type j=0; j<w.size(); ) {
         try {
-            verifySignature(w[j]->getSignature(), w[j]->getName());
+            doFilter(*w[j], false);
             j++;
         }
         catch (exception& e) {