X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=saml%2Fsaml2%2Fbinding%2Fimpl%2FSAML2ArtifactEncoder.cpp;h=9ac6deab89e7329bc15f71c855eaa51da62ef828;hb=c072b75e6f6e05e24a1c35b952008b38d0d375c1;hp=75401c95575e948882e1248887c46ab22122105e;hpb=0f6286d0ffd9371c187ecb1775cbd199ed051af5;p=shibboleth%2Fcpp-opensaml.git diff --git a/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp b/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp index 75401c9..9ac6dea 100644 --- a/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp +++ b/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,8 +31,10 @@ #include #include #include +#include #include #include +#include #include #include @@ -86,8 +88,10 @@ SAML2ArtifactEncoder::SAML2ArtifactEncoder(const DOMElement* e, const XMLCh* ns) m_post = (flag && (*flag==chLatin_t || *flag==chDigit_1)); if (m_post) { auto_ptr_char t(e->getAttributeNS(ns, _template)); - if (t.get() && *t.get()) + if (t.get() && *t.get()) { m_template = t.get(); + XMLToolingConfig::getConfig().getPathResolver()->resolve(m_template, PathResolver::XMLTOOLING_CFG_FILE); + } } } } @@ -162,6 +166,9 @@ long SAML2ArtifactEncoder::encode( xmlObject->marshall((DOMDocument*)NULL,&sigs,credential); } } + + if (log.isDebugEnabled()) + log.debugStream() << "marshalled message:" << logging::eol << *xmlObject << logging::eol; // Store the message. Last step in storage will be to delete the XML. log.debug("storing artifact and content in map"); @@ -195,6 +202,9 @@ long SAML2ArtifactEncoder::encode( stringstream s; engine->run(infile, s, params); httpResponse->setContentType("text/html"); + httpResponse->setResponseHeader("Expires", "01-Jan-1997 12:00:00 GMT"); + httpResponse->setResponseHeader("Cache-Control", "no-cache, no-store, must-revalidate, private"); + httpResponse->setResponseHeader("Pragma", "no-cache"); return httpResponse->sendResponse(s); } }