From 3ad23ec3bd98aa55fa29c5c1cac60116b5fc00d2 Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Mon, 22 Sep 2008 10:37:11 +0200 Subject: [PATCH] winbindd_util: add fill_domain_username_talloc(). A talloc version of fill_domain_username(). Michael --- source/winbindd/winbindd_util.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/source/winbindd/winbindd_util.c b/source/winbindd/winbindd_util.c index cd79c777eaa..a2a248b6821 100644 --- a/source/winbindd/winbindd_util.c +++ b/source/winbindd/winbindd_util.c @@ -1195,6 +1195,33 @@ void fill_domain_username(fstring name, const char *domain, const char *user, bo } } +/** + * talloc version of fill_domain_username() + * return NULL on talloc failure. + */ +char *fill_domain_username_talloc(TALLOC_CTX *mem_ctx, + const char *domain, + const char *user, + bool can_assume) +{ + char *tmp_user, *name; + + tmp_user = talloc_strdup(mem_ctx, user); + strlower_m(tmp_user); + + if (can_assume && assume_domain(domain)) { + name = tmp_user; + } else { + name = talloc_asprintf(mem_ctx, "%s%c%s", + domain, + *lp_winbind_separator(), + tmp_user); + TALLOC_FREE(tmp_user); + } + + return name; +} + /* * Winbindd socket accessor functions */ -- 2.11.4.GIT