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


ssl/ssl_sess.c:580:1: Parameter `ctx->sessions->num_items`
578.   	}
579.   
580. > int SSL_CTX_add_session(SSL_CTX *ctx, SSL_SESSION *c)
581.   	{
582.   	int ret=0;

ssl/ssl_sess.c:592:4: Call
590.   
591.   	CRYPTO_w_lock(CRYPTO_LOCK_SSL_CTX);
592.   	s=lh_SSL_SESSION_insert(ctx->sessions,c);
          ^
593.   	
594.   	/* s != NULL iff we already had a session with the given PID.

crypto/lhash/lhash.c:179:1: Parameter `lh->num_items`
  177.   	}
  178.   
  179. > void *lh_insert(_LHASH *lh, void *data)
  180.   	{
  181.   	unsigned long hash;

ssl/ssl_sess.c:633:10: Call
631.   				SSL_CTX_sess_get_cache_size(ctx))
632.   				{
633.   				if (!remove_session_lock(ctx,
                ^
634.   					ctx->session_cache_tail, 0))
635.   					break;

ssl/ssl_sess.c:650:1: Parameter `ctx->sessions->num_items`
  648.   }
  649.   
  650. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
  651.   	{
  652.   	SSL_SESSION *r;

ssl/ssl_sess.c:661:6: Call
  659.   			{
  660.   			ret=1;
  661.   			r=lh_SSL_SESSION_delete(ctx->sessions,c);
              ^
  662.   			SSL_SESSION_list_remove(ctx,c);
  663.   			}

crypto/lhash/lhash.c:217:1: <LHS trace>
215.   	}
216.   
217. > void *lh_delete(_LHASH *lh, const void *data)
218.   	{
219.   	unsigned long hash;

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

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