projects
/
shibboleth
/
sp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Change audience handling and validators to separate out entityID.
[shibboleth/sp.git]
/
shibsp
/
handler
/
impl
/
SAML2SessionInitiator.cpp
diff --git
a/shibsp/handler/impl/SAML2SessionInitiator.cpp
b/shibsp/handler/impl/SAML2SessionInitiator.cpp
index
4595996
..
e6efdd8
100644
(file)
--- a/
shibsp/handler/impl/SAML2SessionInitiator.cpp
+++ b/
shibsp/handler/impl/SAML2SessionInitiator.cpp
@@
-512,7
+512,9
@@
pair<bool,long> SAML2SessionInitiator::doRequest(
}
else if (!entity.second) {
m_log.warn("unable to locate SAML 2.0 identity provider role for provider (%s)", entityID);
}
else if (!entity.second) {
m_log.warn("unable to locate SAML 2.0 identity provider role for provider (%s)", entityID);
- return make_pair(false,0L);
+ if (getParent())
+ return make_pair(false,0L);
+ throw MetadataException("Unable to locate SAML 2.0 identity provider role for provider ($entityID)", namedparams(1, "entityID", entityID));
}
// Loop over the supportable outgoing bindings.
}
// Loop over the supportable outgoing bindings.
@@
-528,7
+530,9
@@
pair<bool,long> SAML2SessionInitiator::doRequest(
}
if (!ep || !encoder) {
m_log.warn("unable to locate compatible SSO service for provider (%s)", entityID);
}
if (!ep || !encoder) {
m_log.warn("unable to locate compatible SSO service for provider (%s)", entityID);
- return make_pair(false,0L);
+ if (getParent())
+ return make_pair(false,0L);
+ throw MetadataException("Unable to locate compatible SSO service for provider ($entityID)", namedparams(1, "entityID", entityID));
}
}
}
}
@@
-558,7
+562,7
@@
pair<bool,long> SAML2SessionInitiator::doRequest(
if (!req->getIssuer()) {
Issuer* issuer = IssuerBuilder::buildIssuer();
req->setIssuer(issuer);
if (!req->getIssuer()) {
Issuer* issuer = IssuerBuilder::buildIssuer();
req->setIssuer(issuer);
- issuer->setName(app.getXMLString("entityID").second);
+ issuer->setName(app.get
RelyingParty(entity.first)->get
XMLString("entityID").second);
}
if (!req->getNameIDPolicy()) {
NameIDPolicy* namepol = NameIDPolicyBuilder::buildNameIDPolicy();
}
if (!req->getNameIDPolicy()) {
NameIDPolicy* namepol = NameIDPolicyBuilder::buildNameIDPolicy();