SignatureMetadataFilter::SignatureMetadataFilter(const DOMElement* e) : m_credResolver(NULL), m_trust(NULL)
{
if (e && e->hasAttributeNS(NULL,certificate)) {
- // Dummy up a file resolver.
- DOMElement* dummy = e->getOwnerDocument()->createElementNS(NULL,_CredentialResolver);
- DOMElement* child = e->getOwnerDocument()->createElementNS(NULL,Certificate);
- dummy->appendChild(child);
- DOMElement* path = e->getOwnerDocument()->createElementNS(NULL,Path);
- child->appendChild(path);
- path->appendChild(e->getOwnerDocument()->createTextNode(e->getAttributeNS(NULL,certificate)));
- m_credResolver = XMLToolingConfig::getConfig().CredentialResolverManager.newPlugin(FILESYSTEM_CREDENTIAL_RESOLVER,dummy);
+ // Use a file-based credential resolver rooted here.
+ m_credResolver = XMLToolingConfig::getConfig().CredentialResolverManager.newPlugin(FILESYSTEM_CREDENTIAL_RESOLVER,e);
return;
}
}
catch (exception& e) {
auto_ptr_char id(v[i]->getEntityID());
- log.info("filtering out entity (%s) after failed signature check: ", id.get(), e.what());
+ log.warn("filtering out entity (%s) after failed signature check: ", id.get(), e.what());
v.erase(v.begin() + i);
}
}
}
catch (exception& e) {
auto_ptr_char name(w[j]->getName());
- log.info("filtering out group (%s) after failed signature check: ", name.get(), e.what());
+ log.warn("filtering out group (%s) after failed signature check: ", name.get(), e.what());
w.erase(w.begin() + j);
}
}
// Set up criteria.
CredentialCriteria cc;
- cc.setUsage(CredentialCriteria::SIGNING_CREDENTIAL);
+ cc.setUsage(Credential::SIGNING_CREDENTIAL);
cc.setSignature(*sig, CredentialCriteria::KEYINFO_EXTRACTION_KEY);
if (peerName) {
auto_ptr_char pname(peerName);
throw MetadataFilterException("CredentialResolver did not supply a successful verification key.");
}
else {
- throw MetadataFilterException("CredentialResolver did not supply any verification keys.");
+ throw MetadataFilterException("CredentialResolver did not supply a successful verification key.");
}
}
else if (m_trust) {