summaryrefslogtreecommitdiffstats
path: root/src/util/sss_nss.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/sss_nss.c')
-rw-r--r--src/util/sss_nss.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/util/sss_nss.c b/src/util/sss_nss.c
index 8cc1416d7..208b57842 100644
--- a/src/util/sss_nss.c
+++ b/src/util/sss_nss.c
@@ -147,6 +147,17 @@ char *expand_homedir_template(TALLOC_CTX *mem_ctx, const char *template,
homedir_ctx->config_homedir_substr);
break;
+ case 'P':
+ if (homedir_ctx->upn == NULL) {
+ DEBUG(SSSDBG_CRIT_FAILURE,
+ "Cannot expand user principal name template "
+ "string is empty.\n");
+ goto done;
+ }
+ result = talloc_asprintf_append(result, "%s%s", p,
+ homedir_ctx->upn);
+ break;
+
case '%':
result = talloc_asprintf_append(result, "%s%%", p);
break;