X-Git-Url: http://www.project-moonshot.org/gitweb/?p=mech_eap.git;a=blobdiff_plain;f=mech_eap%2Futil_attr.cpp;h=1931efedec1c08875b18e1fc827e96dcc505b601;hp=6058f36a5b4172af2c7bfabfa8732e3434d3e4ad;hb=HEAD;hpb=4f319dde67a76fe0aaf33f6d2788968012584ada diff --git a/mech_eap/util_attr.cpp b/mech_eap/util_attr.cpp index 6058f36..1931efe 100644 --- a/mech_eap/util_attr.cpp +++ b/mech_eap/util_attr.cpp @@ -64,9 +64,14 @@ GSSEAP_ONCE_CALLBACK(gssEapAttrProvidersInitInternal) gssEapLocalAttrProviderInit(&minor); #endif #ifdef HAVE_OPENSAML + wpa_printf(MSG_INFO, "### gssEapAttrProvidersInitInternal(): Calling gssEapSamlAttrProvidersInit()"); major = gssEapSamlAttrProvidersInit(&minor); - if (GSS_ERROR(major)) + if (GSS_ERROR(major)) { + wpa_printf(MSG_ERROR, "### gssEapAttrProvidersInitInternal(): Error returned from gssEapSamlAttrProvidersInit; major code is %08X; minor is %08X", major, minor); goto cleanup; + } +#else + wpa_printf(MSG_INFO, "### gssEapAttrProvidersInitInternal(): Don't have OpenSAML; not calling gssEapSamlAttrProvidersInit()"); #endif cleanup: @@ -74,6 +79,7 @@ cleanup: GSSEAP_ASSERT(major == GSS_S_COMPLETE); #endif + wpa_printf(MSG_INFO, "### gssEapAttrProvidersInitInternal(): Setting gssEapAttrProvidersInitStatus to %08X", major); gssEapAttrProvidersInitStatus = major; GSSEAP_ONCE_LEAVE; @@ -90,16 +96,25 @@ gssEapAttrProvidersInit(OM_uint32 *minor) return gssEapAttrProvidersInitStatus; } + namespace { + class finalize_class { public: + + finalize_class() { + wpa_printf(MSG_INFO, "### finalize_class::finalize_class(): Constructing"); + } + ~finalize_class() { OM_uint32 minor = 0; + + wpa_printf(MSG_INFO, "### ~finalize_class::~finalize_class() : initStatus=%08x", gssEapAttrProvidersInitStatus); + if (gssEapAttrProvidersInitStatus == GSS_S_COMPLETE) { -#ifdef HAVE_SHIBRESOLVER - gssEapLocalAttrProviderFinalize(&minor); -#endif + wpa_printf(MSG_INFO, "### ~finalize_class::~finalize_class() : really finalizing"); + #ifdef HAVE_OPENSAML gssEapSamlAttrProvidersFinalize(&minor); #endif @@ -985,7 +1000,7 @@ gssEapSetNameAttribute(OM_uint32 *minor, OM_uint32 gssEapExportAttrContext(OM_uint32 *minor, - gss_name_t name, + gss_const_name_t name, gss_buffer_t buffer) { if (name->attrCtx == NULL) { @@ -1049,7 +1064,7 @@ gssEapImportAttrContext(OM_uint32 *minor, OM_uint32 gssEapDuplicateAttrContext(OM_uint32 *minor, - gss_name_t in, + gss_const_name_t in, gss_name_t out) { gss_eap_attr_ctx *ctx = NULL;