Method scoping and map insert fixes.
Move zlib references out of the way and add to dist.
install-exec-hook:
for la in $(lib_LTLIBRARIES) ; do rm -f $(DESTDIR)$(libdir)/$$la ; done
-EXTRA_DIST = saml.vcproj
+EXTRA_DIST = saml.vcproj zlib
SAML_HTTP_STATUS_ERROR = 500
};
+ using GenericResponse::sendResponse;
+
long sendError(std::istream& inputStream) {
- return static_cast<GenericResponse*>(this)->sendResponse(inputStream, SAML_HTTP_STATUS_ERROR);
+ return sendResponse(inputStream, SAML_HTTP_STATUS_ERROR);
}
long sendResponse(std::istream& inputStream) {
- return static_cast<GenericResponse*>(this)->sendResponse(inputStream, SAML_HTTP_STATUS_OK);
+ return sendResponse(inputStream, SAML_HTTP_STATUS_OK);
}
};
};
m_force = force;
}
+ using soap11::SOAPClient::send;
+
/**
* SAML-specific method uses a RoleDescriptor to determine the peer name and prepare the
* transport layer with peer credential information. The SecurityPolicy is also reset,
if (relyingParty)
m.m_relying = relyingParty;
m.m_expires = now + TTL;
- m_expMap.insert(make_pair(m.m_expires,hexed));
+ m_expMap.insert(pair<const time_t,string>(m.m_expires,hexed));
}
XMLObject* ArtifactMappings::retrieveContent(const SAMLArtifact* artifact, const char* relyingParty)
<Tool\r
Name="VCCLCompilerTool"\r
Optimization="0"\r
- AdditionalIncludeDirectories=""$(SolutionDir)";"$(ProjectDir)";"..\..\cpp-xmltooling""\r
+ AdditionalIncludeDirectories=""$(SolutionDir)";"$(ProjectDir)";"$(ProjectDir)\zlib";"..\..\cpp-xmltooling""\r
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"\r
MinimalRebuild="true"\r
BasicRuntimeChecks="3"\r
/>\r
<Tool\r
Name="VCCLCompilerTool"\r
- AdditionalIncludeDirectories=""$(SolutionDir)";"$(ProjectDir)";"..\..\cpp-xmltooling""\r
+ AdditionalIncludeDirectories=""$(SolutionDir)";"$(ProjectDir)";"$(ProjectDir)\zlib";"..\..\cpp-xmltooling""\r
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"\r
RuntimeLibrary="2"\r
WarningLevel="3"\r
#include "internal.h"
#include "saml2/binding/SAML2Redirect.h"
-#include <zlib/zlib.h>
+#include <zlib.h>
#include <log4cpp/Category.hh>
#include <xmltooling/util/NDC.h>
public:
virtual ~AbstractMetadataProvider();
+ using MetadataProvider::getEntityDescriptor;
+ using MetadataProvider::getEntitiesDescriptor;
+
void emitChangeEvent() const;
const EntityDescriptor* getEntityDescriptor(const char* id, bool requireValidMetadata=true) const;
const EntityDescriptor* getEntityDescriptor(const SAMLArtifact* artifact) const;
return NULL;
}
+ using MetadataProvider::getEntityDescriptor;
+ using MetadataProvider::getEntitiesDescriptor;
+
xmltooling::Lockable* lock();
void unlock();
void init();
return m_role;
}
- bool matches(xmltooling::Credential& credential) const {
+ bool matches(const xmltooling::Credential& credential) const {
const MetadataCredentialContext* context = dynamic_cast<const MetadataCredentialContext*>(credential.getCredentalContext());
if (context) {
// Check for a usage mismatch.
auto_ptr_char id(site->getEntityID());
if (id.get()) {
- m_sites.insert(make_pair(id.get(),site));
+ m_sites.insert(sitemap_t::value_type(id.get(),site));
}
// Process each IdP role.
if (sid) {
auto_ptr_char sourceid(sid->getID());
if (sourceid.get()) {
- m_sources.insert(pair<string,const EntityDescriptor*>(sourceid.get(),site));
+ m_sources.insert(sitemap_t::value_type(sourceid.get(),site));
break;
}
}
}
// Hash the ID.
- m_sources.insert(
- pair<string,const EntityDescriptor*>(SAMLConfig::getConfig().hashSHA1(id.get(), true),site)
- );
+ m_sources.insert(sitemap_t::value_type(SAMLConfig::getConfig().hashSHA1(id.get(), true),site));
// Load endpoints for type 0x0002 artifacts.
const vector<ArtifactResolutionService*>& locs=const_cast<const IDPSSODescriptor*>(*i)->getArtifactResolutionServices();
for (vector<ArtifactResolutionService*>::const_iterator loc=locs.begin(); loc!=locs.end(); loc++) {
auto_ptr_char location((*loc)->getLocation());
if (location.get())
- m_sources.insert(pair<string,const EntityDescriptor*>(location.get(),site));
+ m_sources.insert(sitemap_t::value_type(location.get(),site));
}
}
// SAML 2.0?
if ((*i)->hasSupport(samlconstants::SAML20P_NS)) {
// Hash the ID.
- m_sources.insert(
- pair<string,const EntityDescriptor*>(SAMLConfig::getConfig().hashSHA1(id.get(), true),site)
- );
+ m_sources.insert(sitemap_t::value_type(SAMLConfig::getConfig().hashSHA1(id.get(), true),site));
}
}
}
auto_ptr_char name(group->getName());
if (name.get()) {
- m_groups.insert(make_pair(name.get(),group));
+ m_groups.insert(groupmap_t::value_type(name.get(),group));
}
const vector<EntitiesDescriptor*>& groups=const_cast<const EntitiesDescriptor*>(group)->getEntitiesDescriptors();
pair<bool,DOMElement*> load();
private:
+ using AbstractMetadataProvider::index;
void index();
XMLObject* m_object;