1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00

s3:lib: factor out talloc_sub_advanced() from talloc_sub_full()

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13745

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
This commit is contained in:
Ralph Boehme 2019-10-31 11:57:39 +01:00 committed by Andreas Schneider
parent 4736623c24
commit 41ab92b62f
2 changed files with 27 additions and 5 deletions

View File

@ -180,6 +180,10 @@ char *talloc_sub_specified(TALLOC_CTX *mem_ctx,
const char *domain,
uid_t uid,
gid_t gid);
char *talloc_sub_advanced(TALLOC_CTX *mem_ctx,
const char *servicename, const char *user,
const char *connectpath, gid_t gid,
const char *str);
char *talloc_sub_full(TALLOC_CTX *mem_ctx,
const char *servicename, const char *user,
const char *connectpath, gid_t gid,

View File

@ -790,21 +790,19 @@ char *talloc_sub_specified(TALLOC_CTX *mem_ctx,
/****************************************************************************
****************************************************************************/
char *talloc_sub_full(TALLOC_CTX *ctx,
char *talloc_sub_advanced(TALLOC_CTX *ctx,
const char *servicename,
const char *user,
const char *connectpath,
gid_t gid,
const char *smb_name,
const char *domain_name,
const char *str)
{
char *a_string, *ret_string;
char *a_string;
char *b, *p, *s;
a_string = talloc_strdup(talloc_tos(), str);
if (a_string == NULL) {
DBG_ERR("Out of memory!\n");
DEBUG(0, ("talloc_sub_advanced_only: Out of memory!\n"));
return NULL;
}
@ -858,6 +856,26 @@ char *talloc_sub_full(TALLOC_CTX *ctx,
}
}
return a_string;
}
char *talloc_sub_full(TALLOC_CTX *ctx,
const char *servicename,
const char *user,
const char *connectpath,
gid_t gid,
const char *smb_name,
const char *domain_name,
const char *str)
{
char *a_string, *ret_string;
a_string = talloc_sub_advanced(ctx, servicename, user, connectpath,
gid, str);
if (a_string == NULL) {
return NULL;
}
ret_string = talloc_sub_basic(ctx, smb_name, domain_name, a_string);
TALLOC_FREE(a_string);
return ret_string;