projects
/
moonshot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Revert "Revert "try to guard against multiple shibboleth library initializations""
[moonshot.git]
/
mech_eap
/
util_shib.cpp
diff --git
a/mech_eap/util_shib.cpp
b/mech_eap/util_shib.cpp
index
918f947
..
b1464f7
100644
(file)
--- a/
mech_eap/util_shib.cpp
+++ b/
mech_eap/util_shib.cpp
@@
-331,7
+331,7
@@
gss_eap_shib_attr_provider::getAttribute(const gss_buffer_t attr,
if (i == -1)
i = 0;
if (i == -1)
i = 0;
-
else
if (i >= nvalues)
+ if (i >= nvalues)
return false;
buf.value = (void *)shibAttr->getSerializedValues()[*more].c_str();
return false;
buf.value = (void *)shibAttr->getSerializedValues()[*more].c_str();
@@
-450,7
+450,8
@@
gss_eap_shib_attr_provider::initWithJsonObject(const gss_eap_attr_ctx *ctx,
bool
gss_eap_shib_attr_provider::init(void)
{
bool
gss_eap_shib_attr_provider::init(void)
{
- if (!ShibbolethResolver::init())
+ if (SPConfig::getConfig().getFeatures() == 0 &&
+ ShibbolethResolver::init() == false)
return false;
gss_eap_attr_ctx::registerProvider(ATTR_TYPE_LOCAL, createAttrContext);
return false;
gss_eap_attr_ctx::registerProvider(ATTR_TYPE_LOCAL, createAttrContext);
@@
-484,6
+485,8
@@
gss_eap_shib_attr_provider::mapException(OM_uint32 *minor,
else
return GSS_S_CONTINUE_NEEDED;
else
return GSS_S_CONTINUE_NEEDED;
+ gssEapSaveStatusInfo(*minor, "%s", e.what());
+
return GSS_S_FAILURE;
}
return GSS_S_FAILURE;
}