Submitted By: Robin Seggelmann <seggelmann@fh-muenster.de>

Fix other cases not covered by original patch. (correct patch this time!)
This commit is contained in:
Dr. Stephen Henson
2010-08-27 12:12:07 +00:00
parent c6dd154b3e
commit 36778eb231
2 changed files with 4 additions and 4 deletions

View File

@@ -1383,7 +1383,7 @@ int ssl_cipher_list_to_bytes(SSL *s,STACK_OF(SSL_CIPHER) *sk,unsigned char *p,
/* If p == q, no ciphers and caller indicates an error. Otherwise /* If p == q, no ciphers and caller indicates an error. Otherwise
* add SCSV if not renegotiating. * add SCSV if not renegotiating.
*/ */
if (p != q && !s->new_session) if (p != q && !s->renegotiate)
{ {
static SSL_CIPHER scsv = static SSL_CIPHER scsv =
{ {
@@ -1430,7 +1430,7 @@ STACK_OF(SSL_CIPHER) *ssl_bytes_to_cipher_list(SSL *s,unsigned char *p,int num,
(p[n-1] == (SSL3_CK_SCSV & 0xff))) (p[n-1] == (SSL3_CK_SCSV & 0xff)))
{ {
/* SCSV fatal if renegotiating */ /* SCSV fatal if renegotiating */
if (s->new_session) if (s->renegotiate)
{ {
SSLerr(SSL_F_SSL_BYTES_TO_CIPHER_LIST,SSL_R_SCSV_RECEIVED_WHEN_RENEGOTIATING); SSLerr(SSL_F_SSL_BYTES_TO_CIPHER_LIST,SSL_R_SCSV_RECEIVED_WHEN_RENEGOTIATING);
ssl3_send_alert(s,SSL3_AL_FATAL,SSL_AD_HANDSHAKE_FAILURE); ssl3_send_alert(s,SSL3_AL_FATAL,SSL_AD_HANDSHAKE_FAILURE);

View File

@@ -317,7 +317,7 @@ unsigned char *ssl_add_clienthello_tlsext(SSL *s, unsigned char *p, unsigned cha
} }
/* Add RI if renegotiating */ /* Add RI if renegotiating */
if (s->new_session) if (s->renegotiate)
{ {
int el; int el;
@@ -969,7 +969,7 @@ int ssl_parse_clienthello_tlsext(SSL *s, unsigned char **p, unsigned char *d, in
/* Need RI if renegotiating */ /* Need RI if renegotiating */
if (!renegotiate_seen && s->new_session && if (!renegotiate_seen && s->renegotiate &&
!(s->options & SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION)) !(s->options & SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION))
{ {
*al = SSL_AD_HANDSHAKE_FAILURE; *al = SSL_AD_HANDSHAKE_FAILURE;