diff options
Diffstat (limited to 'src/util/usertools.c')
-rw-r--r-- | src/util/usertools.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/util/usertools.c b/src/util/usertools.c index cc8f583b..dc863ce8 100644 --- a/src/util/usertools.c +++ b/src/util/usertools.c @@ -627,3 +627,20 @@ sss_fqdom_len(struct sss_names_ctx *nctx, len += fq_part_len(nctx, domain, FQ_FMT_FLAT_NAME, domain->flat_name); return len; } + +char * +sss_get_domain_name(TALLOC_CTX *mem_ctx, + const char *orig_name, + struct sss_domain_info *dom) +{ + char *user_name; + + if (IS_SUBDOMAIN(dom) && dom->fqnames) { + /* we always use the fully qualified name for subdomain users */ + user_name = sss_tc_fqname(mem_ctx, dom->names, dom, orig_name); + } else { + user_name = talloc_strdup(mem_ctx, orig_name); + } + + return user_name; +} |