From: Volker Lendecke Date: Tue, 8 Mar 2011 20:47:41 +0000 (+0100) Subject: idmap-autorid: Use talloc_tos() in idmap_autorid_id_to_sid X-Git-Tag: ldb-1.1.0~687 X-Git-Url: http://git.samba.org/samba.git/?a=commitdiff_plain;h=10953c60bdf247d030b088c155346a5af470567a;p=samba.git idmap-autorid: Use talloc_tos() in idmap_autorid_id_to_sid Signed-off-by: Christian Ambach --- diff --git a/source3/winbindd/idmap_autorid.c b/source3/winbindd/idmap_autorid.c index 5747a0b0c83..e814d0da1ff 100644 --- a/source3/winbindd/idmap_autorid.c +++ b/source3/winbindd/idmap_autorid.c @@ -130,8 +130,7 @@ static NTSTATUS idmap_autorid_get_domainrange(struct db_context *db, } -static NTSTATUS idmap_autorid_id_to_sid(TALLOC_CTX * memctx, - struct autorid_global_config *cfg, +static NTSTATUS idmap_autorid_id_to_sid(struct autorid_global_config *cfg, struct id_map *map) { uint32_t range; @@ -157,12 +156,13 @@ static NTSTATUS idmap_autorid_id_to_sid(TALLOC_CTX * memctx, /* determine the range of this uid */ range = ((map->xid.id - cfg->minvalue) / cfg->rangesize); - keystr = talloc_asprintf(memctx, "%u", range); + keystr = talloc_asprintf(talloc_tos(), "%u", range); if (!keystr) { return NT_STATUS_NO_MEMORY; } - data = dbwrap_fetch_bystring(autorid_db, memctx, keystr); + data = dbwrap_fetch_bystring(autorid_db, talloc_tos(), keystr); + TALLOC_FREE(keystr); if (!data.dptr) { DEBUG(4, ("id %d belongs to range %d which does not have " @@ -172,6 +172,7 @@ static NTSTATUS idmap_autorid_id_to_sid(TALLOC_CTX * memctx, } string_to_sid(&sid, (const char *)data.dptr); + TALLOC_FREE(data.dptr); sid_compose(map->sid, &sid, (map->xid.id - cfg->minvalue - @@ -244,7 +245,7 @@ static NTSTATUS idmap_autorid_unixids_to_sids(struct idmap_domain *dom, for (i = 0; ids[i]; i++) { - ret = idmap_autorid_id_to_sid(ctx, globalcfg, ids[i]); + ret = idmap_autorid_id_to_sid(globalcfg, ids[i]); if ((!NT_STATUS_IS_OK(ret)) && (!NT_STATUS_EQUAL(ret, NT_STATUS_NONE_MAPPED))) {