From: Ralph Wuerthner Date: Wed, 8 Aug 2018 15:42:18 +0000 (+0200) Subject: s3: vfs: time_audit: fix handling of token_blob in smb_time_audit_offload_read_recv() X-Git-Tag: samba-4.8.5~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06cf8c46842a877d3098aaa4ab4d4014d8ceecee;p=thirdparty%2Fsamba.git s3: vfs: time_audit: fix handling of token_blob in smb_time_audit_offload_read_recv() BUG: https://bugzilla.samba.org/show_bug.cgi?id=13568 Signed-off-by: Ralph Wuerthner Reviewed-by: Christof Schmitt Reviewed-by: Jeremy Allison (cherry picked from commit 4909b966050c921b0a6a32285fee55f5f14dc3ff) --- diff --git a/source3/modules/vfs_time_audit.c b/source3/modules/vfs_time_audit.c index 4a0ec89f044..9b515685669 100644 --- a/source3/modules/vfs_time_audit.c +++ b/source3/modules/vfs_time_audit.c @@ -1930,13 +1930,12 @@ static NTSTATUS smb_time_audit_offload_read_recv( struct tevent_req *req, struct vfs_handle_struct *handle, TALLOC_CTX *mem_ctx, - DATA_BLOB *_token_blob) + DATA_BLOB *token_blob) { struct time_audit_offload_read_state *state = tevent_req_data( req, struct time_audit_offload_read_state); struct timespec ts_recv; double timediff; - DATA_BLOB token_blob; NTSTATUS status; clock_gettime_mono(&ts_recv); @@ -1950,13 +1949,8 @@ static NTSTATUS smb_time_audit_offload_read_recv( return status; } - token_blob = data_blob_talloc(mem_ctx, - state->token_blob.data, - state->token_blob.length); - if (token_blob.data == NULL) { - tevent_req_received(req); - return NT_STATUS_NO_MEMORY; - } + token_blob->length = state->token_blob.length; + token_blob->data = talloc_move(mem_ctx, &state->token_blob.data); tevent_req_received(req); return NT_STATUS_OK;