Jacek Caban : secur32/tests: Don' t call InitializeSecurityContext on an uninitialized buffer.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Jan 22 15:20:46 CST 2015
Module: wine
Branch: master
Commit: 48ea8a1cb488c3df1c7b2a249b4c03166fdcf29d
URL: http://source.winehq.org/git/wine.git/?a=commit;h=48ea8a1cb488c3df1c7b2a249b4c03166fdcf29d
Author: Jacek Caban <jacek at codeweavers.com>
Date: Thu Jan 22 14:23:38 2015 +0100
secur32/tests: Don't call InitializeSecurityContext on an uninitialized buffer.
Also documents failure on an invalid buffer.
---
dlls/secur32/tests/schannel.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/dlls/secur32/tests/schannel.c b/dlls/secur32/tests/schannel.c
index 97fa0bc..585ba21 100644
--- a/dlls/secur32/tests/schannel.c
+++ b/dlls/secur32/tests/schannel.c
@@ -700,6 +700,19 @@ static void test_communication(void)
buffers[1].cBuffers = 1;
buffers[1].pBuffers[0].BufferType = SECBUFFER_TOKEN;
buffers[0].pBuffers[0].cbBuffer = 1;
+ memset(buffers[1].pBuffers[0].pvBuffer, 0xfa, buf_size);
+ status = pInitializeSecurityContextA(&cred_handle, &context, (SEC_CHAR *)"localhost",
+ ISC_REQ_CONFIDENTIALITY|ISC_REQ_STREAM,
+ 0, 0, &buffers[1], 0, NULL, &buffers[0], &attrs, NULL);
+todo_wine
+ ok(status == SEC_E_INVALID_TOKEN, "Expected SEC_E_INVALID_TOKEN, got %08x\n", status);
+todo_wine
+ ok(buffers[0].pBuffers[0].cbBuffer == 0, "Output buffer size was not set to 0.\n");
+
+ buffers[1].cBuffers = 1;
+ buffers[1].pBuffers[0].BufferType = SECBUFFER_TOKEN;
+ buffers[0].pBuffers[0].cbBuffer = 1;
+ memset(buffers[1].pBuffers[0].pvBuffer, 0, buf_size);
status = pInitializeSecurityContextA(&cred_handle, &context, (SEC_CHAR *)"localhost",
ISC_REQ_CONFIDENTIALITY|ISC_REQ_STREAM,
0, 0, &buffers[1], 0, NULL, &buffers[0], &attrs, NULL);
@@ -707,6 +720,7 @@ static void test_communication(void)
todo_wine
ok(buffers[0].pBuffers[0].cbBuffer == 0, "Output buffer size was not set to 0.\n");
+ buffers[0].pBuffers[0].cbBuffer = 0;
status = pInitializeSecurityContextA(&cred_handle, &context, (SEC_CHAR *)"localhost",
ISC_REQ_CONFIDENTIALITY|ISC_REQ_STREAM,
0, 0, &buffers[1], 0, NULL, &buffers[0], &attrs, NULL);
More information about the wine-cvs
mailing list