From: Scott Cantor Date: Thu, 21 Oct 2010 23:00:17 +0000 (+0000) Subject: Check for empty issuer. X-Git-Tag: 1.0.0~34 X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-sp-resolver.git;a=commitdiff_plain;h=4c7adc1888d9df9e9f10abc1a46578b87e55c606 Check for empty issuer. --- diff --git a/shibresolver/resolver.cpp b/shibresolver/resolver.cpp index ce4a722..fe75fa2 100644 --- a/shibresolver/resolver.cpp +++ b/shibresolver/resolver.cpp @@ -281,10 +281,10 @@ void RemotedResolver::resolve( pair entity = pair(nullptr,nullptr); MetadataProvider* m = app.getMetadataProvider(); Locker locker(m); - if (issuer) { + if (issuer && *issuer) { // Use metadata to locate the IdP's SSO service. MetadataProviderCriteria mc(app, issuer, &IDPSSODescriptor::ELEMENT_QNAME, samlconstants::SAML20P_NS); - entity=m->getEntityDescriptor(mc); + entity = m->getEntityDescriptor(mc); if (!entity.first) { log.warn("unable to locate metadata for provider (%s)", issuer); throw MetadataException("Unable to locate metadata for identity provider ($entityID)", namedparams(1, "entityID", issuer)); @@ -300,7 +300,7 @@ void RemotedResolver::resolve( AttributeExtractor* extractor = app.getAttributeExtractor(); if (extractor) { Locker extlocker(extractor); - if (issuer) { + if (entity.second) { pair mprefix = app.getString("metadataAttributePrefix"); if (mprefix.first) { log.debug("extracting metadata-derived attributes...");