diff options
author | Michal Zidek <mzidek@redhat.com> | 2015-04-21 17:28:23 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2016-07-07 10:24:20 +0200 |
commit | 501d031cecb7ca7d705f5e69da3476e1fa3b1d4c (patch) | |
tree | 28f2a38bf3c8a7f46199ea757f40ea248471e713 /src/util | |
parent | 31851748aa1c6d7f17afcbf1c36c8feed6d651f8 (diff) | |
download | sssd-501d031cecb7ca7d705f5e69da3476e1fa3b1d4c.tar.gz sssd-501d031cecb7ca7d705f5e69da3476e1fa3b1d4c.tar.xz sssd-501d031cecb7ca7d705f5e69da3476e1fa3b1d4c.zip |
UTIL: Add function to create internal fqname
Add function to create internal fqname in format
shortname@domname where domain portion is lowercased.
Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/usertools.c | 25 | ||||
-rw-r--r-- | src/util/util.h | 6 |
2 files changed, 31 insertions, 0 deletions
diff --git a/src/util/usertools.c b/src/util/usertools.c index bea7e58a8..44a56ed97 100644 --- a/src/util/usertools.c +++ b/src/util/usertools.c @@ -772,3 +772,28 @@ done: talloc_free(tmp_ctx); return ret; } + +/* Creates internal fqname in format shortname@domname. + * The domain portion is lowercased. */ +char *sss_create_internal_fqname(TALLOC_CTX *mem_ctx, + const char *shortname, + const char *dom_name) +{ + char *lc_dom_name; + char *fqname = NULL; + + if (shortname == NULL || dom_name == NULL) { + /* Avoid allocating null@null */ + return NULL; + } + + lc_dom_name = sss_tc_utf8_str_tolower(mem_ctx, dom_name); + if (lc_dom_name == NULL) { + goto done; + } + + fqname = talloc_asprintf(mem_ctx, "%s@%s", shortname, lc_dom_name); + talloc_free(lc_dom_name); +done: + return fqname; +} diff --git a/src/util/util.h b/src/util/util.h index 57819cf8a..57e9d9f9e 100644 --- a/src/util/util.h +++ b/src/util/util.h @@ -278,6 +278,12 @@ errno_t sss_parse_internal_fqname(TALLOC_CTX *mem_ctx, char **_shortname, char **_dom_name); +/* Creates internal fqname in format shortname@domname. + * The domain portion is lowercased. */ +char *sss_create_internal_fqname(TALLOC_CTX *mem_ctx, + const char *shortname, + const char *dom_name); + /* from backup-file.c */ int backup_file(const char *src, int dbglvl); |