summaryrefslogtreecommitdiff
path: root/src/responder
diff options
context:
space:
mode:
Diffstat (limited to 'src/responder')
-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 */