https://issues.shibboleth.net/jira/browse/SSPCPP-343
authorScott Cantor <cantor.2@osu.edu>
Wed, 21 Sep 2011 19:37:05 +0000 (19:37 +0000)
committerScott Cantor <cantor.2@osu.edu>
Wed, 21 Sep 2011 19:37:05 +0000 (19:37 +0000)
shibsp/Makefile.am
shibsp/attribute/resolver/AttributeExtractor.h
shibsp/attribute/resolver/impl/ChainingAttributeExtractor.cpp
shibsp/shibsp.vcxproj
shibsp/shibsp.vcxproj.filters

index 34ce43c..7e2a742 100644 (file)
@@ -205,6 +205,7 @@ libshibsp_la_SOURCES = \
        attribute/resolver/impl/ChainingAttributeResolver.cpp \
        attribute/resolver/impl/QueryAttributeResolver.cpp \
        attribute/resolver/impl/SimpleAggregationAttributeResolver.cpp \
+    attribute/resolver/impl/AuthnAuthorityAttributeExtractor.cpp \
        attribute/resolver/impl/ChainingAttributeExtractor.cpp \
        attribute/resolver/impl/DelegationAttributeExtractor.cpp \
        attribute/resolver/impl/KeyDescriptorAttributeExtractor.cpp \
index ba44eeb..91ec551 100644 (file)
@@ -109,6 +109,9 @@ namespace shibsp {
     /** AttributeExtractor for KeyInfo information. */
     #define KEYDESCRIPTOR_ATTRIBUTE_EXTRACTOR "KeyDescriptor"
 
+    /** AttributeExtractor for AuthenticatingAuthority information. */
+    #define AUTHNAUTHORITY_ATTRIBUTE_EXTRACTOR "AuthnAuthority"
+
     /** AttributeExtractor based on chaining together other extractors. */
     #define CHAINING_ATTRIBUTE_EXTRACTOR "Chaining"
 };
index b6d902a..22288c9 100644 (file)
@@ -82,6 +82,7 @@ namespace shibsp {
     static const XMLCh _AttributeExtractor[] =  UNICODE_LITERAL_18(A,t,t,r,i,b,u,t,e,E,x,t,r,a,c,t,o,r);
     static const XMLCh _type[] =                UNICODE_LITERAL_4(t,y,p,e);
 
+    SHIBSP_DLLLOCAL PluginManager<AttributeExtractor,string,const DOMElement*>::Factory AuthnAuthorityAttributeExtractorFactory;
     SHIBSP_DLLLOCAL PluginManager<AttributeExtractor,string,const DOMElement*>::Factory DelegationAttributeExtractorFactory;
     SHIBSP_DLLLOCAL PluginManager<AttributeExtractor,string,const DOMElement*>::Factory KeyDescriptorAttributeExtractorFactory;
     SHIBSP_DLLLOCAL PluginManager<AttributeExtractor,string,const DOMElement*>::Factory XMLAttributeExtractorFactory;
@@ -93,6 +94,7 @@ namespace shibsp {
 
 void SHIBSP_API shibsp::registerAttributeExtractors()
 {
+    SPConfig::getConfig().AttributeExtractorManager.registerFactory(AUTHNAUTHORITY_ATTRIBUTE_EXTRACTOR, AuthnAuthorityAttributeExtractorFactory);
     SPConfig::getConfig().AttributeExtractorManager.registerFactory(DELEGATION_ATTRIBUTE_EXTRACTOR, DelegationAttributeExtractorFactory);
     SPConfig::getConfig().AttributeExtractorManager.registerFactory(KEYDESCRIPTOR_ATTRIBUTE_EXTRACTOR, KeyDescriptorAttributeExtractorFactory);
     SPConfig::getConfig().AttributeExtractorManager.registerFactory(XML_ATTRIBUTE_EXTRACTOR, XMLAttributeExtractorFactory);
index ba83744..760dd00 100644 (file)
     <ClCompile Include="attribute\Base64AttributeDecoder.cpp" />\r
     <ClCompile Include="attribute\filtering\impl\DummyAttributeFilter.cpp" />\r
     <ClCompile Include="attribute\filtering\impl\NameIDQualifierStringFunctor.cpp" />\r
+    <ClCompile Include="attribute\resolver\impl\AuthnAuthorityAttributeExtractor.cpp" />\r
     <ClCompile Include="binding\impl\XMLProtocolProvider.cpp" />\r
     <ClCompile Include="handler\impl\DiscoveryFeed.cpp" />\r
     <ClCompile Include="handler\impl\LogoutInitiator.cpp" />\r
index 2d87b96..bf16108 100644 (file)
     <ClCompile Include="version.cpp">\r
       <Filter>Source Files</Filter>\r
     </ClCompile>\r
+    <ClCompile Include="attribute\resolver\impl\AuthnAuthorityAttributeExtractor.cpp">\r
+      <Filter>Source Files\attribute\resolver\impl</Filter>\r
+    </ClCompile>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <ClInclude Include="remoting\impl\SocketListener.h">\r