Re: [PATCH 3/3] Fill buffers in schan_DecryptMessage the same way as windows does
On Mon, 2010-08-30 at 19:37 +0300, Mikko Rasa wrote:
- memcpy(buffer->pvBuffer, data, received); - buffer->cbBuffer = received; + buf_ptr = (char *)buffer->pvBuffer;
You don't need this cast.
+ offset = ctx->header_bytes; + memcpy(buf_ptr + offset, data, received); HeapFree(GetProcessHeap(), 0, data);
+ schan_decrypt_fill_buffer(message, SECBUFFER_DATA, buf_ptr + offset, received); + offset += received; + + schan_decrypt_fill_buffer(message, SECBUFFER_STREAM_TRAILER, buf_ptr + offset, buffer->cbBuffer - offset); + offset += ctx->trailer_bytes; + + if(buffer->cbBuffer > offset) + schan_decrypt_fill_buffer(message, SECBUFFER_EXTRA, buf_ptr + offset, buffer->cbBuffer - offset); + + buffer->BufferType = SECBUFFER_STREAM_HEADER; + buffer->cbBuffer = ctx->header_bytes; +
FWIW, this patch set passes my tests.
participants (1)
-
Hans Leidekker