ssl/statem/statem_srvr.c:3350: error: INTEGER_OVERFLOW_L2
  (0 - [-oo, 65280]):unsigned64 by call to `EVP_EncryptUpdate`.
Showing all 9 steps of the trace


ssl/statem/statem_srvr.c:3242:17: Call
3240.   
3241.       /* get session encoding length */
3242.       slen_full = i2d_SSL_SESSION(s->session, NULL);
                        ^
3243.       /*
3244.        * Some length values are 16 bits, so forget it if session is too

ssl/ssl_asn1.c:149:9: Assignment
  147.   
  148.       if ((in == NULL) || ((in->cipher == NULL) && (in->cipher_id == 0)))
  149.           return 0;
                 ^
  150.   
  151.       memset(&as, 0, sizeof(as));

ssl/statem/statem_srvr.c:3242:5: Assignment
3240.   
3241.       /* get session encoding length */
3242.       slen_full = i2d_SSL_SESSION(s->session, NULL);
            ^
3243.       /*
3244.        * Some length values are 16 bits, so forget it if session is too

ssl/statem/statem_srvr.c:3350:17: Call
3348.                                         &encdata1)
3349.                  /* Encrypt session data */
3350.               || !EVP_EncryptUpdate(ctx, encdata1, &len, senc, slen)
                        ^
3351.               || !WPACKET_allocate_bytes(pkt, len, &encdata2)
3352.               || encdata1 != encdata2

crypto/evp/evp_enc.c:293:1: Parameter `inl`
  291.   }
  292.   
  293. > int EVP_EncryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl,
  294.                         const unsigned char *in, int inl)
  295.   {

crypto/evp/evp_enc.c:302:24: Call
  300.       if (ctx->cipher->flags & EVP_CIPH_FLAG_CUSTOM_CIPHER) {
  301.           /* If block size > 1 then the cipher will have to do this check */
  302.           if (bl == 1 && is_partially_overlapping(out, in, inl)) {
                                ^
  303.               EVPerr(EVP_F_EVP_ENCRYPTUPDATE, EVP_R_PARTIALLY_OVERLAPPING);
  304.               return 0;

crypto/evp/evp_enc.c:279:1: <RHS trace>
277.   #endif
278.   
279. > int is_partially_overlapping(const void *ptr1, const void *ptr2, int len)
280.   {
281.       PTRDIFF_T diff = (PTRDIFF_T)ptr1-(PTRDIFF_T)ptr2;

crypto/evp/evp_enc.c:279:1: Parameter `len`
    277.   #endif
    278.   
    279. > int is_partially_overlapping(const void *ptr1, const void *ptr2, int len)
    280.   {
    281.       PTRDIFF_T diff = (PTRDIFF_T)ptr1-(PTRDIFF_T)ptr2;

crypto/evp/evp_enc.c:288:50: Binary operation: (0 - [-oo, 65280]):unsigned64 by call to `EVP_EncryptUpdate` 
    286.        */
    287.       int overlapped = (len > 0) & (diff != 0) & ((diff < (PTRDIFF_T)len) |
    288.                                                   (diff > (0 - (PTRDIFF_T)len)));
                                                            ^
    289.   
    290.       return overlapped;
