Simplify user_realm support by removing krb5_parse_name_flags_realm()
and setting the realm as necessary in the caller.
This commit is contained in:

committed by
Viktor Dukhovni

parent
203e2beedd
commit
2433496ea6
@@ -762,6 +762,17 @@ renew_func(void *ptr)
|
||||
return expire / 2 + 1;
|
||||
}
|
||||
|
||||
static void
|
||||
set_princ_realm(krb5_context context,
|
||||
krb5_principal principal,
|
||||
const char *realm)
|
||||
{
|
||||
krb5_error_code ret;
|
||||
|
||||
if ((ret = krb5_principal_set_realm(context, principal, realm)) != 0)
|
||||
krb5_err(context, 1, ret, "krb5_principal_set_realm");
|
||||
}
|
||||
|
||||
static void
|
||||
parse_name_realm(krb5_context context,
|
||||
const char *name,
|
||||
@@ -770,10 +781,13 @@ parse_name_realm(krb5_context context,
|
||||
krb5_principal *princ)
|
||||
{
|
||||
krb5_error_code ret;
|
||||
|
||||
ret = krb5_parse_name_flags_realm(context, name, flags, realm, princ);
|
||||
if (ret)
|
||||
krb5_err(context, 1, ret, "krb5_parse_name_flags_realm");
|
||||
|
||||
if (realm)
|
||||
flags |= KRB5_PRINCIPAL_PARSE_NO_DEF_REALM;
|
||||
if ((ret = krb5_parse_name_flags(context, name, flags, princ)) != 0)
|
||||
krb5_err(context, 1, ret, "krb5_parse_name_flags");
|
||||
if (realm && krb5_principal_get_realm(context, *princ) == NULL)
|
||||
set_princ_realm(context, *princ, realm);
|
||||
}
|
||||
|
||||
static char *
|
||||
@@ -796,17 +810,6 @@ get_default_principal(krb5_context context, krb5_principal *princ)
|
||||
krb5_err(context, 1, ret, "krb5_get_default_principal");
|
||||
}
|
||||
|
||||
static void
|
||||
set_princ_realm(krb5_context context,
|
||||
krb5_principal principal,
|
||||
const char *realm)
|
||||
{
|
||||
krb5_error_code ret;
|
||||
|
||||
if ((ret = krb5_principal_set_realm(context, principal, realm)) != 0)
|
||||
krb5_err(context, 1, ret, "krb5_principal_set_realm");
|
||||
}
|
||||
|
||||
static char *
|
||||
get_user_realm(krb5_context context)
|
||||
{
|
||||
|
Reference in New Issue
Block a user