ssl/ssl_sess.c:323: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `SSL_CTX_remove_session`.
Showing all 11 steps of the trace


ssl/ssl_sess.c:211:1: Parameter `s->ctx->sessions->p`
209.   	}
210.   
211. > int ssl_get_prev_session(SSL *s, unsigned char *session_id, int len)
212.   	{
213.   	/* This is used only by servers. */

ssl/ssl_sess.c:323:3: Call
321.   		s->ctx->stats.sess_timeout++;
322.   		/* remove it from the cache */
323.   		SSL_CTX_remove_session(s->ctx,ret);
         ^
324.   		goto err;
325.   		}

ssl/ssl_sess.c:413:1: Parameter `ctx->sessions->p`
  411.   	}
  412.   
  413. > int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
  414.   {
  415.   	return remove_session_lock(ctx, c, 1);

ssl/ssl_sess.c:415:9: Call
  413.   int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
  414.   {
  415.   	return remove_session_lock(ctx, c, 1);
                 ^
  416.   }
  417.   

ssl/ssl_sess.c:418:1: Parameter `ctx->sessions->p`
    416.   }
    417.   
    418. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
    419.   	{
    420.   	SSL_SESSION *r;

ssl/ssl_sess.c:426:20: Call
    424.   		{
    425.   		if(lck) CRYPTO_w_lock(CRYPTO_LOCK_SSL_CTX);
    426.   		r=(SSL_SESSION *)lh_delete(ctx->sessions,c);
                              ^
    427.   		if (r != NULL)
    428.   			{

crypto/lhash/lhash.c:217:1: Parameter `lh->pmax`
      215.   	}
      216.   
      217. > void *lh_delete(LHASH *lh, const void *data)
      218.   	{
      219.   	unsigned long hash;

crypto/lhash/lhash.c:243:3: Call
      241.   	if ((lh->num_nodes > MIN_NODES) &&
      242.   		(lh->down_load >= (lh->num_items*LH_LOAD_MULT/lh->num_nodes)))
      243.   		contract(lh);
               ^
      244.   
      245.   	return((void *)ret);

crypto/lhash/lhash.c:359:1: <LHS trace>
357.   	}
358.   
359. > static void contract(LHASH *lh)
360.   	{
361.   	LHASH_NODE **n,*n1,*np;

crypto/lhash/lhash.c:359:1: Parameter `lh->p`
        357.   	}
        358.   
        359. > static void contract(LHASH *lh)
        360.   	{
        361.   	LHASH_NODE **n,*n1,*np;

crypto/lhash/lhash.c:363:5: Binary operation: ([0, +oo] - 1):unsigned32 by call to `SSL_CTX_remove_session` 
        361.   	LHASH_NODE **n,*n1,*np;
        362.   
        363.   	np=lh->b[lh->p+lh->pmax-1];
                   ^
        364.   	lh->b[lh->p+lh->pmax-1]=NULL; /* 24/07-92 - eay - weird but :-( */
        365.   	if (lh->p == 0)
