From 4b54ec4c31419818e4435184e55d0223ffa6a280 Mon Sep 17 00:00:00 2001 From: Scott Cantor Date: Tue, 3 Apr 2012 21:38:27 +0000 Subject: [PATCH] Add name-based API to GSSRequest --- src/shibresolver/resolver.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/shibresolver/resolver.cpp b/src/shibresolver/resolver.cpp index 5b2e70d..dd7bbbf 100644 --- a/src/shibresolver/resolver.cpp +++ b/src/shibresolver/resolver.cpp @@ -144,9 +144,16 @@ void ShibbolethResolver::setRequest(const SPRequest* request) if (request) { const GSSRequest* gss = dynamic_cast(request); if (gss) { - // TODO: fix API to prevent destruction of contexts +#ifdef SHIBRESOLVER_HAVE_GSSAPI_NAMINGEXTS + gss_name_t name = gss->getGSSName(); + if (name != GSS_C_NO_NAME) { + addToken(name); + return; + } +#endif gss_ctx_id_t ctx = gss->getGSSContext(); - addToken(&ctx); + if (ctx != GSS_C_NO_CONTEXT) + addToken(&ctx); } } #endif -- 2.1.4