aboutsummaryrefslogtreecommitdiff
path: root/lib/curl_sasl_gssapi.c
diff options
context:
space:
mode:
authorSteve Holme <steve_holme@hotmail.com>2014-12-03 18:57:48 +0000
committerSteve Holme <steve_holme@hotmail.com>2014-12-03 18:59:08 +0000
commit61e71a8bc8005349f50d7b1ed3706407ba88513d (patch)
tree17bf1201ed4a993f4f62bd335d2518b16eeacb58 /lib/curl_sasl_gssapi.c
parent71dd5811272104a314311f361035388c957be089 (diff)
sasl_gssapi: Added body to Curl_sasl_gssapi_cleanup()
Diffstat (limited to 'lib/curl_sasl_gssapi.c')
-rw-r--r--lib/curl_sasl_gssapi.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/curl_sasl_gssapi.c b/lib/curl_sasl_gssapi.c
index 096729fef..465862144 100644
--- a/lib/curl_sasl_gssapi.c
+++ b/lib/curl_sasl_gssapi.c
@@ -134,7 +134,19 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
void Curl_sasl_gssapi_cleanup(struct kerberos5data *krb5)
{
- (void) krb5;
+ OM_uint32 minor_status;
+
+ /* Free our security context */
+ if(krb5->context != GSS_C_NO_CONTEXT) {
+ gss_delete_sec_context(&minor_status, &krb5->context, GSS_C_NO_BUFFER);
+ krb5->context = GSS_C_NO_CONTEXT;
+ }
+
+ /* Free the SPN */
+ if(krb5->spn != GSS_C_NO_NAME) {
+ gss_release_name(&minor_status, &krb5->spn);
+ krb5->spn = GSS_C_NO_NAME;
+ }
}
#endif /* HAVE_GSSAPI && USE_KERBEROS5 */