Fix ssl_get_prev_session overrun
[openssl.git] / ssl / ssl_sess.c
index 1e1002fc8540dbff16a71a3fcfeac77df593d9bb..dce90887bbd68376c814ad8075eca44cba0502ee 100644 (file)
@@ -452,6 +452,11 @@ int ssl_get_prev_session(SSL *s, unsigned char *session_id, int len,
     if (len > SSL_MAX_SSL_SESSION_ID_LENGTH)
         goto err;
 
+    if (session_id + len > limit) {
+        fatal = 1;
+        goto err;
+    }
+
     if (len == 0)
         try_session_cache = 0;