X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=samltest%2Fsignature%2FSAML1RequestTest.h;h=17d2450437037eb3adc830f9f5e0661daddf78eb;hb=e9554c255ad3c91c7c4976e7a1a54905903e66a2;hp=2909ad8e1581a26db95157504c1d1486bd32b26c;hpb=0beb48ce00d0b6a3f177f7d9b48af1870ee92190;p=shibboleth%2Fcpp-opensaml.git diff --git a/samltest/signature/SAML1RequestTest.h b/samltest/signature/SAML1RequestTest.h index 2909ad8..17d2450 100644 --- a/samltest/signature/SAML1RequestTest.h +++ b/samltest/signature/SAML1RequestTest.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2010 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -58,21 +58,18 @@ public: // Append a Signature. Signature* sig=SignatureBuilder::buildSignature(); request->setSignature(sig); - Locker locker(m_resolver); - sig->setSigningKey(m_resolver->getKey()); - - // Build KeyInfo. - KeyInfo* keyInfo=KeyInfoBuilder::buildKeyInfo(); - X509Data* x509Data=X509DataBuilder::buildX509Data(); - keyInfo->getX509Datas().push_back(x509Data); - for_each(m_resolver->getCertificates().begin(),m_resolver->getCertificates().end(),bind1st(_addcert(),x509Data)); - sig->setKeyInfo(keyInfo); // Sign while marshalling. vector sigs(1,sig); - DOMElement* rootElement = NULL; + CredentialCriteria cc; + cc.setUsage(Credential::SIGNING_CREDENTIAL); + Locker locker(m_resolver); + const Credential* cred = m_resolver->resolve(&cc); + TSM_ASSERT("Retrieved credential was null", cred!=nullptr); + + DOMElement* rootElement = nullptr; try { - rootElement=request->marshall((DOMDocument*)NULL,&sigs); + rootElement=request->marshall((DOMDocument*)nullptr,&sigs,cred); } catch (XMLToolingException& e) { TS_TRACE(e.what()); @@ -90,7 +87,7 @@ public: try { opensaml::SignatureProfileValidator spv; - SignatureValidator sv(new KeyResolver(m_resolver->getKey())); + SignatureValidator sv(cred); spv.validate(dynamic_cast(request2.get())->getSignature()); sv.validate(dynamic_cast(request2.get())->getSignature()); }