I have seen the same problem, the server just hangs forever when connecting with Netscape 6.[1|2]. I have tested Netscape 6.2 against the openssl-SNAP-20011206 so the problem looks like a new Netscape feature. The test machine is a Pentium III with RH6.2. OpenSSL was configured as linux-elf.
The command I've tested with looks like this:
�openssl s_server -WWW -accept 8072 -state -debug -bugs�
I have tried without -bugs too.
The "website" used is in www.tar.gz attachment. It is a index.html with links to
two images (test.gif and test.jpg).
The server output is in server.log attachment.
The ssldump of the connection is in ssldump.txt attachment.
A gdb stacktrace from a debug-linux-elf version of OpenSSL is in gdb.txt
attachment.
The stacktrace from when the server hangs stops at a socket read operation so
the server seems to be waiting for the client but the client never sends
anything...
I hope someone finds all this usefull.
ps. Using non-blocking sockets and timeout prevents the server from hanging
forever in read but you have to wait for the timeout. ds.
On Sat, 1 Dec 2001, Tim Regovich wrote:
> New subscriber. I checked the archives,m didnt find
> anything appropriate.,
>
> run openssl -WWW
>
> have a file called test.html :
> <html><body<img src="test.gif"><img
> src="test.jpg"></body></html>
>
> make sure the images exist as well.
>
> connect using netscape 6.2
>
> The stack gets really corrupt. I havent been able to
> identify why yet.
>
> any help would be greatly appreciated. problem
> 0.9.6a, working on b now, looks like it is still
> there.
>
> Apppears to be a memory corruption.
> My apache w/ ssl works fine.
>
> Any help woulf be appreciated.
>
> Thanks,
>
> Tim
>
> __________________________________________________
> Do You Yahoo!?
> Buy the perfect holiday gifts at Yahoo! Shopping.
> http://shopping.yahoo.com
> ______________________________________________________________________
> OpenSSL Project http://www.openssl.org
> Development Mailing List [EMAIL PROTECTED]
> Automated List Manager [EMAIL PROTECTED]
>
(gdb) where
#0 0x400c1db4 in __libc_read () from /lib/libc.so.6
#1 0x80c7aa0 in sock_read (b=0x43da0fc0, out=0x43ef47f8 "", outl=11)
at bss_sock.c:126
#2 0x80c5f66 in BIO_read (b=0x43da0fc0, out=0x43ef47f8, outl=11)
at bio_lib.c:166
#3 0x8095711 in ssl23_read_bytes (s=0x43f57ef4, n=11) at s23_pkt.c:105
#4 0x8093bd2 in ssl23_get_client_hello (s=0x43f57ef4) at s23_srvr.c:275
#5 0x8093aaa in ssl23_accept (s=0x43f57ef4) at s23_srvr.c:214
#6 0x8095405 in ssl23_read (s=0x43f57ef4, buf=0x44151000, len=4096)
at s23_lib.c:176
#7 0x80984a7 in SSL_read (s=0x43f57ef4, buf=0x44151000, num=4096)
at ssl_lib.c:837
#8 0x80a4041 in ssl_read (b=0x43f5dfc0, out=0x44151000 "", outl=4096)
at bio_ssl.c:168
#9 0x80c5f66 in BIO_read (b=0x43f5dfc0, out=0x44151000, outl=4096)
at bio_lib.c:166
#10 0x80c9990 in buffer_gets (b=0x43ed4fc0,
buf=0x44069000 "<html>\n<body>\n<img src=\"test.gif\"><img
src=\"test.jpg\">\n</body>\n</html>\n\n", size=16382) at bf_buff.c:493
#11 0x80c62ce in BIO_gets (b=0x43ed4fc0,
in=0x44069000 "<html>\n<body>\n<img src=\"test.gif\"><img
src=\"test.jpg\">\n</body>\n</html>\n\n", inl=16383) at bio_lib.c:267
#12 0x80680cc in www_body (hostname=0x43f6efec "riker.itinerary.com", s=6,
context=0x0) at s_server.c:1383
#13 0x8076ad1 in do_server (port=8072, ret=0x8174e9c, cb=0x8067b70 <www_body>,
context=0x0) at s_socket.c:247
#14 0x8066477 in s_server_main (argc=0, argv=0xbffff7dc) at s_server.c:847
#15 0x804a62a in do_cmd (prog=0x42762fa0, argc=9, argv=0xbffff7b8)
at openssl.c:383
#16 0x804a301 in main (Argc=9, Argv=0xbffff7b8) at openssl.c:304
(gdb)
Setting temp DH parameters SSL_accept:before/accept initialization SSL_accept:SSLv3 read client hello A SSL_accept:SSLv3 write server hello A SSL_accept:SSLv3 write certificate A SSL_accept:SSLv3 write server done A SSL_accept:SSLv3 flush data SSL_accept:SSLv3 read client key exchange A ACCEPT read from 080AC9E0 [080BC370] (11 bytes => 11 (0xB)) 0000 - 80 34 01 03 00 00 1b 00-00 00 10 .4......... read from 080AC9E0 [080BC37B] (43 bytes => 43 (0x2B)) 0000 - 00 00 04 00 fe ff 00 00-0a 00 fe fe 00 00 09 00 ................ 0010 - 00 64 00 00 62 00 00 03-00 00 06 dd 7e 86 43 aa .d..b.......~.C. 0020 - 1f 7f 62 2b f6 5c e0 17-af e0 5a ..b+.\....Z write to 080AC9E0 [080C9390] (79 bytes => 79 (0x4F)) 0000 - 16 03 00 00 4a 02 00 00-46 03 00 3c 14 85 a5 fc ....J...F..<.... 0010 - ae a7 63 5e 3e 73 a8 2f-5e c3 a9 10 23 5f 2b 6e ..c^>s./^...#_+n 0020 - ce ae 37 63 94 a6 2c 1c-e5 ad 05 20 d8 dd 9f f5 ..7c..,.... .... 0030 - 66 e9 59 10 48 f9 a0 d9-b4 67 30 12 79 c4 5c 12 f.Y.H....g0.y.\. 0040 - ad f2 d1 2c 31 65 1e bd-9f f3 ea 72 00 04 ...,1e.....r.. 004f - <SPACES/NULS> write to 080AC9E0 [080C9390] (405 bytes => 405 (0x195)) 0000 - 16 03 00 01 90 0b 00 01-8c 00 01 89 00 01 86 30 ...............0 0010 - 82 01 82 30 82 01 2c 02-01 04 30 0d 06 09 2a 86 ...0..,...0...*. 0020 - 48 86 f7 0d 01 01 04 05-00 30 38 31 0b 30 09 06 H........081.0.. 0030 - 03 55 04 06 13 02 41 55-31 0c 30 0a 06 03 55 04 .U....AU1.0...U. 0040 - 08 13 03 51 4c 44 31 1b-30 19 06 03 55 04 03 13 ...QLD1.0...U... 0050 - 12 53 53 4c 65 61 79 2f-72 73 61 20 74 65 73 74 .SSLeay/rsa test 0060 - 20 43 41 30 1e 17 0d 39-35 31 30 30 39 32 33 33 CA0...951009233 0070 - 32 30 35 5a 17 0d 39 38-30 37 30 35 32 33 33 32 205Z..9807052332 0080 - 30 35 5a 30 60 31 0b 30-09 06 03 55 04 06 13 02 05Z0`1.0...U.... 0090 - 41 55 31 0c 30 0a 06 03-55 04 08 13 03 51 4c 44 AU1.0...U....QLD 00a0 - 31 19 30 17 06 03 55 04-0a 13 10 4d 69 6e 63 6f 1.0...U....Minco 00b0 - 6d 20 50 74 79 2e 20 4c-74 64 2e 31 0b 30 09 06 m Pty. Ltd.1.0.. 00c0 - 03 55 04 0b 13 02 43 53-31 1b 30 19 06 03 55 04 .U....CS1.0...U. 00d0 - 03 13 12 53 53 4c 65 61-79 20 64 65 6d 6f 20 73 ...SSLeay demo s 00e0 - 65 72 76 65 72 30 5c 30-0d 06 09 2a 86 48 86 f7 erver0\0...*.H.. 00f0 - 0d 01 01 01 05 00 03 4b-00 30 48 02 41 00 b7 2c .......K.0H.A.., 0100 - 25 dc 49 c5 ae 6b 43 c5-2e 41 c1 2e 6d 95 7a 3a %.I..kC..A..m.z: 0110 - a9 03 51 78 45 0f 2a d1-58 d1 88 f6 9f 8f 1f d9 ..QxE.*.X....... 0120 - fd a5 87 de 2a 5d 31 5b-ee 24 66 bf c0 55 db fe ....*]1[.$f..U.. 0130 - 70 c5 2c 39 5f 5a 9f a8-08 fc 21 06 d5 4f 02 03 p.,9_Z....!..O.. 0140 - 01 00 01 30 0d 06 09 2a-86 48 86 f7 0d 01 01 04 ...0...*.H...... 0150 - 05 00 03 41 00 2b 34 5b-22 85 62 23 07 36 f4 0c ...A.+4[".b#.6.. 0160 - 2b 14 d0 1b cb d9 bb d2-c0 9a cf 12 a1 65 90 3a +............e.: 0170 - b7 17 83 3a 10 6b ad 2f-d6 b1 11 c0 0d 5a 06 db ...:.k./.....Z.. 0180 - 11 d0 2f 34 90 f5 76 61-26 a1 69 f2 db b3 e7 20 ../4..va&.i.... 0190 - cb 3a 64 e6 41 .:d.A write to 080AC9E0 [080C9390] (9 bytes => 9 (0x9)) 0000 - 16 03 00 00 04 0e ...... 0009 - <SPACES/NULS> read from 080AC9E0 [080BC370] (5 bytes => 5 (0x5)) 0000 - 16 03 00 00 44 ....D read from 080AC9E0 [080BC375] (68 bytes => 68 (0x44)) 0000 - 10 00 00 40 55 a8 1d e8-fc 6c 8b 9b e6 95 64 1f [EMAIL PROTECTED] 0010 - 8a 79 cb df 69 09 c7 01-74 1b d8 f0 11 9f 04 b7 .y..i...t....... 0020 - a6 9a ec 8b 02 fd 51 b1-60 e2 a7 f9 d7 2f 46 8f ......Q.`..../F. 0030 - 08 74 89 1b 12 f3 97 e8-a6 12 f0 31 f9 81 97 d1 .t.........1.... 0040 - cf 5b 7a 15 .[z. read from 080AC9E0 [080BC370] (5 bytes => 5 (0x5)) 0000 - 14 03 00 00 01 ..... read from 080AC9E0 [080BC375] (1 bytes => 1 (0x1)) 0000 - 01 . read from 080AC9E0 [080BC370] (5 bytes => 5 (0x5)) 0000 - 16 03 00 00 38 ....8 read from 080AC9E0 [080BC375] (56 bytes => 56 (0x38)) 0000 - cc ff 47 a3 0a 27 be 64-92 d2 3a 01 78 6f ff 4c ..G..'.d..:.xo.L 0010 - 3e 88 a6 f2 b4 90 a5 ad-3f ab 6a 1f 95 98 ca c0 >.......?.j..... 0020 - 14 d8 6c 19 7d 58 af 3a-61 8a 83 12 6a e9 38 a6 ..l.}X.:a...j.8. 0030 - f7 SSL_accept:SSLv3 read finished A SSL_accept:SSLv3 write change cipher spec A SSL_accept:SSLv3 write finished A SSL_accept:SSLv3 flush data FILE:index.html SSL_accept:before/accept initialization
www.tar.gz
Description: GNU Zip compressed data
New TCP connection #1: riker.itinerary.com(3247) <-> barclay.itinerary.com(8072)1 1
0.0739 (0.0739) C>S Handshake
ClientHello
Version 3.0
resume [32]=
25 33 77 ae 05 25 82 f2 02 a2 d5 bf 36 4d 44 45
26 c8 f5 c8 86 6f 86 5d 94 4b f0 1a 20 52 8b 03
cipher suites
SSL_RSA_WITH_RC4_128_MD5
Unknown value 0xfeff
SSL_RSA_WITH_3DES_EDE_CBC_SHA
Unknown value 0xfefe
SSL_RSA_WITH_DES_CBC_SHA
SSL_RSA_EXPORT1024_WITH_RC4_56_SHA
SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA
SSL_RSA_EXPORT_WITH_RC4_40_MD5
SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5
compression methods
NULL
1 2 0.2146 (0.1407) S>C Handshake
ServerHello
Version 3.0
session_id[32]=
7d 98 ab e9 f2 a3 1f 5b a4 1d 2d f3 e8 28 b4 49
dd 53 1e 20 df cf 92 a5 bc 9a c1 c2 07 46 4b f7
cipherSuite SSL_RSA_WITH_RC4_128_MD5
compressionMethod NULL
1 3 0.3285 (0.1138) S>C Handshake
Certificate
1 4 0.3285 (0.0000) S>C Handshake
ServerHelloDone
1 5 0.3318 (0.0033) C>S Handshake
ClientKeyExchange
1 6 0.3318 (0.0000) C>S ChangeCipherSpec
1 7 0.3318 (0.0000) C>S Handshake
1 8 0.6591 (0.3273) S>C ChangeCipherSpec
1 9 0.8292 (0.1700) S>C Handshake
1 10 0.8306 (0.0014) C>S application_data
1 11 0.8595 (0.0288) S>C application_data
1 0.9193 (0.0597) S>C TCP FIN
New TCP connection #2: riker.itinerary.com(3248) <-> barclay.itinerary.com(8072)1 12
1.0000 (0.0807) C>S Alert
1 1.0002 (0.0001) C>S TCP FIN
New TCP connection #3: riker.itinerary.com(3249) <-> barclay.itinerary.com(8072)3 1
0.0009 (0.0009) C>S Handshake
ClientHello
Version 3.0
resume [32]=
7d 98 ab e9 f2 a3 1f 5b a4 1d 2d f3 e8 28 b4 49
dd 53 1e 20 df cf 92 a5 bc 9a c1 c2 07 46 4b f7
cipher suites
SSL_RSA_WITH_RC4_128_MD5
Unknown value 0xfeff
SSL_RSA_WITH_3DES_EDE_CBC_SHA
Unknown value 0xfefe
SSL_RSA_WITH_DES_CBC_SHA
SSL_RSA_EXPORT1024_WITH_RC4_56_SHA
SSL_RSA_EXPORT1024_WITH_DES_CBC_SHA
SSL_RSA_EXPORT_WITH_RC4_40_MD5
SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5
compression methods
NULL
