The branch, v4-0-test has been updated via f573c1ff4443f3002c310d3ba29d8c343ad03907 (commit) from 5fb5a4e13db3a03da414876efa717c3de44ca77c (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test - Log ----------------------------------------------------------------- commit f573c1ff4443f3002c310d3ba29d8c343ad03907 Author: Stefan Metzmacher <[EMAIL PROTECTED]> Date: Wed Jun 11 07:59:20 2008 +0200 credentials: set GSS_KRB5_CRED_NO_CI_FLAGS_X to avoid GSS_C_CONF_FLAG and GSS_C_INTEG_FLAG metze ----------------------------------------------------------------------- Summary of changes: source/auth/credentials/credentials_krb5.c | 27 +++++++++++++++++++++------ 1 files changed, 21 insertions(+), 6 deletions(-) Changeset truncated at 500 lines: diff --git a/source/auth/credentials/credentials_krb5.c b/source/auth/credentials/credentials_krb5.c index 3bc1764..b9207ab 100644 --- a/source/auth/credentials/credentials_krb5.c +++ b/source/auth/credentials/credentials_krb5.c @@ -379,19 +379,34 @@ _PUBLIC_ int cli_credentials_get_client_gss_creds(struct cli_credentials *cred, maj_stat = gss_krb5_import_cred(&min_stat, ccache->ccache, NULL, NULL, &gcc->creds); if (maj_stat) { + talloc_free(gcc); if (min_stat) { ret = min_stat; } else { ret = EINVAL; } + return ret; } - if (ret == 0) { - cred->client_gss_creds_obtained = cred->ccache_obtained; - talloc_set_destructor(gcc, free_gssapi_creds); - cred->client_gss_creds = gcc; - *_gcc = gcc; + + /* don't force GSS_C_CONF_FLAG and GSS_C_INTEG_FLAG */ + maj_stat = gss_set_cred_option(&min_stat, gcc->creds, + GSS_KRB5_CRED_NO_CI_FLAGS_X, + GSS_C_NO_BUFFER); + if (maj_stat) { + talloc_free(gcc); + if (min_stat) { + ret = min_stat; + } else { + ret = EINVAL; + } + return ret; } - return ret; + + cred->client_gss_creds_obtained = cred->ccache_obtained; + talloc_set_destructor(gcc, free_gssapi_creds); + cred->client_gss_creds = gcc; + *_gcc = gcc; + return 0; } /** -- Samba Shared Repository