ssl/statem/statem.c:610: 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:538:1: Parameter `s->init_buf->max`
536.    * will resume in the same state where we left off.
537.    */
538. > static SUB_STATE_RETURN read_state_machine(SSL *s)
539.   {
540.       OSSL_STATEM *st = &s->statem;

ssl/statem/statem.c:610:25: Call
608.               if (!SSL_IS_DTLS(s)
609.                       && s->s3.tmp.message_size > 0
610.                       && !grow_init_buf(s, s->s3.tmp.message_size
                               ^
611.                                            + SSL3_HM_HEADER_LENGTH)) {
612.                   SSLfatal(s, SSL_AD_INTERNAL_ERROR, SSL_F_READ_STATE_MACHINE,

ssl/statem/statem.c:497:1: Parameter `s->init_buf->max`
  495.   }
  496.   
  497. > static int grow_init_buf(SSL *s, size_t size) {
  498.   
  499.       size_t msg_offset = (char *)s->init_msg - s->init_buf->data;

ssl/statem/statem.c:501:10: Call
  499.       size_t msg_offset = (char *)s->init_msg - s->init_buf->data;
  500.   
  501.       if (!BUF_MEM_grow_clean(s->init_buf, (int)size))
                  ^
  502.           return 0;
  503.   

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

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

crypto/mem.c:268:1: <LHS trace>
266.   }
267.   
268. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
269.                              const char *file, int line)
270.   {

crypto/mem.c:268:1: Parameter `num`
      266.   }
      267.   
      268. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
      269.                              const char *file, int line)
      270.   {

crypto/mem.c:268:1: <RHS trace>
266.   }
267.   
268. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
269.                              const char *file, int line)
270.   {

crypto/mem.c:268:1: Parameter `num`
      266.   }
      267.   
      268. > void *CRYPTO_clear_realloc(void *str, size_t old_len, size_t num,
      269.                              const char *file, int line)
      270.   {

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