summaryrefslogtreecommitdiffstats
path: root/src/responder/nss/nsssrv_cmd.c
diff options
context:
space:
mode:
authorPavel Reichl <preichl@redhat.com>2014-09-23 09:41:38 +0100
committerJakub Hrozek <jhrozek@redhat.com>2014-10-12 18:50:26 +0200
commitadf9c23d663c308cfeeaa5ad0a33c399c85b27ec (patch)
tree44bae197f293312a842705cb0aa3461edb179e19 /src/responder/nss/nsssrv_cmd.c
parentdaa3dd779fbaec36142d112f8a47c7b9f23177c1 (diff)
downloadsssd-adf9c23d663c308cfeeaa5ad0a33c399c85b27ec.tar.gz
sssd-adf9c23d663c308cfeeaa5ad0a33c399c85b27ec.tar.xz
sssd-adf9c23d663c308cfeeaa5ad0a33c399c85b27ec.zip
NSS: UPN as a template expansion for homedir mappings
Fixes: https://fedorahosted.org/sssd/ticket/2340 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
Diffstat (limited to 'src/responder/nss/nsssrv_cmd.c')
-rw-r--r--src/responder/nss/nsssrv_cmd.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/responder/nss/nsssrv_cmd.c b/src/responder/nss/nsssrv_cmd.c
index ba752c3ff..256c26b17 100644
--- a/src/responder/nss/nsssrv_cmd.c
+++ b/src/responder/nss/nsssrv_cmd.c
@@ -306,6 +306,7 @@ static int fill_pwent(struct sss_packet *packet,
{
struct ldb_message *msg;
uint8_t *body;
+ const char *upn;
const char *tmpstr;
const char *orig_name;
struct sized_string name;
@@ -337,6 +338,7 @@ static int fill_pwent(struct sss_packet *packet,
msg = msgs[i];
+ upn = ldb_msg_find_attr_as_string(msg, SYSDB_UPN, NULL);
orig_name = ldb_msg_find_attr_as_string(msg, SYSDB_NAME, NULL);
uid = ldb_msg_find_attr_as_uint64(msg, SYSDB_UIDNUM, 0);
gid = get_gid_override(msg, dom);
@@ -395,6 +397,7 @@ static int fill_pwent(struct sss_packet *packet,
homedir_ctx.username = name.str;
homedir_ctx.uid = uid;
homedir_ctx.domain = dom->name;
+ homedir_ctx.upn = upn;
tmpstr = get_homedir_override(tmp_ctx, msg, nctx, dom, &homedir_ctx);
if (!tmpstr) {