OpenSSL CVS Repository
http://cvs.openssl.org/
____________________________________________________________
________________
Server: cvs.openssl.org Name: Andy
Polyakov
Root: /v/openssl/cvs Email: appro openssl.org
Module: openssl Date:
01-Oct-2007 00:03:08
Branch: OpenSSL_0_9_8-stable Handle:
2007093023030700
Modified files: (Branch: OpenSSL_0_9_8-stable)
openssl/ssl d1_pkt.c
Log:
Explicit IV update [from HEAD].
Summary:
Revision Changes Path
1.4.2.8 +9 -2 openssl/ssl/d1_pkt.c
____________________________________________________________
________________
patch -p0 <<' .'
Index: openssl/ssl/d1_pkt.c
============================================================
================
$ cvs diff -u -r1.4.2.7 -r1.4.2.8 d1_pkt.c
--- openssl/ssl/d1_pkt.c 30 Sep 2007 21:20:59
-0000 1.4.2.7
+++ openssl/ssl/d1_pkt.c 30 Sep 2007 22:03:07
-0000 1.4.2.8
 -120,6 +120,7 
#include <openssl/evp.h>
#include <openssl/buffer.h>
#include <openssl/pqueue.h>
+#include <openssl/rand.h>
static int have_handshake_fragment(SSL *s, int type,
unsigned char *buf,
int len, int peek);
 -1395,8 +1396,14 
/* ssl3_enc can only have an error on read */
- wr->length += bs; /* bs != 0 in case of CBC. The
enc fn provides
- * the randomness */
+ if (bs) /* bs != 0 in case of CBC */
+ {
+ RAND_pseudo_bytes(p,bs);
+ /* master IV and last CBC residue stand for
+ * the rest of randomness */
+ wr->length += bs;
+ }
+
s->method->ssl3_enc->enc(s,1);
/* record length after mac and block padding */
 .
____________________________________________________________
__________
OpenSSL Project http://www.openssl.org
CVS Repository Commit List
openssl-cvs openssl.org
Automated List Manager
majordomo openssl.org
|