diff options
author | Stefan Metzmacher <metze@samba.org> | 2008-12-03 09:07:00 +0100 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2008-12-03 09:19:32 +0100 |
commit | afa0d6b0b14e0ef2293bd8468ffc1d6330abdb5b (patch) | |
tree | b0c8a6f428011c1803add62f97975feed6913f11 | |
parent | 85b8cccab072bab263061654b677bc84826646c9 (diff) | |
download | samba-afa0d6b0b14e0ef2293bd8468ffc1d6330abdb5b.tar.gz samba-afa0d6b0b14e0ef2293bd8468ffc1d6330abdb5b.tar.bz2 samba-afa0d6b0b14e0ef2293bd8468ffc1d6330abdb5b.zip |
libwbclient: avoid usage talloc_init() in library code
talloc_init() is a compat function for the old samba3
non-hierachical talloc implementation. It enables
the talloc null tracking which should never be done
by library code.
metze
-rw-r--r-- | source3/nsswitch/libwbclient/wbc_sid.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/source3/nsswitch/libwbclient/wbc_sid.c b/source3/nsswitch/libwbclient/wbc_sid.c index ac929b1dd5..92de22e901 100644 --- a/source3/nsswitch/libwbclient/wbc_sid.c +++ b/source3/nsswitch/libwbclient/wbc_sid.c @@ -40,22 +40,18 @@ wbcErr wbcSidToString(const struct wbcDomainSid *sid, uint32_t id_auth; int i; char *tmp = NULL; - TALLOC_CTX *ctx = NULL; if (!sid) { wbc_status = WBC_ERR_INVALID_SID; BAIL_ON_WBC_ERROR(wbc_status); } - ctx = talloc_init("wbcSidToString"); - BAIL_ON_PTR_ERROR(ctx, wbc_status); - id_auth = sid->id_auth[5] + (sid->id_auth[4] << 8) + (sid->id_auth[3] << 16) + (sid->id_auth[2] << 24); - tmp = talloc_asprintf(ctx, "S-%d-%d", sid->sid_rev_num, id_auth); + tmp = talloc_asprintf(NULL, "S-%d-%d", sid->sid_rev_num, id_auth); BAIL_ON_PTR_ERROR(tmp, wbc_status); for (i=0; i<sid->num_auths; i++) { @@ -66,13 +62,13 @@ wbcErr wbcSidToString(const struct wbcDomainSid *sid, tmp = tmp2; } - *sid_string=talloc_strdup(NULL, tmp); - BAIL_ON_PTR_ERROR((*sid_string), wbc_status); + *sid_string = tmp; + tmp = NULL; wbc_status = WBC_ERR_SUCCESS; done: - talloc_free(ctx); + talloc_free(tmp); return wbc_status; } |