From 6889d7b68b7d39daec113a2cea83e3a6fdb37f74 Mon Sep 17 00:00:00 2001 From: Scott Cantor Date: Mon, 5 Feb 2007 02:31:06 +0000 Subject: [PATCH] Remove xmlproviders from build, deleted old AAP interface. --- Makefile.am | 2 +- Shibboleth.sln | 45 +++++--------- configure.ac | 2 +- shib-target/shib-ini.cpp | 25 +------- shib-target/shib-target.h | 2 - shib/Makefile.am | 1 - shib/Metadata.cpp | 146 ---------------------------------------------- shib/shib.h | 48 --------------- shib/shib.vcproj | 4 -- test/shibtest.cpp | 12 ---- 10 files changed, 19 insertions(+), 268 deletions(-) delete mode 100644 shib/Metadata.cpp diff --git a/Makefile.am b/Makefile.am index ae9a563..c71aaf5 100644 --- a/Makefile.am +++ b/Makefile.am @@ -22,7 +22,7 @@ WANT_SUBDIRS = @WANT_SUBDIRS@ SUBDIRS = $(WANT_SUBDIRS) DIST_SUBDIRS = doc shib schemas configs shib-target shar test \ - apache siterefresh odbc_ccache shib-mysql-ccache xmlproviders \ + apache siterefresh odbc_ccache shib-mysql-ccache \ nsapi_shib selinux all-local: shibboleth.spec pkginfo diff --git a/Shibboleth.sln b/Shibboleth.sln index 2262a09..beabdcc 100644 --- a/Shibboleth.sln +++ b/Shibboleth.sln @@ -2,60 +2,59 @@ Microsoft Visual Studio Solution File, Format Version 9.00 # Visual Studio 2005 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "isapi_shib", "isapi_shib\isapi_shib.vcproj", "{87C25D4E-8D19-4513-B0BA-BC668BC2DEE3}" ProjectSection(ProjectDependencies) = postProject - {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} + {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "isapi_shib_gui", "isapi_shib_gui\isapi_shib_gui.vcproj", "{D341DCD8-7DCD-43A2-8559-C07DAB838711}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_shib13", "apache\mod_shib13.vcproj", "{D243B43E-728E-4F32-BDFF-B3A897037C6D}" ProjectSection(ProjectDependencies) = postProject - {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} + {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_shib20", "apache\mod_shib20.vcproj", "{68E9568B-476C-4289-B93C-893432378ADC}" ProjectSection(ProjectDependencies) = postProject - {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} + {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "nsapi_shib", "nsapi_shib\nsapi_shib.vcproj", "{1396D80A-8672-4224-9B02-95F3F4207CDB}" ProjectSection(ProjectDependencies) = postProject - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} - {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} + {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "posttest", "posttest\posttest.vcproj", "{16E70C47-789E-43D5-AFDF-964D386C3CB5}" ProjectSection(ProjectDependencies) = postProject - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} - {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} + {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shar", "shar\shar.vcproj", "{F13141B5-6C87-40BB-8D4E-5CC56EBB4C59}" ProjectSection(ProjectDependencies) = postProject - {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shib", "shib\shib.vcproj", "{E6CAB6C8-1D73-4410-970A-52BF9EC57810}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shibtarget", "shib-target\shibtarget.vcproj", "{84890110-2190-4AAE-9BDC-58F90DF71E4F}" ProjectSection(ProjectDependencies) = postProject - {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} + {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shibtest", "shibtest\shibtest.vcproj", "{67AF22A3-C26E-40BE-B0CA-2ABEE5123763}" ProjectSection(ProjectDependencies) = postProject - {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} + {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} EndProjectSection EndProject @@ -63,23 +62,16 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "siterefresh", "siterefresh\ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testclient", "shar\testclient.vcproj", "{B3F1E899-86F9-4D3A-8026-B57D1A5B90B1}" ProjectSection(ProjectDependencies) = postProject - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} - {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlproviders", "xmlproviders\xmlproviders.vcproj", "{68E46D06-6B91-4C59-A700-78DD4D4C420B}" - ProjectSection(ProjectDependencies) = postProject - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} - {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} EndProjectSection EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_shib22", "apache\mod_shib22.vcproj", "{B44C0852-83B8-4FB2-A86E-097C9C8256D0}" ProjectSection(ProjectDependencies) = postProject - {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} - {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} = {81F0F7A6-DC36-46EF-957F-F9E81D4403F6} + {84890110-2190-4AAE-9BDC-58F90DF71E4F} = {84890110-2190-4AAE-9BDC-58F90DF71E4F} + {E6CAB6C8-1D73-4410-970A-52BF9EC57810} = {E6CAB6C8-1D73-4410-970A-52BF9EC57810} EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Server Modules", "Server Modules", "{26BA8F84-6E42-41FA-9B13-5D3F4B5B2050}" @@ -146,10 +138,6 @@ Global {B3F1E899-86F9-4D3A-8026-B57D1A5B90B1}.Debug|Win32.Build.0 = Debug|Win32 {B3F1E899-86F9-4D3A-8026-B57D1A5B90B1}.Release|Win32.ActiveCfg = Release|Win32 {B3F1E899-86F9-4D3A-8026-B57D1A5B90B1}.Release|Win32.Build.0 = Release|Win32 - {68E46D06-6B91-4C59-A700-78DD4D4C420B}.Debug|Win32.ActiveCfg = Debug|Win32 - {68E46D06-6B91-4C59-A700-78DD4D4C420B}.Debug|Win32.Build.0 = Debug|Win32 - {68E46D06-6B91-4C59-A700-78DD4D4C420B}.Release|Win32.ActiveCfg = Release|Win32 - {68E46D06-6B91-4C59-A700-78DD4D4C420B}.Release|Win32.Build.0 = Release|Win32 {B44C0852-83B8-4FB2-A86E-097C9C8256D0}.Debug|Win32.ActiveCfg = Debug|Win32 {B44C0852-83B8-4FB2-A86E-097C9C8256D0}.Debug|Win32.Build.0 = Debug|Win32 {B44C0852-83B8-4FB2-A86E-097C9C8256D0}.Release|Win32.ActiveCfg = Release|Win32 @@ -172,7 +160,6 @@ Global {1396D80A-8672-4224-9B02-95F3F4207CDB} = {26BA8F84-6E42-41FA-9B13-5D3F4B5B2050} {B44C0852-83B8-4FB2-A86E-097C9C8256D0} = {26BA8F84-6E42-41FA-9B13-5D3F4B5B2050} {87C25D4E-8D19-4513-B0BA-BC668BC2DEE3} = {26BA8F84-6E42-41FA-9B13-5D3F4B5B2050} - {68E46D06-6B91-4C59-A700-78DD4D4C420B} = {96AE4FC9-45EF-4C18-9F3B-EDA439E26E4C} {D341DCD8-7DCD-43A2-8559-C07DAB838711} = {96AE4FC9-45EF-4C18-9F3B-EDA439E26E4C} {666A63A7-983F-4C19-8411-207F24305197} = {96AE4FC9-45EF-4C18-9F3B-EDA439E26E4C} {67AF22A3-C26E-40BE-B0CA-2ABEE5123763} = {FED80230-119E-4B2F-9F53-D2660A5F022B} diff --git a/configure.ac b/configure.ac index a2477f3..33f0698 100644 --- a/configure.ac +++ b/configure.ac @@ -195,7 +195,7 @@ saml::SAMLConfig::getConfig(); WANT_SUBDIRS="doc shib schemas configs shib-target shar siterefresh test xmlproviders" AC_CONFIG_FILES([Makefile doc/Makefile shib/Makefile schemas/Makefile \ configs/Makefile shib-target/Makefile shar/Makefile siterefresh/Makefile \ - test/Makefile xmlproviders/Makefile selinux/Makefile]) + test/Makefile selinux/Makefile]) # diff --git a/shib-target/shib-ini.cpp b/shib-target/shib-ini.cpp index 0372348..8f328d3 100644 --- a/shib-target/shib-ini.cpp +++ b/shib-target/shib-ini.cpp @@ -72,7 +72,6 @@ namespace { // IApplication const char* getId() const {return getString("id").second;} const char* getHash() const {return m_hash.c_str();} - Iterator getAAPProviders() const; MetadataProvider* getMetadataProvider() const; TrustEngine* getTrustEngine() const; const vector& getAudiences() const; @@ -103,7 +102,6 @@ namespace { const ServiceProvider* m_sp; // this is ok because its locking scope includes us const XMLApplication* m_base; string m_hash; - vector m_aaps; MetadataProvider* m_metadata; TrustEngine* m_trust; vector m_audiences; @@ -457,22 +455,7 @@ XMLApplication::XMLApplication( if (conf.isEnabled(SPConfig::AAP)) { child = XMLHelper::getFirstChildElement(e,AAPProvider); while (child) { - xmltooling::auto_ptr_char type(child->getAttributeNS(NULL,_type)); - log.info("building AAP provider of type %s...",type.get()); - try { - IPlugIn* plugin=shibConf.getPlugMgr().newPlugin(type.get(),child); - IAAP* aap=dynamic_cast(plugin); - if (aap) - m_aaps.push_back(aap); - else { - delete plugin; - log.crit("plugin was not an AAP provider"); - } - } - catch (exception& ex) { - log.crit("error building AAP provider: %s", ex.what()); - } - + // TODO: some kind of compatibility child = XMLHelper::getNextSiblingElement(child,AAPProvider); } } @@ -597,7 +580,6 @@ void XMLApplication::cleanup() #else for_each(m_credMap.begin(),m_credMap.end(),xmltooling::cleanup_pair()); #endif - for_each(m_aaps.begin(),m_aaps.end(),xmltooling::cleanup()); delete m_trust; delete m_metadata; @@ -675,11 +657,6 @@ const PropertySet* XMLApplication::getPropertySet(const char* name, const char* return m_base->getPropertySet(name,ns); } -Iterator XMLApplication::getAAPProviders() const -{ - return (m_aaps.empty() && m_base) ? m_base->getAAPProviders() : m_aaps; -} - MetadataProvider* XMLApplication::getMetadataProvider() const { return (!m_metadata && m_base) ? m_base->getMetadataProvider() : m_metadata; diff --git a/shib-target/shib-target.h b/shib-target/shib-target.h index 5eb53ee..6297b2d 100644 --- a/shib-target/shib-target.h +++ b/shib-target/shib-target.h @@ -66,8 +66,6 @@ namespace shibtarget { struct SHIBTARGET_EXPORTS IApplication : public virtual shibsp::Application, public virtual shibboleth::ShibBrowserProfile::ITokenValidator { - virtual saml::Iterator getAAPProviders() const=0; - // caller is borrowing object, must use within scope of config lock virtual const saml::SAMLBrowserProfile* getBrowserProfile() const=0; virtual const saml::SAMLBinding* getBinding(const XMLCh* binding) const=0; diff --git a/shib/Makefile.am b/shib/Makefile.am index 04bb224..dd0b98c 100644 --- a/shib/Makefile.am +++ b/shib/Makefile.am @@ -9,7 +9,6 @@ libshib_HEADERS = shib.h noinst_HEADERS = internal.h libshib_la_SOURCES = \ - Metadata.cpp \ ShibConfig.cpp \ ShibBrowserProfile.cpp \ ScopedAttribute.cpp diff --git a/shib/Metadata.cpp b/shib/Metadata.cpp deleted file mode 100644 index 92ddefa..0000000 --- a/shib/Metadata.cpp +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Copyright 2001-2007 Internet2 - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* Metadata.h - glue classes that interface to metadata providers - - Scott Cantor - 9/27/02 - - $History:$ -*/ - -#include "internal.h" -#include - -using namespace shibboleth; -using namespace opensaml::saml2md; -using namespace saml; -using namespace std; - -AAP::AAP(const saml::Iterator& aaps, const XMLCh* attrName, const XMLCh* attrNamespace) : m_mapper(NULL), m_rule(NULL) -{ - aaps.reset(); - while (aaps.hasNext()) { - m_mapper=aaps.next(); - m_mapper->lock(); - if (m_rule=m_mapper->lookup(attrName,attrNamespace)) { - break; - } - m_mapper->unlock(); - m_mapper=NULL; - } -} - -AAP::AAP(const saml::Iterator& aaps, const char* alias) : m_mapper(NULL), m_rule(NULL) -{ - aaps.reset(); - while (aaps.hasNext()) { - m_mapper=aaps.next(); - m_mapper->lock(); - if (m_rule=m_mapper->lookup(alias)) { - break; - } - m_mapper->unlock(); - m_mapper=NULL; - } -} - -AAP::~AAP() -{ - if (m_mapper) { - m_mapper->unlock(); - m_mapper=NULL; - } -} - -void AAP::apply(const saml::Iterator& aaps, saml::SAMLAssertion& assertion, const RoleDescriptor* role) -{ -#ifdef _DEBUG - xmltooling::NDC("apply"); -#endif - log4cpp::Category& log=log4cpp::Category::getInstance(SHIB_LOGCAT".AAP"); - - // First check for no providers or AnyAttribute. - if (aaps.size()==0) { - log.info("no filters specified, accepting entire assertion"); - return; - } - aaps.reset(); - while (aaps.hasNext()) { - IAAP* p=aaps.next(); - xmltooling::Locker locker(p); - if (p->anyAttribute()) { - log.info("any attribute enabled, accepting entire assertion"); - return; - } - } - - // Check each statement. - const IAttributeRule* rule=NULL; - Iterator statements=assertion.getStatements(); - for (unsigned int scount=0; scount < statements.size();) { - SAMLAttributeStatement* s=dynamic_cast(statements[scount]); - if (!s) { - scount++; - continue; - } - - // Check each attribute, applying any matching rules. - Iterator attrs=s->getAttributes(); - for (unsigned long acount=0; acount < attrs.size();) { - SAMLAttribute* a=attrs[acount]; - bool ruleFound=false; - aaps.reset(); - while (aaps.hasNext()) { - IAAP* i=aaps.next(); - xmltooling::Locker locker(i); - if (rule=i->lookup(a->getName(),a->getNamespace())) { - ruleFound=true; - try { - rule->apply(*a,role); - } - catch (SAMLException&) { - // The attribute is now defunct. - log.info("no values remain, removing attribute"); - s->removeAttribute(acount--); - break; - } - } - } - if (!ruleFound) { - if (log.isWarnEnabled()) { - auto_ptr_char temp(a->getName()); - log.warn("no rule found for attribute (%s), filtering it out",temp.get()); - } - s->removeAttribute(acount--); - } - acount++; - } - - try { - s->checkValidity(); - scount++; - } - catch (SAMLException&) { - // The statement is now defunct. - log.info("no attributes remain, removing statement"); - assertion.removeStatement(scount); - } - } - - // Now see if we trashed it irrevocably. - assertion.checkValidity(); -} diff --git a/shib/shib.h b/shib/shib.h index 39970d8..cdcfeb4 100644 --- a/shib/shib.h +++ b/shib/shib.h @@ -42,60 +42,12 @@ namespace shibboleth { - // Attribute acceptance processing interfaces, applied to incoming attributes. - - struct SHIB_EXPORTS IAttributeRule - { - virtual const XMLCh* getName() const=0; - virtual const XMLCh* getNamespace() const=0; - virtual const char* getAlias() const=0; - virtual const char* getHeader() const=0; - virtual bool getCaseSensitive() const=0; - virtual void apply(saml::SAMLAttribute& attribute, const opensaml::saml2md::RoleDescriptor* role=NULL) const=0; - virtual ~IAttributeRule() {} - }; - - struct SHIB_EXPORTS IAAP : public virtual xmltooling::Lockable, public virtual saml::IPlugIn - { - virtual bool anyAttribute() const=0; - virtual const IAttributeRule* lookup(const XMLCh* attrName, const XMLCh* attrNamespace=NULL) const=0; - virtual const IAttributeRule* lookup(const char* alias) const=0; - virtual saml::Iterator getAttributeRules() const=0; - virtual ~IAAP() {} - }; - struct SHIB_EXPORTS IAttributeFactory : public virtual saml::IPlugIn { virtual saml::SAMLAttribute* build(DOMElement* e) const=0; virtual ~IAttributeFactory() {} }; -#ifdef SHIB_INSTANTIATE - template class SHIB_EXPORTS saml::Iterator; - template class SHIB_EXPORTS saml::ArrayIterator; -#endif - - class SHIB_EXPORTS AAP - { - public: - AAP(const saml::Iterator& aaps, const XMLCh* attrName, const XMLCh* attrNamespace=NULL); - AAP(const saml::Iterator& aaps, const char* alias); - ~AAP(); - bool fail() const {return m_mapper==NULL;} - const IAttributeRule* operator->() const {return m_rule;} - operator const IAttributeRule*() const {return m_rule;} - - static void apply( - const saml::Iterator& aaps, saml::SAMLAssertion& assertion, const opensaml::saml2md::RoleDescriptor* role=NULL - ); - - private: - AAP(const AAP&); - void operator=(const AAP&); - IAAP* m_mapper; - const IAttributeRule* m_rule; - }; - // Subclass around the OpenSAML browser profile interface, // incoporates additional functionality using Shib-defined APIs. class SHIB_EXPORTS ShibBrowserProfile : virtual public saml::SAMLBrowserProfile diff --git a/shib/shib.vcproj b/shib/shib.vcproj index 2fc3e61..1623821 100644 --- a/shib/shib.vcproj +++ b/shib/shib.vcproj @@ -226,10 +226,6 @@ > - - diff --git a/test/shibtest.cpp b/test/shibtest.cpp index 7c2cfa5..9e15f0f 100644 --- a/test/shibtest.cpp +++ b/test/shibtest.cpp @@ -140,18 +140,6 @@ int main(int argc,char* argv[]) if (!response) throw opensaml::BindingException("unable to successfully query for attributes"); - // Run it through the AAP. Note that we could end up with an empty response! - Iterator a=response->getAssertions(); - for (unsigned long c=0; c < a.size();) { - try { - shibboleth::AAP::apply(app->getAAPProviders(),*(a[c]),AA); - c++; - } - catch (SAMLException&) { - response->removeAssertion(c); - } - } - Iterator i=response->getAssertions(); if (i.hasNext()) { -- 2.1.4