diff options
author | Paul B. Henson <henson@acm.org> | 2012-11-13 03:31:43 -0800 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2013-05-31 21:34:04 +0200 |
commit | 868bf88fdf1adde15f6c3423d199d62290861c37 (patch) | |
tree | 8f56640d7e2e429d778e2dd7a5eb0d4f22d754db /src/responder | |
parent | c13eb9379fbe9958a4f810ba14171a3d5335d62e (diff) | |
download | sssd-868bf88fdf1adde15f6c3423d199d62290861c37.tar.gz sssd-868bf88fdf1adde15f6c3423d199d62290861c37.tar.xz sssd-868bf88fdf1adde15f6c3423d199d62290861c37.zip |
Add ignore_group_members option.
https://fedorahosted.org/sssd/ticket/1376
Diffstat (limited to 'src/responder')
-rw-r--r-- | src/responder/nss/nsssrv_cmd.c | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/src/responder/nss/nsssrv_cmd.c b/src/responder/nss/nsssrv_cmd.c index 93cd2dd45..7df55322a 100644 --- a/src/responder/nss/nsssrv_cmd.c +++ b/src/responder/nss/nsssrv_cmd.c @@ -2190,24 +2190,27 @@ static int fill_grent(struct sss_packet *packet, pwfield.str, pwfield.len); memnum = 0; - el = ldb_msg_find_element(msg, SYSDB_MEMBERUID); - if (el) { - ret = fill_members(packet, dom, nctx, el, &rzero, &rsize, &memnum); - if (ret != EOK) { - num = 0; - goto done; + if (!dom->ignore_group_members) { + el = ldb_msg_find_element(msg, SYSDB_MEMBERUID); + if (el) { + ret = fill_members(packet, dom, nctx, el, &rzero, &rsize, + &memnum); + if (ret != EOK) { + num = 0; + goto done; + } + sss_packet_get_body(packet, &body, &blen); } - sss_packet_get_body(packet, &body, &blen); - } - - el = ldb_msg_find_element(msg, SYSDB_GHOST); - if (el) { - ret = fill_members(packet, dom, nctx, el, &rzero, &rsize, &memnum); - if (ret != EOK) { - num = 0; - goto done; + el = ldb_msg_find_element(msg, SYSDB_GHOST); + if (el) { + ret = fill_members(packet, dom, nctx, el, &rzero, &rsize, + &memnum); + if (ret != EOK) { + num = 0; + goto done; + } + sss_packet_get_body(packet, &body, &blen); } - sss_packet_get_body(packet, &body, &blen); } if (memnum) { /* set num of members */ |