(gss_adat): if accept_sec_context fails, syslog a reason and give a
temporary error message git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@10885 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 1998 - 2001 Kungliga Tekniska H<>gskolan
|
||||
* Copyright (c) 1998 - 2002 Kungliga Tekniska H<>gskolan
|
||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||
* All rights reserved.
|
||||
*
|
||||
@@ -183,12 +183,12 @@ gss_adat(void *app_data, void *buf, size_t len)
|
||||
|
||||
d->delegated_cred_handle = malloc(sizeof(*d->delegated_cred_handle));
|
||||
if (d->delegated_cred_handle == NULL) {
|
||||
reply(500, "Out of memory");
|
||||
goto out;
|
||||
reply(500, "Out of memory");
|
||||
goto out;
|
||||
}
|
||||
|
||||
memset ((char*)d->delegated_cred_handle, 0,
|
||||
sizeof(*d->delegated_cred_handle));
|
||||
sizeof(*d->delegated_cred_handle));
|
||||
|
||||
maj_stat = gss_accept_sec_context (&min_stat,
|
||||
&d->context_hdl,
|
||||
@@ -200,7 +200,7 @@ gss_adat(void *app_data, void *buf, size_t len)
|
||||
&output_token,
|
||||
NULL,
|
||||
NULL,
|
||||
&d->delegated_cred_handle);
|
||||
&d->delegated_cred_handle);
|
||||
|
||||
if(output_token.length) {
|
||||
if(base64_encode(output_token.value, output_token.length, &p) < 0) {
|
||||
@@ -235,9 +235,22 @@ gss_adat(void *app_data, void *buf, size_t len)
|
||||
reply(335, "ADAT=%s", p);
|
||||
else
|
||||
reply(335, "OK, need more data");
|
||||
} else
|
||||
reply(535, "foo?");
|
||||
out:
|
||||
} else {
|
||||
OM_uint32 new_stat;
|
||||
OM_uint32 msg_ctx = 0;
|
||||
gss_buffer_desc status_string;
|
||||
gss_display_status(&new_stat,
|
||||
min_stat,
|
||||
GSS_C_MECH_CODE,
|
||||
GSS_C_NO_OID,
|
||||
&msg_ctx,
|
||||
&status_string);
|
||||
syslog(LOG_ERR, "gss_accept_sec_context: %s",
|
||||
(char*)status_string.value);
|
||||
gss_release_buffer(&new_stat, &status_string);
|
||||
reply(431, "Security resource unavailable");
|
||||
}
|
||||
out:
|
||||
free(p);
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user