summaryrefslogtreecommitdiffstats
path: root/src/responder/pac
diff options
context:
space:
mode:
authorLukas Slebodnik <lslebodn@redhat.com>2013-12-02 13:03:33 +0100
committerJakub Hrozek <jhrozek@redhat.com>2014-06-02 19:07:57 +0200
commit5cd660aaa885bca95ac3dca660bb77e5786d5f8e (patch)
tree6450720de4fdbf7a26465c65c2ccc395fbb9b64e /src/responder/pac
parentbe7eabee6b7eb8def2441bf5de4c6d4950c155bf (diff)
downloadsssd-5cd660aaa885bca95ac3dca660bb77e5786d5f8e.tar.gz
sssd-5cd660aaa885bca95ac3dca660bb77e5786d5f8e.tar.xz
sssd-5cd660aaa885bca95ac3dca660bb77e5786d5f8e.zip
NSS: Refactor expand_homedir_template
Function expand_homedir_template had lot of parameters. After adding new expand option, all function call should be rewritten, (usually argument NULL will be added) This patch wraps all necessary arguments to structure.
Diffstat (limited to 'src/responder/pac')
-rw-r--r--src/responder/pac/pacsrv_utils.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/responder/pac/pacsrv_utils.c b/src/responder/pac/pacsrv_utils.c
index 035fe84c0..fe7e88934 100644
--- a/src/responder/pac/pacsrv_utils.c
+++ b/src/responder/pac/pacsrv_utils.c
@@ -353,6 +353,7 @@ errno_t get_pwd_from_pac(TALLOC_CTX *mem_ctx,
char *upn;
hash_key_t key;
hash_value_t value;
+ struct sss_nss_homedir_ctx homedir_ctx;
pwd = talloc_zero(mem_ctx, struct passwd);
if (pwd == NULL) {
@@ -439,9 +440,15 @@ errno_t get_pwd_from_pac(TALLOC_CTX *mem_ctx,
/* Check if there is a special homedir template for sub-domains. If not a
* fallback will be added by the NSS responder. */
if (IS_SUBDOMAIN(dom) && dom->subdomain_homedir) {
+ ZERO_STRUCT(homedir_ctx);
+
+ homedir_ctx.username = lname;
+ homedir_ctx.uid = pwd->pw_uid;
+ homedir_ctx.domain = dom->name;
+ homedir_ctx.flatname = dom->flat_name;
+
pwd->pw_dir = expand_homedir_template(pwd, dom->subdomain_homedir,
- lname, pwd->pw_uid, NULL,
- dom->name, dom->flat_name);
+ &homedir_ctx);
if (pwd->pw_dir == NULL) {
ret = ENOMEM;
goto done;