summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2008-12-03 09:07:00 +0100
committerStefan Metzmacher <metze@samba.org>2008-12-03 09:19:32 +0100
commitafa0d6b0b14e0ef2293bd8468ffc1d6330abdb5b (patch)
treeb0c8a6f428011c1803add62f97975feed6913f11
parent85b8cccab072bab263061654b677bc84826646c9 (diff)
downloadsamba-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.c12
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;
}