summaryrefslogtreecommitdiff
path: root/src/responder/nss
diff options
context:
space:
mode:
authorPaul B. Henson <henson@acm.org>2012-11-13 03:31:43 -0800
committerJakub Hrozek <jhrozek@redhat.com>2012-11-15 20:03:27 +0100
commit59f136cd254d1acf2991c97221eb08803784777d (patch)
tree6e97ba0d904277489ba88f4fd5a0ae9b23424dbb /src/responder/nss
parent32f763808dc741289ca03248b89fe526494b645a (diff)
downloadsssd-59f136cd254d1acf2991c97221eb08803784777d.tar.gz
sssd-59f136cd254d1acf2991c97221eb08803784777d.tar.bz2
sssd-59f136cd254d1acf2991c97221eb08803784777d.zip
Add ignore_group_members option.
https://fedorahosted.org/sssd/ticket/1376
Diffstat (limited to 'src/responder/nss')
-rw-r--r--src/responder/nss/nsssrv_cmd.c35
1 files changed, 19 insertions, 16 deletions
diff --git a/src/responder/nss/nsssrv_cmd.c b/src/responder/nss/nsssrv_cmd.c
index 036e88f4..a453e593 100644
--- a/src/responder/nss/nsssrv_cmd.c
+++ b/src/responder/nss/nsssrv_cmd.c
@@ -2035,24 +2035,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 */