diff options
Diffstat (limited to 'src/lib/libssl/ssl_asn1.c')
-rw-r--r-- | src/lib/libssl/ssl_asn1.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/lib/libssl/ssl_asn1.c b/src/lib/libssl/ssl_asn1.c index c550747947..23bfe44e21 100644 --- a/src/lib/libssl/ssl_asn1.c +++ b/src/lib/libssl/ssl_asn1.c | |||
@@ -57,8 +57,8 @@ | |||
57 | */ | 57 | */ |
58 | 58 | ||
59 | #include <stdio.h> | 59 | #include <stdio.h> |
60 | #include "ssl_locl.h" | ||
61 | #include <stdlib.h> | 60 | #include <stdlib.h> |
61 | #include "ssl_locl.h" | ||
62 | #include <openssl/asn1_mac.h> | 62 | #include <openssl/asn1_mac.h> |
63 | #include <openssl/objects.h> | 63 | #include <openssl/objects.h> |
64 | #include <openssl/x509.h> | 64 | #include <openssl/x509.h> |
@@ -293,10 +293,11 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, unsigned char **pp, | |||
293 | i=SSL2_MAX_SSL_SESSION_ID_LENGTH; | 293 | i=SSL2_MAX_SSL_SESSION_ID_LENGTH; |
294 | 294 | ||
295 | if (os.length > i) | 295 | if (os.length > i) |
296 | os.length=i; | 296 | os.length = i; |
297 | if (os.length > sizeof ret->session_id) /* can't happen */ | ||
298 | os.length = sizeof ret->session_id; | ||
297 | 299 | ||
298 | ret->session_id_length=os.length; | 300 | ret->session_id_length=os.length; |
299 | die(os.length <= sizeof ret->session_id); | ||
300 | memcpy(ret->session_id,os.data,os.length); | 301 | memcpy(ret->session_id,os.data,os.length); |
301 | 302 | ||
302 | M_ASN1_D2I_get(osp,d2i_ASN1_OCTET_STRING); | 303 | M_ASN1_D2I_get(osp,d2i_ASN1_OCTET_STRING); |