\r
// Append a Signature.\r
assertion->setSignature(SignatureBuilder::buildSignature());\r
- assertion->getSignature()->setSigningKey(m_key->clone());\r
+ Locker locker(m_resolver);\r
+ assertion->getSignature()->setSigningKey(m_resolver->getKey());\r
\r
// Build KeyInfo.\r
KeyInfo* keyInfo=KeyInfoBuilder::buildKeyInfo();\r
X509Data* x509Data=X509DataBuilder::buildX509Data();\r
keyInfo->getX509Datas().push_back(x509Data);\r
- for_each(m_certs.begin(),m_certs.end(),bind1st(_addcert(),x509Data));\r
+ for_each(m_resolver->getCertificates().begin(),m_resolver->getCertificates().end(),bind1st(_addcert(),x509Data));\r
assertion->getSignature()->setKeyInfo(keyInfo);\r
\r
// Sign assertion while marshalling.\r
response->setStatus(status);\r
response->getAssertions().push_back(assertion);\r
response->setSignature(SignatureBuilder::buildSignature());\r
- response->getSignature()->setSigningKey(m_key->clone());\r
+ response->getSignature()->setSigningKey(m_resolver->getKey());\r
response->getSignature()->setKeyInfo(keyInfo->cloneKeyInfo());\r
\r
// Sign response while marshalling.\r
spv.validate(assertion->getSignature());\r
spv.validate(response->getSignature());\r
\r
- SignatureValidator sv(new KeyResolver(m_key->clone()));\r
+ SignatureValidator sv(new KeyResolver(m_resolver->getKey()));\r
sv.validate(assertion->getSignature());\r
sv.validate(response->getSignature());\r
}\r