diff options
| author | jasper <> | 2010-04-14 12:41:05 +0000 |
|---|---|---|
| committer | jasper <> | 2010-04-14 12:41:05 +0000 |
| commit | 9566d97d91fecf6448578e21116b0bc95b9a5e0c (patch) | |
| tree | 912e210fca8ea84c2e455617b2ad822c717c6383 /src | |
| parent | 3368464972faf5ed33853fda5c0505f9af93fbec (diff) | |
| download | openbsd-9566d97d91fecf6448578e21116b0bc95b9a5e0c.tar.gz openbsd-9566d97d91fecf6448578e21116b0bc95b9a5e0c.tar.bz2 openbsd-9566d97d91fecf6448578e21116b0bc95b9a5e0c.zip | |
Security fix for CVE-2010-0740
"In TLS connections, certain incorrectly formatted records can cause an OpenSSL
client or server to crash due to a read attempt at NULL."
http://openssl.org/news/secadv_20100324.txt
ok deraadt@ djm@ sthen@
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libssl/s3_pkt.c | 7 | ||||
| -rw-r--r-- | src/lib/libssl/src/ssl/s3_pkt.c | 7 |
2 files changed, 8 insertions, 6 deletions
diff --git a/src/lib/libssl/s3_pkt.c b/src/lib/libssl/s3_pkt.c index b98b84044f..515739c08c 100644 --- a/src/lib/libssl/s3_pkt.c +++ b/src/lib/libssl/s3_pkt.c | |||
| @@ -282,9 +282,10 @@ again: | |||
| 282 | if (version != s->version) | 282 | if (version != s->version) |
| 283 | { | 283 | { |
| 284 | SSLerr(SSL_F_SSL3_GET_RECORD,SSL_R_WRONG_VERSION_NUMBER); | 284 | SSLerr(SSL_F_SSL3_GET_RECORD,SSL_R_WRONG_VERSION_NUMBER); |
| 285 | /* Send back error using their | 285 | if ((s->version & 0xFF00) == (version & 0xFF00)) |
| 286 | * version number :-) */ | 286 | /* Send back error using their |
| 287 | s->version=version; | 287 | * minor version number :-) */ |
| 288 | s->version = (unsigned short)version; | ||
| 288 | al=SSL_AD_PROTOCOL_VERSION; | 289 | al=SSL_AD_PROTOCOL_VERSION; |
| 289 | goto f_err; | 290 | goto f_err; |
| 290 | } | 291 | } |
diff --git a/src/lib/libssl/src/ssl/s3_pkt.c b/src/lib/libssl/src/ssl/s3_pkt.c index b98b84044f..515739c08c 100644 --- a/src/lib/libssl/src/ssl/s3_pkt.c +++ b/src/lib/libssl/src/ssl/s3_pkt.c | |||
| @@ -282,9 +282,10 @@ again: | |||
| 282 | if (version != s->version) | 282 | if (version != s->version) |
| 283 | { | 283 | { |
| 284 | SSLerr(SSL_F_SSL3_GET_RECORD,SSL_R_WRONG_VERSION_NUMBER); | 284 | SSLerr(SSL_F_SSL3_GET_RECORD,SSL_R_WRONG_VERSION_NUMBER); |
| 285 | /* Send back error using their | 285 | if ((s->version & 0xFF00) == (version & 0xFF00)) |
| 286 | * version number :-) */ | 286 | /* Send back error using their |
| 287 | s->version=version; | 287 | * minor version number :-) */ |
| 288 | s->version = (unsigned short)version; | ||
| 288 | al=SSL_AD_PROTOCOL_VERSION; | 289 | al=SSL_AD_PROTOCOL_VERSION; |
| 289 | goto f_err; | 290 | goto f_err; |
| 290 | } | 291 | } |
