From: Scott Cantor Date: Wed, 22 Feb 2012 17:59:27 +0000 (+0000) Subject: https://issues.shibboleth.net/jira/browse/CPPOST-73 X-Git-Tag: 2.5.0~34 X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-opensaml.git;a=commitdiff_plain;h=4a2ae144c8563efdc560abb73ea3a68da38d25c3 https://issues.shibboleth.net/jira/browse/CPPOST-73 --- diff --git a/saml/Makefile.am b/saml/Makefile.am index 1dab792..4c34286 100644 --- a/saml/Makefile.am +++ b/saml/Makefile.am @@ -146,6 +146,7 @@ libsaml_la_SOURCES = \ saml2/metadata/impl/ChainingMetadataProvider.cpp \ saml2/metadata/impl/DiscoverableMetadataProvider.cpp \ saml2/metadata/impl/DynamicMetadataProvider.cpp \ + saml2/metadata/impl/EntityAttributesMetadataFilter.cpp \ saml2/metadata/impl/EntityRoleMetadataFilter.cpp \ saml2/metadata/impl/FolderMetadataProvider.cpp \ saml2/metadata/impl/MetadataCredentialContext.cpp \ diff --git a/saml/saml2/metadata/MetadataFilter.h b/saml/saml2/metadata/MetadataFilter.h index c6b5ff9..ed89cbb 100644 --- a/saml/saml2/metadata/MetadataFilter.h +++ b/saml/saml2/metadata/MetadataFilter.h @@ -83,6 +83,9 @@ namespace opensaml { /** MetadataFilter that removes non-retained roles. */ #define ENTITYROLE_METADATA_FILTER "EntityRoleWhiteList" + /** MetadataFilter that adds EntityAttributes extension. */ + #define ENTITYATTR_METADATA_FILTER "EntityAttributes" + DECL_XMLTOOLING_EXCEPTION(MetadataFilterException,SAML_EXCEPTIONAPI(SAML_API),opensaml::saml2md,MetadataException,Exceptions related to metadata filtering); }; }; diff --git a/saml/saml2/metadata/impl/MetadataProvider.cpp b/saml/saml2/metadata/impl/MetadataProvider.cpp index f606131..f7b98d0 100644 --- a/saml/saml2/metadata/impl/MetadataProvider.cpp +++ b/saml/saml2/metadata/impl/MetadataProvider.cpp @@ -56,6 +56,7 @@ namespace opensaml { SAML_DLLLOCAL PluginManager::Factory SignatureMetadataFilterFactory; SAML_DLLLOCAL PluginManager::Factory RequireValidUntilMetadataFilterFactory; SAML_DLLLOCAL PluginManager::Factory EntityRoleMetadataFilterFactory; + SAML_DLLLOCAL PluginManager::Factory EntityAttributesMetadataFilterFactory; }; }; @@ -78,6 +79,8 @@ void SAML_API opensaml::saml2md::registerMetadataFilters() // additional name matching Java code SAMLConfig::getConfig().MetadataFilterManager.registerFactory("RequiredValidUntil", RequireValidUntilMetadataFilterFactory); SAMLConfig::getConfig().MetadataFilterManager.registerFactory(ENTITYROLE_METADATA_FILTER, EntityRoleMetadataFilterFactory); + SAMLConfig::getConfig().MetadataFilterManager.registerFactory(ENTITYATTR_METADATA_FILTER, EntityAttributesMetadataFilterFactory); + } static const XMLCh _MetadataFilter[] = UNICODE_LITERAL_14(M,e,t,a,d,a,t,a,F,i,l,t,e,r);