http://bugs.winehq.org/show_bug.cgi?id=28568
Bug #: 28568 Summary: secur32/schannel test often hangs with gnutls 2.12.10-2 Product: Wine Version: 1.3.28 Platform: x86 OS/Version: Linux Status: NEW Keywords: download, patch, testcase Severity: normal Priority: P2 Component: secur32 AssignedTo: wine-bugs@winehq.org ReportedBy: austinenglish@gmail.com CC: hverbeet@gmail.com, toralf.foerster@gmx.de Classification: Unclassified
After bug 28383 has been fixed (by 65aed972c0dac659800faf0097df190278c37883), the test often hangs for me: austin@debian-buildbot:~/wine-git/dlls/secur32/tests$ rm schannel.ok ; make schannel.ok ../../../tools/runtest -q -P wine -M secur32.dll -T ../../.. -p secur32_test.exe.so schannel.c && touch schannel.ok fixme:secur32:schan_QueryCredentialsAttributes SECPKG_ATTR_CIPHER_STRENGTHS: semi-stub fixme:secur32:schan_imp_create_session Using hardcoded "NORMAL" priority GnuTLS error: An unexpected TLS packet was received. fixme:secur32:schan_imp_create_session Using hardcoded "NORMAL" priority
looking at a secur32 trace, seems to hit an infinite loop: warn:secur32:schan_validate_decrypt_buffer_desc Less than three empty buffers passed trace:secur32:DecryptMessage 0x33fcec 0x33fcb0 0 (nil) trace:secur32:schan_DecryptMessage context_handle 0x124ba0, message 0x33fcb0, message_seq_no 0, quality (nil) trace:secur32:dump_buffer_desc Buffer desc 0x33fcb0: trace:secur32:dump_buffer_desc buffer 0: cbBuffer 288, BufferType 0x1 pvBuffer 0x124dd8 trace:secur32:dump_buffer_desc buffer 1: cbBuffer 0, BufferType 0 pvBuffer (nil) trace:secur32:dump_buffer_desc buffer 2: cbBuffer 0, BufferType 0 pvBuffer (nil) trace:secur32:dump_buffer_desc buffer 3: cbBuffer 0, BufferType 0 pvBuffer (nil) trace:secur32:schan_DecryptMessage Expected 293 bytes, but buffer only contains 288 bytes trace:secur32:schan_DecryptMessage Returning SEC_E_INCOMPLETE_MESSAGE trace:secur32:DecryptMessage 0x33fcec 0x33fcb0 0 (nil) trace:secur32:schan_DecryptMessage context_handle 0x124ba0, message 0x33fcb0, message_seq_no 0, quality (nil) trace:secur32:dump_buffer_desc Buffer desc 0x33fcb0: trace:secur32:dump_buffer_desc buffer 0: cbBuffer 330, BufferType 0x1 pvBuffer 0x124dd8 trace:secur32:dump_buffer_desc buffer 1: cbBuffer 293, BufferType 0 pvBuffer (nil) trace:secur32:dump_buffer_desc buffer 2: cbBuffer 0, BufferType 0 pvBuffer (nil) trace:secur32:dump_buffer_desc buffer 3: cbBuffer 0, BufferType 0 pvBuffer (nil) trace:secur32:schan_pull Pull 5 bytes trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_pull Read 5 bytes trace:secur32:schan_gnutls_log <4> REC[0x7ddf4658]: Expected Packet[1] Application Data(23) with length: 330 trace:secur32:schan_gnutls_log <4> REC[0x7ddf4658]: Received Packet[1] Application Data(23) with length: 288 trace:secur32:schan_pull Pull 288 bytes trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_pull Read 288 bytes trace:secur32:schan_gnutls_log <4> REC[0x7ddf4658]: Decrypted Packet[1] Application Data(23) with length: 263 trace:secur32:schan_pull Pull 5 bytes trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_pull Pull 5 bytes trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_pull Pull 5 bytes trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_pull Pull 5 bytes trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_get_buffer Using buffer 0: cbBuffer 330, BufferType 0x1, pvBuffer 0x124dd8 trace:secur32:schan_pull Pull 5 bytes