(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
	 Assar Westerlund
					Assar Westerlund