ssl/s3_srvr.c:305: error: INTEGER_OVERFLOW_L2
  ([0, max(0, `s->ctx->sessions->num_items`)] - 1):unsigned64 by call to `ssl3_get_client_hello`.
Showing all 15 steps of the trace


ssl/s3_srvr.c:187:1: Parameter `s->ctx->sessions->num_items`
185.   			ssl3_get_server_method)
186.   
187. > int ssl3_accept(SSL *s)
188.   	{
189.   	BUF_MEM *buf;

ssl/s3_srvr.c:305:8: Call
303.   
304.   			s->shutdown=0;
305.   			ret=ssl3_get_client_hello(s);
              ^
306.   			if (ret <= 0) goto end;
307.   			

ssl/s3_srvr.c:763:1: Parameter `s->ctx->sessions->num_items`
  761.   }
  762.   
  763. > int ssl3_get_client_hello(SSL *s)
  764.   	{
  765.   	int i,j,ok,al,ret= -1;

ssl/s3_srvr.c:1019:7: Call
  1017.   			}
  1018.   		}
  1019.   		if (ssl_check_clienthello_tlsext(s) <= 0) {
                ^
  1020.   			SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO,SSL_R_CLIENTHELLO_TLSEXT);
  1021.   			goto err;

ssl/t1_lib.c:1185:1: Parameter `s->ctx->sessions->num_items`
    1183.   	}
    1184.   
    1185. > int ssl_check_clienthello_tlsext(SSL *s)
    1186.   	{
    1187.   	int ret=SSL_TLSEXT_ERR_NOACK;

ssl/t1_lib.c:1296:4: Call
    1294.   		{
    1295.   		case SSL_TLSEXT_ERR_ALERT_FATAL:
    1296.   			ssl3_send_alert(s,SSL3_AL_FATAL,al); 
               ^
    1297.   			return -1;
    1298.   

ssl/s3_pkt.c:1353:1: Parameter `s->ctx->sessions->num_items`
      1351.   	}
      1352.   
      1353. > int ssl3_send_alert(SSL *s, int level, int desc)
      1354.   	{
      1355.   	/* Map tls/ssl alert value to correct one */

ssl/s3_pkt.c:1362:3: Call
      1360.   	/* If a fatal one, remove from cache */
      1361.   	if ((level == 2) && (s->session != NULL))
      1362.   		SSL_CTX_remove_session(s->ctx,s->session);
                ^
      1363.   
      1364.   	s->s3->alert_dispatch=1;

ssl/ssl_sess.c:653:1: Parameter `ctx->sessions->num_items`
        651.   	}
        652.   
        653. > int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
        654.   {
        655.   	return remove_session_lock(ctx, c, 1);

ssl/ssl_sess.c:655:9: Call
        653.   int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
        654.   {
        655.   	return remove_session_lock(ctx, c, 1);
                       ^
        656.   }
        657.   

ssl/ssl_sess.c:658:1: Parameter `ctx->sessions->num_items`
          656.   }
          657.   
          658. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
          659.   	{
          660.   	SSL_SESSION *r;

ssl/ssl_sess.c:669:6: Call
          667.   			{
          668.   			ret=1;
          669.   			r=lh_SSL_SESSION_delete(ctx->sessions,c);
                      ^
          670.   			SSL_SESSION_list_remove(ctx,c);
          671.   			}

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, max(0, s->ctx->sessions->num_items)] - 1):unsigned64 by call to `ssl3_get_client_hello` 
            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)))
