diff options
Diffstat (limited to 'src/confdb/confdb.c')
-rw-r--r-- | src/confdb/confdb.c | 16 |
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; |