ssl/t1_enc.c:459: error: INTEGER_OVERFLOW_L1
  ([-oo, 0] - 1):unsigned64 by call to `ssl3_cleanup_key_block`.
Showing all 8 steps of the trace


ssl/t1_enc.c:432:1: Parameter `s->s3->tmp.key_block_length`
430.   	}
431.   
432. > int tls1_setup_key_block(SSL *s)
433.   	{
434.   	unsigned char *p1,*p2;

ssl/t1_enc.c:459:2: Call
457.   	num*=2;
458.   
459.   	ssl3_cleanup_key_block(s);
        ^
460.   
461.   	if ((p1=(unsigned char *)OPENSSL_malloc(num)) == NULL)

ssl/s3_enc.c:407:1: Parameter `s->s3->tmp.key_block_length`
  405.   	}
  406.   
  407. > void ssl3_cleanup_key_block(SSL *s)
  408.   	{
  409.   	if (s->s3->tmp.key_block != NULL)

ssl/s3_enc.c:411:3: Call
  409.   	if (s->s3->tmp.key_block != NULL)
  410.   		{
  411.   		OPENSSL_cleanse(s->s3->tmp.key_block,
           ^
  412.   			s->s3->tmp.key_block_length);
  413.   		OPENSSL_free(s->s3->tmp.key_block);

crypto/mem_clr.c:64:1: <LHS trace>
62.   unsigned char cleanse_ctr = 0;
63.   
64. > void OPENSSL_cleanse(void *ptr, size_t len)
65.   	{
66.   	unsigned char *p = ptr;

crypto/mem_clr.c:64:1: Parameter `len`
    62.   unsigned char cleanse_ctr = 0;
    63.   
    64. > void OPENSSL_cleanse(void *ptr, size_t len)
    65.   	{
    66.   	unsigned char *p = ptr;

crypto/mem_clr.c:67:2: Assignment
    65.   	{
    66.   	unsigned char *p = ptr;
    67.   	size_t loop = len;
           ^
    68.   	while(loop--)
    69.   		{

crypto/mem_clr.c:68:8: Binary operation: ([-oo, 0] - 1):unsigned64 by call to `ssl3_cleanup_key_block` 
    66.   	unsigned char *p = ptr;
    67.   	size_t loop = len;
    68.   	while(loop--)
                 ^
    69.   		{
    70.   		*(p++) = cleanse_ctr;
