From 68c387dc9a111612ffa9919e39df006f5ba4b7c5 Mon Sep 17 00:00:00 2001 From: Scott Cantor Date: Fri, 16 Oct 2009 02:11:42 +0000 Subject: [PATCH] https://issues.shibboleth.net/jira/browse/CPPXT-45 --- saml/saml1/core/impl/AssertionsImpl.cpp | 5 +++++ saml/saml1/core/impl/ProtocolsImpl.cpp | 10 ++++++++++ saml/saml2/core/impl/Assertions20Impl.cpp | 2 +- saml/saml2/core/impl/Protocols20Impl.cpp | 4 ++-- saml/saml2/metadata/impl/MetadataImpl.cpp | 8 ++++---- 5 files changed, 22 insertions(+), 7 deletions(-) diff --git a/saml/saml1/core/impl/AssertionsImpl.cpp b/saml/saml1/core/impl/AssertionsImpl.cpp index 8f1f575..affaf2f 100644 --- a/saml/saml1/core/impl/AssertionsImpl.cpp +++ b/saml/saml1/core/impl/AssertionsImpl.cpp @@ -1047,6 +1047,11 @@ namespace opensaml { const XMLCh* getID() const { return getAssertionID(); } + void releaseDOM() const { + if (getDOM()) + getDOM()->removeAttributeNS(NULL, ASSERTIONID_ATTRIB_NAME); + AbstractDOMCachingXMLObject::releaseDOM(); + } IMPL_STRING_ATTRIB(Issuer); IMPL_DATETIME_ATTRIB(IssueInstant,0); IMPL_TYPED_CHILD(Conditions); diff --git a/saml/saml1/core/impl/ProtocolsImpl.cpp b/saml/saml1/core/impl/ProtocolsImpl.cpp index badec51..b99bab0 100644 --- a/saml/saml1/core/impl/ProtocolsImpl.cpp +++ b/saml/saml1/core/impl/ProtocolsImpl.cpp @@ -379,6 +379,11 @@ namespace opensaml { const XMLCh* getID() const { return getRequestID(); } + void releaseDOM() const { + if (getDOM()) + getDOM()->removeAttributeNS(NULL, REQUESTID_ATTRIB_NAME); + AbstractDOMCachingXMLObject::releaseDOM(); + } IMPL_DATETIME_ATTRIB(IssueInstant,0); IMPL_TYPED_CHILDREN(RespondWith,m_pos_Signature); @@ -717,6 +722,11 @@ namespace opensaml { const XMLCh* getID() const { return getResponseID(); } + void releaseDOM() const { + if (getDOM()) + getDOM()->removeAttributeNS(NULL, RESPONSEID_ATTRIB_NAME); + AbstractDOMCachingXMLObject::releaseDOM(); + } IMPL_STRING_ATTRIB(InResponseTo); IMPL_DATETIME_ATTRIB(IssueInstant,0); IMPL_STRING_ATTRIB(Recipient); diff --git a/saml/saml2/core/impl/Assertions20Impl.cpp b/saml/saml2/core/impl/Assertions20Impl.cpp index 6b659ce..439536e 100644 --- a/saml/saml2/core/impl/Assertions20Impl.cpp +++ b/saml/saml2/core/impl/Assertions20Impl.cpp @@ -1588,7 +1588,7 @@ namespace opensaml { IMPL_XMLOBJECT_CLONE(Assertion); IMPL_STRING_ATTRIB(Version); - IMPL_ID_ATTRIB(ID); + IMPL_ID_ATTRIB_EX(ID,ID,NULL); IMPL_DATETIME_ATTRIB(IssueInstant,0); IMPL_TYPED_CHILD(Issuer); IMPL_TYPED_CHILD(Subject); diff --git a/saml/saml2/core/impl/Protocols20Impl.cpp b/saml/saml2/core/impl/Protocols20Impl.cpp index a97eebb..2b11192 100644 --- a/saml/saml2/core/impl/Protocols20Impl.cpp +++ b/saml/saml2/core/impl/Protocols20Impl.cpp @@ -315,7 +315,7 @@ namespace opensaml { } IMPL_STRING_ATTRIB(Version); - IMPL_ID_ATTRIB(ID); + IMPL_ID_ATTRIB_EX(ID,ID,NULL); IMPL_DATETIME_ATTRIB(IssueInstant,0); IMPL_STRING_ATTRIB(Destination); IMPL_STRING_ATTRIB(Consent); @@ -1075,7 +1075,7 @@ namespace opensaml { } IMPL_STRING_ATTRIB(Version); - IMPL_ID_ATTRIB(ID); + IMPL_ID_ATTRIB_EX(ID,ID,NULL); IMPL_STRING_ATTRIB(InResponseTo); IMPL_DATETIME_ATTRIB(IssueInstant,0); IMPL_STRING_ATTRIB(Destination); diff --git a/saml/saml2/metadata/impl/MetadataImpl.cpp b/saml/saml2/metadata/impl/MetadataImpl.cpp index f9e5547..16abb4c 100644 --- a/saml/saml2/metadata/impl/MetadataImpl.cpp +++ b/saml/saml2/metadata/impl/MetadataImpl.cpp @@ -993,7 +993,7 @@ namespace opensaml { m_Signature->setContentReference(new opensaml::ContentReference(*this)); } - IMPL_ID_ATTRIB(ID); + IMPL_ID_ATTRIB_EX(ID,ID,NULL); IMPL_STRING_ATTRIB(ProtocolSupportEnumeration); IMPL_STRING_ATTRIB(ErrorURL); IMPL_DATETIME_ATTRIB(ValidUntil,SAMLTIME_MAX); @@ -2017,7 +2017,7 @@ namespace opensaml { m_Signature->setContentReference(new opensaml::ContentReference(*this)); } - IMPL_ID_ATTRIB(ID); + IMPL_ID_ATTRIB_EX(ID,ID,NULL); IMPL_STRING_ATTRIB(AffiliationOwnerID); IMPL_DATETIME_ATTRIB(ValidUntil,SAMLTIME_MAX); IMPL_DURATION_ATTRIB(CacheDuration,0); @@ -2225,7 +2225,7 @@ namespace opensaml { m_Signature->setContentReference(new opensaml::ContentReference(*this)); } - IMPL_ID_ATTRIB(ID); + IMPL_ID_ATTRIB_EX(ID,ID,NULL); IMPL_STRING_ATTRIB(EntityID); IMPL_DATETIME_ATTRIB(ValidUntil,SAMLTIME_MAX); IMPL_DURATION_ATTRIB(CacheDuration,0); @@ -2405,7 +2405,7 @@ namespace opensaml { m_Signature->setContentReference(new opensaml::ContentReference(*this)); } - IMPL_ID_ATTRIB(ID); + IMPL_ID_ATTRIB_EX(ID,ID,NULL); IMPL_STRING_ATTRIB(Name); IMPL_DATETIME_ATTRIB(ValidUntil,SAMLTIME_MAX); IMPL_DURATION_ATTRIB(CacheDuration,0); -- 2.1.4