diff options
author | Ignacio Reguero <Ignacio.Reguero@cern.ch> | 2017-03-02 14:51:00 +0100 |
---|---|---|
committer | Lukas Slebodnik <lslebodn@redhat.com> | 2017-03-07 21:56:12 +0100 |
commit | 7f97e6098503a4426dbeeb773b48f27041440be2 (patch) | |
tree | 53bebc825fc0daa2513ebb65cc394191e271a309 /src/util | |
parent | f09e045d46ceaa68ba14d79ec0e1a80af8dfbf5f (diff) | |
download | sssd-7f97e6098503a4426dbeeb773b48f27041440be2.tar.gz sssd-7f97e6098503a4426dbeeb773b48f27041440be2.tar.xz sssd-7f97e6098503a4426dbeeb773b48f27041440be2.zip |
UTIL: first letter of user name template for override_homedir
Resolves:
https://pagure.io/SSSD/sssd/issue/2668
Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/sss_nss.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/util/sss_nss.c b/src/util/sss_nss.c index d1ad5433f..cf91a2c53 100644 --- a/src/util/sss_nss.c +++ b/src/util/sss_nss.c @@ -88,6 +88,23 @@ char *expand_homedir_template(TALLOC_CTX *mem_ctx, talloc_free(username); break; + case 'l': + if (homedir_ctx->username == NULL) { + DEBUG(SSSDBG_CRIT_FAILURE, + "Cannot expand first letter of user name template " + "because user name is empty.\n"); + goto done; + } + username = sss_output_name(tmp_ctx, homedir_ctx->username, + case_sensitive, 0); + if (username == NULL) { + goto done; + } + + result = talloc_asprintf_append(result, "%s%c", p, username[0]); + talloc_free(username); + break; + case 'U': if (homedir_ctx->uid == 0) { DEBUG(SSSDBG_CRIT_FAILURE, "Cannot expand uid template " |