krb5_check_transited_realms
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@7897 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -363,6 +363,35 @@ krb5_domain_x500_encode(char **realms, int num_realms, krb5_data *encoding)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
krb5_error_code
|
||||||
|
krb5_check_transited_realms(krb5_context context,
|
||||||
|
const char *const *realms,
|
||||||
|
int num_realms,
|
||||||
|
int *bad_realm)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
int ret = 0;
|
||||||
|
char **bad_realms = krb5_config_get_strings(context, NULL,
|
||||||
|
"libdefaults",
|
||||||
|
"transited_realms_reject",
|
||||||
|
NULL);
|
||||||
|
if(bad_realms == NULL)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
for(i = 0; i < num_realms; i++) {
|
||||||
|
char **p;
|
||||||
|
for(p = bad_realms; *p; p++)
|
||||||
|
if(strcmp(*p, realms[i]) == 0) {
|
||||||
|
ret = KRB5KRB_AP_ERR_ILL_CR_TKT;
|
||||||
|
if(bad_realm)
|
||||||
|
*bad_realm = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
krb5_config_free_strings(bad_realms);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
int
|
int
|
||||||
main(int argc, char **argv)
|
main(int argc, char **argv)
|
||||||
|
Reference in New Issue
Block a user