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-06-02 15:32:30 -0400
commit28dab46aaa2c0d65160492f1d9d7c88652d8c714 (patch)
treecf11aa59b6ef8ab49cdb39dcdb22a036e9e65de5 /src/confdb/confdb.c
parent807402e4e9ac43d0fe7a7533698102a74e23844b (diff)
downloadsssd-28dab46aaa2c0d65160492f1d9d7c88652d8c714.tar.gz
sssd-28dab46aaa2c0d65160492f1d9d7c88652d8c714.tar.xz
sssd-28dab46aaa2c0d65160492f1d9d7c88652d8c714.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;