summaryrefslogtreecommitdiffstats
path: root/src/confdb/confdb.c
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2011-05-17 16:28:15 +0200
committerStephen Gallagher <sgallagh@redhat.com>2011-10-26 10:29:37 -0400
commitb8f94ca9d19384139c3ceee2f8ff918556f9790c (patch)
tree8373470d0e186ccec279476803376a7b03e9d03a /src/confdb/confdb.c
parentd0b2e0675ea5c65854e81deca14469cb89e57be8 (diff)
downloadsssd-b8f94ca9d19384139c3ceee2f8ff918556f9790c.tar.gz
sssd-b8f94ca9d19384139c3ceee2f8ff918556f9790c.tar.xz
sssd-b8f94ca9d19384139c3ceee2f8ff918556f9790c.zip
Support overriding attribute values locally
Add a new option to override primary GID number https://fedorahosted.org/sssd/ticket/742 Add a new option to override home directory value https://fedorahosted.org/sssd/ticket/551 Add new options to override shell value https://fedorahosted.org/sssd/ticket/742 Conflicts: src/conf_macros.m4
Diffstat (limited to 'src/confdb/confdb.c')
-rw-r--r--src/confdb/confdb.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/confdb/confdb.c b/src/confdb/confdb.c
index 4975a4276..87d33f9bd 100644
--- a/src/confdb/confdb.c
+++ b/src/confdb/confdb.c
@@ -842,9 +842,23 @@ static int confdb_get_domain_internal(struct confdb_ctx *cdb,
goto done;
}
+ ret = get_entry_as_uint32(res->msgs[0], &domain->override_gid,
+ CONFDB_DOMAIN_OVERRIDE_GID, 0);
+ if (ret != EOK) {
+ DEBUG(0, ("Invalid value for [%s]\n", CONFDB_DOMAIN_OVERRIDE_GID));
+ goto done;
+ }
+
+ tmp = ldb_msg_find_attr_as_string(res->msgs[0],
+ CONFDB_NSS_OVERRIDE_HOMEDIR, NULL);
+ domain->override_homedir = talloc_strdup(domain, tmp);
+ if (!domain->name) {
+ ret = ENOMEM;
+ goto done;
+ }
+
*_domain = domain;
ret = EOK;
-
done:
talloc_free(tmp_ctx);
return ret;