diff options
| author | markus <> | 2003-05-12 02:18:40 +0000 |
|---|---|---|
| committer | markus <> | 2003-05-12 02:18:40 +0000 |
| commit | d4fcd82bb7f6d603bd61e19a81ba97337b89dfca (patch) | |
| tree | d52e3a0f1f08f65ad283027e560e17ed0d720462 /src/lib/libssl/ssl_asn1.c | |
| parent | 582bbd139cd2afd58d10dc051c5b0b989b441074 (diff) | |
| download | openbsd-d4fcd82bb7f6d603bd61e19a81ba97337b89dfca.tar.gz openbsd-d4fcd82bb7f6d603bd61e19a81ba97337b89dfca.tar.bz2 openbsd-d4fcd82bb7f6d603bd61e19a81ba97337b89dfca.zip | |
merge 0.9.7b with local changes; crank majors for libssl/libcrypto
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libssl/ssl_asn1.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/lib/libssl/ssl_asn1.c b/src/lib/libssl/ssl_asn1.c index 23bfe44e21..d8ff8fc4a3 100644 --- a/src/lib/libssl/ssl_asn1.c +++ b/src/lib/libssl/ssl_asn1.c | |||
| @@ -298,6 +298,7 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, unsigned char **pp, | |||
| 298 | os.length = sizeof ret->session_id; | 298 | os.length = sizeof ret->session_id; |
| 299 | 299 | ||
| 300 | ret->session_id_length=os.length; | 300 | ret->session_id_length=os.length; |
| 301 | OPENSSL_assert(os.length <= sizeof ret->session_id); | ||
| 301 | memcpy(ret->session_id,os.data,os.length); | 302 | memcpy(ret->session_id,os.data,os.length); |
| 302 | 303 | ||
| 303 | M_ASN1_D2I_get(osp,d2i_ASN1_OCTET_STRING); | 304 | M_ASN1_D2I_get(osp,d2i_ASN1_OCTET_STRING); |
| @@ -369,9 +370,15 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, unsigned char **pp, | |||
| 369 | if(os.data != NULL) | 370 | if(os.data != NULL) |
| 370 | { | 371 | { |
| 371 | if (os.length > SSL_MAX_SID_CTX_LENGTH) | 372 | if (os.length > SSL_MAX_SID_CTX_LENGTH) |
| 373 | { | ||
| 374 | ret->sid_ctx_length=os.length; | ||
| 372 | SSLerr(SSL_F_D2I_SSL_SESSION,SSL_R_BAD_LENGTH); | 375 | SSLerr(SSL_F_D2I_SSL_SESSION,SSL_R_BAD_LENGTH); |
| 373 | ret->sid_ctx_length=os.length; | 376 | } |
| 374 | memcpy(ret->sid_ctx,os.data,os.length); | 377 | else |
| 378 | { | ||
| 379 | ret->sid_ctx_length=os.length; | ||
| 380 | memcpy(ret->sid_ctx,os.data,os.length); | ||
| 381 | } | ||
| 375 | OPENSSL_free(os.data); os.data=NULL; os.length=0; | 382 | OPENSSL_free(os.data); os.data=NULL; os.length=0; |
| 376 | } | 383 | } |
| 377 | else | 384 | else |
