diff options
author | Lukas Slebodnik <lslebodn@redhat.com> | 2016-08-30 15:37:43 +0200 |
---|---|---|
committer | Lukas Slebodnik <lslebodn@redhat.com> | 2016-08-31 09:19:45 +0200 |
commit | b969ccc2cc58fdf761e5d314de9217f2d914bc9b (patch) | |
tree | 92a26d8c89175ab55be57b22cb49bae420dadf73 | |
parent | 5b0735876aa66464b24cb7736a74fafd8ec82128 (diff) | |
download | sssd-b969ccc2cc58fdf761e5d314de9217f2d914bc9b.tar.gz sssd-b969ccc2cc58fdf761e5d314de9217f2d914bc9b.tar.xz sssd-b969ccc2cc58fdf761e5d314de9217f2d914bc9b.zip |
SYSDB: Fix error handling in sysdb_get_user_members_recursively
We ignored failures from sysdb_search_entry
Reviewed-by: Petr Čech <pcech@redhat.com>
-rw-r--r-- | src/db/sysdb_ops.c | 3 | ||||
-rw-r--r-- | src/db/sysdb_views.c | 5 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/db/sysdb_ops.c b/src/db/sysdb_ops.c index 44fb5b70e..e4c8e1e28 100644 --- a/src/db/sysdb_ops.c +++ b/src/db/sysdb_ops.c @@ -4738,6 +4738,9 @@ errno_t sysdb_get_user_members_recursively(TALLOC_CTX *mem_ctx, ret = sysdb_search_entry(tmp_ctx, dom->sysdb, base_dn, LDB_SCOPE_SUBTREE, filter, attrs, &count, &msgs); + if (ret != EOK) { + goto done; + } res = talloc_zero(tmp_ctx, struct ldb_result); if (res == NULL) { diff --git a/src/db/sysdb_views.c b/src/db/sysdb_views.c index 79f513d13..9dc48f5b6 100644 --- a/src/db/sysdb_views.c +++ b/src/db/sysdb_views.c @@ -1374,7 +1374,10 @@ errno_t sysdb_add_group_member_overrides(struct sss_domain_info *domain, ret = sysdb_get_user_members_recursively(tmp_ctx, domain, obj->dn, &res_members); - if (ret != EOK) { + if (ret == ENOENT) { + ret = EOK; + goto done; + } else if (ret != EOK) { DEBUG(SSSDBG_OP_FAILURE, "sysdb_get_user_members_recursively failed.\n"); goto done; |