s3:libsmb: use a talloc_stackframe in cli_dfs_get_referral()
authorStefan Metzmacher <metze@samba.org>
Thu, 7 Jul 2011 06:58:25 +0000 (08:58 +0200)
committerStefan Metzmacher <metze@samba.org>
Thu, 7 Jul 2011 12:49:49 +0000 (14:49 +0200)
metze

source3/libsmb/clidfs.c

index 2287812c188d79ec6cdac296189d3ac7f8c9f6a8..5d97cd3011a7a013bbfca692c291ecbdae90bf8f 100644 (file)
@@ -621,13 +621,14 @@ NTSTATUS cli_dfs_get_referral(TALLOC_CTX *ctx,
        uint16 num_referrals;
        struct client_dfs_referral *referrals = NULL;
        NTSTATUS status;
+       TALLOC_CTX *frame = talloc_stackframe();
 
        *num_refs = 0;
        *refs = NULL;
 
        SSVAL(setup, 0, TRANSACT2_GET_DFS_REFERRAL);
 
-       param = SMB_MALLOC_ARRAY(uint8_t, 2+pathlen+2);
+       param = talloc_array(talloc_tos(), uint8_t, 2+pathlen+2);
        if (!param) {
                status = NT_STATUS_NO_MEMORY;
                goto out;
@@ -746,9 +747,7 @@ NTSTATUS cli_dfs_get_referral(TALLOC_CTX *ctx,
 
   out:
 
-       TALLOC_FREE(consumed_path);
-       SAFE_FREE(param);
-       TALLOC_FREE(rdata);
+       TALLOC_FREE(frame);
        return status;
 }