ssl/ssl_sess.c:308: error: INTEGER_OVERFLOW_L2
  ([0, `ctx->sessions->num_items` + 1] - 1):unsigned64 by call to `remove_session_lock`.
Showing all 9 steps of the trace


ssl/ssl_sess.c:275:1: Parameter `ctx->sessions->num_items`
273.   	}
274.   
275. > int SSL_CTX_add_session(SSL_CTX *ctx, SSL_SESSION *c)
276.   	{
277.   	int ret=0;

ssl/ssl_sess.c:284:19: Call
282.   
283.   	CRYPTO_w_lock(CRYPTO_LOCK_SSL_CTX);
284.   	s=(SSL_SESSION *)lh_insert(ctx->sessions,(char *)c);
                         ^
285.   	
286.   	/* Put on the end of the queue unless it is already in the cache */

crypto/lhash/lhash.c:182:1: Parameter `lh->num_items`
  180.   	}
  181.   
  182. > char *lh_insert(LHASH *lh, char *data)
  183.   	{
  184.   	unsigned long hash;

ssl/ssl_sess.c:308:10: Call
306.   				SSL_CTX_sess_get_cache_size(ctx))
307.   				{
308.   				if (!remove_session_lock(ctx,
                ^
309.   					ctx->session_cache_tail, 0))
310.   					break;

ssl/ssl_sess.c:325:1: Parameter `ctx->sessions->num_items`
  323.   }
  324.   
  325. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
  326.   	{
  327.   	SSL_SESSION *r;

ssl/ssl_sess.c:333:20: Call
  331.   		{
  332.   		if(lck) CRYPTO_w_lock(CRYPTO_LOCK_SSL_CTX);
  333.   		r=(SSL_SESSION *)lh_delete(ctx->sessions,(char *)c);
                            ^
  334.   		if (r != NULL)
  335.   			{

crypto/lhash/lhash.c:220:1: <LHS trace>
218.   	}
219.   
220. > char *lh_delete(LHASH *lh, char *data)
221.   	{
222.   	unsigned long hash;

crypto/lhash/lhash.c:220:1: Parameter `lh->num_items`
    218.   	}
    219.   
    220. > char *lh_delete(LHASH *lh, char *data)
    221.   	{
    222.   	unsigned long hash;

crypto/lhash/lhash.c:243:2: Binary operation: ([0, ctx->sessions->num_items + 1] - 1):unsigned64 by call to `remove_session_lock` 
    241.   		}
    242.   
    243.   	lh->num_items--;
            ^
    244.   	if ((lh->num_nodes > MIN_NODES) &&
    245.   		(lh->down_load >= (lh->num_items*LH_LOAD_MULT/lh->num_nodes)))
