ipadb_iterate(): handle match_entry == NULL

If match_entry == NULL all principals should be iterated.

Additionally this patch adds a check in ipadb_filter_escape() to make
sure that the input is not NULL.

Fixes: https://fedorahosted.org/freeipa/ticket/3011
This commit is contained in:
Sumit Bose
2012-09-05 14:08:02 +02:00
committed by Martin Kosek
parent 2ede70b720
commit 83245bc8c9
2 changed files with 10 additions and 0 deletions

View File

@@ -30,6 +30,10 @@ char *ipadb_filter_escape(const char *input, bool star)
size_t i = 0;
size_t j = 0;
if (!input) {
return NULL;
}
/* Assume the worst-case. */
output = malloc(strlen(input) * 3 + 1);
if (!output) {

View File

@@ -1879,6 +1879,12 @@ krb5_error_code ipadb_iterate(krb5_context kcontext,
return KRB5_KDB_DBNOTINITED;
}
/* If no match_entry is given iterate through all krb princs like the db2
* or ldap plugin */
if (match_entry == NULL) {
match_entry = "*";
}
/* fetch list of principal matching filter */
kerr = ipadb_fetch_principals(ipactx, 0, match_entry, &res);
if (kerr != 0) {