>From 6351b84e18b8b1a78d7360b9b9075c0ec4fbe1ab Mon Sep 17 00:00:00 2001 From: Jakub Hrozek Date: Tue, 11 Mar 2014 17:37:47 +0100 Subject: [PATCH 1/2] No point in searching for gid if we already know the group should be filtered --- src/providers/ldap/sdap_async_nested_groups.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/providers/ldap/sdap_async_nested_groups.c b/src/providers/ldap/sdap_async_nested_groups.c index c521e08745db613cfa18d809c1afb4c9aef59463..305afbc9d4f153fe2daa6289cc318b1183be72ca 100644 --- a/src/providers/ldap/sdap_async_nested_groups.c +++ b/src/providers/ldap/sdap_async_nested_groups.c @@ -265,9 +265,11 @@ sdap_nested_group_hash_group(struct sdap_nested_group_ctx *group_ctx, } } - ret = sysdb_attrs_get_uint32_t(group, map[SDAP_AT_GROUP_GID].sys_name, - &gid); - if (ret == ENOENT || (ret == EOK && gid == 0) || !posix_group) { + if (posix_group) { + ret = sysdb_attrs_get_uint32_t(group, map[SDAP_AT_GROUP_GID].sys_name, + &gid); + } + if (!posix_group || ret == ENOENT || (ret == EOK && gid == 0)) { DEBUG(SSSDBG_TRACE_ALL, "The group's gid was %s\n", ret == ENOENT ? "missing" : "zero"); DEBUG(SSSDBG_TRACE_INTERNAL, -- 1.9.3