From: cantor Date: Thu, 9 Sep 2010 02:27:56 +0000 (+0000) Subject: Attach auto-chains to DOM tree so namespace lookups work. X-Git-Tag: 2.4~27 X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fsp.git;a=commitdiff_plain;h=357e181d1655ba8acbca42cd0574db3696a0232f Attach auto-chains to DOM tree so namespace lookups work. git-svn-id: https://svn.middleware.georgetown.edu/cpp-sp/branches/REL_2@3312 cb58f699-b61c-0410-a6fe-9272a202ed29 --- diff --git a/shibsp/impl/XMLServiceProvider.cpp b/shibsp/impl/XMLServiceProvider.cpp index 2c31593..7fafe9c 100644 --- a/shibsp/impl/XMLServiceProvider.cpp +++ b/shibsp/impl/XMLServiceProvider.cpp @@ -107,7 +107,7 @@ namespace { class SHIBSP_DLLLOCAL XMLApplication : public Application, public Remoted, public DOMPropertySet, public DOMNodeFilter { public: - XMLApplication(const ServiceProvider*, const ProtocolProvider*, const DOMElement*, const XMLApplication* base=nullptr); + XMLApplication(const ServiceProvider*, const ProtocolProvider*, DOMElement*, const XMLApplication* base=nullptr); ~XMLApplication() { cleanup(); } const char* getHash() const {return m_hash.c_str();} @@ -202,7 +202,7 @@ namespace { const char* pluginType, const char* chainingType, const XMLCh* localName, - const DOMElement* e, + DOMElement* e, Category& log ); void doAttributeInfo(); @@ -216,7 +216,7 @@ namespace { string m_hash; std::pair m_attributePrefix; #ifndef SHIBSP_LITE - void doAttributePlugins(const DOMElement* e, Category& log); + void doAttributePlugins(DOMElement* e, Category& log); MetadataProvider* m_metadata; TrustEngine* m_trust; AttributeExtractor* m_attrExtractor; @@ -516,7 +516,7 @@ namespace shibsp { XMLApplication::XMLApplication( const ServiceProvider* sp, const ProtocolProvider* pp, - const DOMElement* e, + DOMElement* e, const XMLApplication* base ) : Application(sp), m_base(base), #ifndef SHIBSP_LITE @@ -681,7 +681,7 @@ template T* XMLApplication::doChainedPlugins( const char* pluginType, const char* chainingType, const XMLCh* localName, - const DOMElement* e, + DOMElement* e, Category& log ) { @@ -698,6 +698,7 @@ template T* XMLApplication::doChainedPlugins( } t = chainingType; child = chain; + e->appendChild(chain); } else { // Only a single one. @@ -1301,7 +1302,7 @@ void XMLApplication::doArtifactResolution(const ProtocolProvider& pp, const char } #ifndef SHIBSP_LITE -void XMLApplication::doAttributePlugins(const DOMElement* e, Category& log) +void XMLApplication::doAttributePlugins(DOMElement* e, Category& log) { SPConfig& conf = SPConfig::getConfig();