Change sematics of ok-as-delegate to match windows if

[gssapi]realm/ok-as-delegate=true is set, otherwise keep old sematics.


git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@16283 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2005-11-02 11:52:49 +00:00
parent 6ece760454
commit d28785e212
2 changed files with 16 additions and 18 deletions

View File

@@ -332,20 +332,19 @@ init_auth
}
/*
* If the realm policy approves a delegation, lets check local
* policy if the credentials should be delegated, defafult to
* false.
* If the credential doesn't have ok-as-delegate, check what local
* policy say about ok-as-delegate, default is FALSE that makes
* code ignore all this, but if its TRUE, strip of the
* GSS_C_DELEG_FLAG.
*/
if (cred->flags.b.ok_as_delegate) {
krb5_boolean delegate = FALSE;
if (!cred->flags.b.ok_as_delegate) {
krb5_boolean delegate;
_gss_check_compat(NULL, target_name, "ok-as-delegate",
&delegate, TRUE);
krb5_appdefault_boolean(gssapi_krb5_context,
"gssapi", target_name->realm,
"ok-as-delegate", delegate, &delegate);
"ok-as-delegate", FALSE, &delegate);
if (delegate)
req_flags |= GSS_C_DELEG_FLAG;
req_flags &= ~GSS_C_DELEG_FLAG;
}
flags = 0;

View File

@@ -332,20 +332,19 @@ init_auth
}
/*
* If the realm policy approves a delegation, lets check local
* policy if the credentials should be delegated, defafult to
* false.
* If the credential doesn't have ok-as-delegate, check what local
* policy say about ok-as-delegate, default is FALSE that makes
* code ignore all this, but if its TRUE, strip of the
* GSS_C_DELEG_FLAG.
*/
if (cred->flags.b.ok_as_delegate) {
krb5_boolean delegate = FALSE;
if (!cred->flags.b.ok_as_delegate) {
krb5_boolean delegate;
_gss_check_compat(NULL, target_name, "ok-as-delegate",
&delegate, TRUE);
krb5_appdefault_boolean(gssapi_krb5_context,
"gssapi", target_name->realm,
"ok-as-delegate", delegate, &delegate);
"ok-as-delegate", FALSE, &delegate);
if (delegate)
req_flags |= GSS_C_DELEG_FLAG;
req_flags &= ~GSS_C_DELEG_FLAG;
}
flags = 0;