diff options
author | Sumit Bose <sbose@redhat.com> | 2013-11-08 15:18:40 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2013-11-15 20:38:08 +0100 |
commit | e16963fb913d6a5fc1c54154270ded129ac33962 (patch) | |
tree | 3de05d4756178ba57471472caaa0fbd9c71e1b50 /src/util | |
parent | e7a6d717520b794cd7feb4243d34d4b7f8d81daf (diff) | |
download | sssd-e16963fb913d6a5fc1c54154270ded129ac33962.tar.gz sssd-e16963fb913d6a5fc1c54154270ded129ac33962.tar.xz sssd-e16963fb913d6a5fc1c54154270ded129ac33962.zip |
Add sss_tc_fqname2()
sss_tc_fqname2() is similar to sss_tc_fqname() but expects domain and
flat domain name as string arguments instead of a domain struct.
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/usertools.c | 13 | ||||
-rw-r--r-- | src/util/util.h | 9 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/util/usertools.c b/src/util/usertools.c index e8e4dce96..cd57d0c57 100644 --- a/src/util/usertools.c +++ b/src/util/usertools.c @@ -612,6 +612,19 @@ sss_tc_fqname(TALLOC_CTX *mem_ctx, struct sss_names_ctx *nctx, safe_flat_name(nctx, domain)); } +char * +sss_tc_fqname2(TALLOC_CTX *mem_ctx, struct sss_names_ctx *nctx, + const char *domain_name, const char *flat_dom_name, + const char *name) +{ + if (nctx == NULL) return NULL; + + return talloc_asprintf(mem_ctx, nctx->fq_fmt, + safe_fq_str(nctx, FQ_FMT_NAME, name), + safe_fq_str(nctx, FQ_FMT_DOMAIN, domain_name), + safe_fq_str(nctx, FQ_FMT_FLAT_NAME, flat_dom_name)); +} + int sss_fqname(char *str, size_t size, struct sss_names_ctx *nctx, struct sss_domain_info *domain, const char *name) diff --git a/src/util/util.h b/src/util/util.h index 4c0e75f12..8031039a3 100644 --- a/src/util/util.h +++ b/src/util/util.h @@ -372,6 +372,15 @@ char * sss_tc_fqname(TALLOC_CTX *mem_ctx, struct sss_names_ctx *nctx, struct sss_domain_info *domain, const char *name); +/* Return fully-qualified name according to the fq_fmt. The name is allocated using + * talloc on top of mem_ctx. In contrast to sss_tc_fqname() sss_tc_fqname2() + * expects the domain and flat domain name as separate arguments. + */ +char * +sss_tc_fqname2(TALLOC_CTX *mem_ctx, struct sss_names_ctx *nctx, + const char *dom_name, const char *flat_dom_name, + const char *name); + /* Return fully-qualified name formatted according to the fq_fmt. The buffer in "str" is * "size" bytes long. Returns the number of bytes written on success or a negative * value of failure. |