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
http://bugs.winehq.org/show_bug.cgi?id=28568
--- Comment #1 from Austin English austinenglish@gmail.com 2011-10-03 18:15:37 CDT --- Created attachment 36701 --> http://bugs.winehq.org/attachment.cgi?id=36701 +secur32 trace
http://bugs.winehq.org/show_bug.cgi?id=28568
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|1.3.28 |1.3.29
--- Comment #2 from Austin English austinenglish@gmail.com 2011-10-03 18:16:15 CDT --- Attached a secur32 trace with wine-1.3.29-121-gfdda702. I've trimmed off most of the loop (was 178MB before, now it's 52KB).
http://bugs.winehq.org/show_bug.cgi?id=28568
--- Comment #3 from Toralf Förster toralf.foerster@gmx.de 2011-10-04 09:02:08 CDT --- can confirm this issue, although it does not always happen.
http://bugs.winehq.org/show_bug.cgi?id=28568
--- Comment #4 from Henri Verbeet hverbeet@gmail.com 2011-10-04 15:50:12 CDT --- Created attachment 36715 --> http://bugs.winehq.org/attachment.cgi?id=36715 patch
Does this patch make it any better?
http://bugs.winehq.org/show_bug.cgi?id=28568
--- Comment #5 from Austin English austinenglish@gmail.com 2011-10-04 16:09:40 CDT --- (In reply to comment #4)
Created attachment 36715 [details] patch
Does this patch make it any better?
Ran 1000 times without failing or hanging, so I'd say so :).
http://bugs.winehq.org/show_bug.cgi?id=28568
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #6 from Austin English austinenglish@gmail.com 2011-10-05 18:11:43 CDT --- (In reply to comment #4)
Created attachment 36715 [details] patch
Does this patch make it any better?
http://source.winehq.org/git/wine.git/commitdiff/7bb7d08d1930dd56569dedf9796...
Thanks Henri!
http://bugs.winehq.org/show_bug.cgi?id=28568
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |7bb7d08d1930dd56569dedf9796 | |60b6e26aeec64
http://bugs.winehq.org/show_bug.cgi?id=28568
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #7 from Alexandre Julliard julliard@winehq.org 2011-10-10 13:13:56 CDT --- Closing bugs fixed in 1.3.30.