On Fri, Sep 21, 2001 at 10:09:37AM +0100, Andy Schneider wrote:

> This patch works. However it is also worth noting that my tests expose a
> minor caveat. If a client and server request handshakes thus:
> 
> Server:
>       Read
>       Renegotiate
>       Read
>       Write
> 
> Client:
>       Write
>       Renegotiate
>       Read
>       Write
> 
> The client will hang stuck in this loop (in ssl3_get_message): [...]

Oops.  This should fix that bug:

Index: s3_both.c
===================================================================
RCS file: /e/openssl/cvs/openssl/ssl/s3_both.c,v
retrieving revision 1.22.2.1
diff -u -u -r1.22.2.1 s3_both.c
--- s3_both.c   2000/12/14 17:34:26     1.22.2.1
+++ s3_both.c   2001/09/21 11:12:02
@@ -383,7 +383,11 @@
                                         * if their format is correct. Does not count 
for
                                         * 'Finished' MAC. */
                                        if (p[1] == 0 && p[2] == 0 &&p[3] == 0)
+                                               {
+                                               s->init_num = 0;
                                                skip_message = 1;
+                                               }
+                       
                        }
                while (skip_message);
 



-- 
Bodo M�ller <[EMAIL PROTECTED]>
PGP http://www.informatik.tu-darmstadt.de/TI/Mitarbeiter/moeller/0x36d2c658.html
* TU Darmstadt, Theoretische Informatik, Alexanderstr. 10, D-64283 Darmstadt
* Tel. +49-6151-16-6628, Fax +49-6151-16-6036
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to