ssl/statem/statem.c:602: error: INTEGER_OVERFLOW_L2
  ([2, max(2147483644, `s->init_buf->max`)] - [1, 2147483644]):unsigned64 by call to `grow_init_buf`.
Showing all 11 steps of the trace


ssl/statem/statem.c:528:1: Parameter `s->init_buf->max`
526.    * will resume in the same state where we left off.
527.    */
528. > static SUB_STATE_RETURN read_state_machine(SSL *s)
529.   {
530.       OSSL_STATEM *st = &s->statem;

ssl/statem/statem.c:602:25: Call
600.               if (!SSL_IS_DTLS(s)
601.                       && s->s3->tmp.message_size > 0
602.                       && !grow_init_buf(s, s->s3->tmp.message_size
                               ^
603.                                            + SSL3_HM_HEADER_LENGTH)) {
604.                   SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_READ_STATE_MACHINE,

ssl/statem/statem.c:487:1: Parameter `s->init_buf->max`
  485.   }
  486.   
  487. > static int grow_init_buf(SSL *s, size_t size) {
  488.   
  489.       size_t msg_offset = (char *)s->init_msg - s->init_buf->data;

ssl/statem/statem.c:491:10: Call
  489.       size_t msg_offset = (char *)s->init_msg - s->init_buf->data;
  490.   
  491.       if (!BUF_MEM_grow_clean(s->init_buf, (int)size))
                  ^
  492.           return 0;
  493.   

crypto/buffer/buffer.c:111:1: Parameter `len`
    109.   }
    110.   
    111. > size_t BUF_MEM_grow_clean(BUF_MEM *str, size_t len)
    112.   {
    113.       char *ret;

crypto/buffer/buffer.c:136:15: Call
    134.           ret = sec_alloc_realloc(str, n);
    135.       else
    136.           ret = OPENSSL_clear_realloc(str->data, str->max, n);
                         ^
    137.       if (ret == NULL) {
    138.           BUFerr(BUF_F_BUF_MEM_GROW_CLEAN, ERR_R_MALLOC_FAILURE);

crypto/mem.c:259:1: <LHS trace>
257.   }
258.   
259. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
260.                              const char *file, int line)
261.   {

crypto/mem.c:259:1: Parameter `num`
      257.   }
      258.   
      259. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
      260.                              const char *file, int line)
      261.   {

crypto/mem.c:259:1: <RHS trace>
257.   }
258.   
259. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
260.                              const char *file, int line)
261.   {

crypto/mem.c:259:1: Parameter `num`
      257.   }
      258.   
      259. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
      260.                              const char *file, int line)
      261.   {

crypto/mem.c:274:9: Binary operation: ([2, max(2147483644, s->init_buf->max)] - [1, 2147483644]):unsigned64 by call to `grow_init_buf` 
      272.       /* Can't shrink the buffer since memcpy below copies |old_len| bytes. */
      273.       if (num < old_len) {
      274.           OPENSSL_cleanse((char*)str + num, old_len - num);
                     ^
      275.           return str;
      276.       }
