(foreach_principal): add `funcname' and try printing the error string
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@9850 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -461,6 +461,7 @@ is_expression(const char *string)
|
|||||||
int
|
int
|
||||||
foreach_principal(const char *exp,
|
foreach_principal(const char *exp,
|
||||||
int (*func)(krb5_principal, void*),
|
int (*func)(krb5_principal, void*),
|
||||||
|
const char *funcname,
|
||||||
void *data)
|
void *data)
|
||||||
{
|
{
|
||||||
char **princs;
|
char **princs;
|
||||||
@@ -500,15 +501,22 @@ foreach_principal(const char *exp,
|
|||||||
ret = (*func)(princ_ent, data);
|
ret = (*func)(princ_ent, data);
|
||||||
if(ret) {
|
if(ret) {
|
||||||
char *tmp;
|
char *tmp;
|
||||||
krb5_error_code ret2;
|
|
||||||
|
|
||||||
ret2 = krb5_unparse_name(context, princ_ent, &tmp);
|
tmp = krb5_get_error_string(context);
|
||||||
if(ret2) {
|
if (tmp != NULL) {
|
||||||
krb5_warn(context, ret2, "krb5_unparse_name");
|
krb5_warnx(context, "%s: %s", funcname, tmp);
|
||||||
krb5_warn(context, ret, "<unknown principal>");
|
krb5_free_error_string(context, tmp);
|
||||||
} else {
|
} else {
|
||||||
krb5_warn(context, ret, "%s", tmp);
|
krb5_error_code ret2;
|
||||||
free(tmp);
|
|
||||||
|
ret2 = krb5_unparse_name(context, princ_ent, &tmp);
|
||||||
|
if(ret2) {
|
||||||
|
krb5_warn(context, ret2, "krb5_unparse_name");
|
||||||
|
krb5_warn(context, ret, "<unknown principal>");
|
||||||
|
} else {
|
||||||
|
krb5_warn(context, ret, "%s: %s", funcname, tmp);
|
||||||
|
free(tmp);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
krb5_free_principal(context, princ_ent);
|
krb5_free_principal(context, princ_ent);
|
||||||
|
Reference in New Issue
Block a user