summaryrefslogtreecommitdiff
path: root/src/confdb
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/confdb
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/confdb')
-rw-r--r--src/confdb/confdb.c9
-rw-r--r--src/confdb/confdb.h2
2 files changed, 11 insertions, 0 deletions
diff --git a/src/confdb/confdb.c b/src/confdb/confdb.c
index 13035a41..3707f18b 100644
--- a/src/confdb/confdb.c
+++ b/src/confdb/confdb.c
@@ -894,6 +894,15 @@ static int confdb_get_domain_internal(struct confdb_ctx *cdb,
goto done;
}
+ ret = get_entry_as_bool(res->msgs[0], &domain->ignore_group_members,
+ CONFDB_DOMAIN_IGNORE_GROUP_MEMBERS, 0);
+ if(ret != EOK) {
+ DEBUG(SSSDBG_FATAL_FAILURE,
+ ("Invalid value for %s\n",
+ CONFDB_DOMAIN_IGNORE_GROUP_MEMBERS));
+ goto done;
+ }
+
ret = get_entry_as_uint32(res->msgs[0], &domain->id_min,
CONFDB_DOMAIN_MINID,
confdb_get_min_id(domain));
diff --git a/src/confdb/confdb.h b/src/confdb/confdb.h
index 88e80c17..eb16d01e 100644
--- a/src/confdb/confdb.h
+++ b/src/confdb/confdb.h
@@ -162,6 +162,7 @@
#define CONFDB_DOMAIN_CASE_SENSITIVE "case_sensitive"
#define CONFDB_DOMAIN_SUBDOMAIN_HOMEDIR "subdomain_homedir"
#define CONFDB_DOMAIN_DEFAULT_SUBDOMAIN_HOMEDIR "/home/%d/%u"
+#define CONFDB_DOMAIN_IGNORE_GROUP_MEMBERS "ignore_group_members"
#define CONFDB_DOMAIN_USER_CACHE_TIMEOUT "entry_cache_user_timeout"
#define CONFDB_DOMAIN_GROUP_CACHE_TIMEOUT "entry_cache_group_timeout"
@@ -200,6 +201,7 @@ struct sss_domain_info {
int timeout;
bool enumerate;
bool fqnames;
+ bool ignore_group_members;
uint32_t id_min;
uint32_t id_max;