ssl/d1_srvr.c:270: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `ssl3_get_client_hello`.
Showing all 17 steps of the trace


ssl/d1_srvr.c:145:1: Parameter `s->ctx->sessions->p`
143.   			dtls1_get_server_method)
144.   
145. > int dtls1_accept(SSL *s)
146.   	{
147.   	BUF_MEM *buf;

ssl/d1_srvr.c:270:8: Call
268.   
269.   			s->shutdown=0;
270.   			ret=ssl3_get_client_hello(s);
              ^
271.   			if (ret <= 0) goto end;
272.   			s->new_session = 2;

ssl/s3_srvr.c:697:1: Parameter `s->ctx->sessions->p`
  695.   }
  696.   
  697. > int ssl3_get_client_hello(SSL *s)
  698.   	{
  699.   	int i,j,ok,al,ret= -1;

ssl/s3_srvr.c:946:7: Call
  944.   			}
  945.   		}
  946.   		if (ssl_check_clienthello_tlsext(s) <= 0) {
               ^
  947.   			SSLerr(SSL_F_SSL3_GET_CLIENT_HELLO,SSL_R_CLIENTHELLO_TLSEXT);
  948.   			goto err;

ssl/t1_lib.c:759:1: Parameter `s->ctx->sessions->p`
    757.   	}
    758.   
    759. > int ssl_check_clienthello_tlsext(SSL *s)
    760.   	{
    761.   	int ret=SSL_TLSEXT_ERR_NOACK;

ssl/t1_lib.c:781:4: Call
    779.   		{
    780.   		case SSL_TLSEXT_ERR_ALERT_FATAL:
    781.   			ssl3_send_alert(s,SSL3_AL_FATAL,al); 
              ^
    782.   			return -1;
    783.   

ssl/s3_pkt.c:1317:1: Parameter `s->ctx->sessions->p`
      1315.   	}
      1316.   
      1317. > void ssl3_send_alert(SSL *s, int level, int desc)
      1318.   	{
      1319.   	/* Map tls/ssl alert value to correct one */

ssl/s3_pkt.c:1326:3: Call
      1324.   	/* If a fatal one, remove from cache */
      1325.   	if ((level == 2) && (s->session != NULL))
      1326.   		SSL_CTX_remove_session(s->ctx,s->session);
                ^
      1327.   
      1328.   	s->s3->alert_dispatch=1;

ssl/ssl_sess.c:616:1: Parameter `ctx->sessions->p`
        614.   	}
        615.   
        616. > int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
        617.   {
        618.   	return remove_session_lock(ctx, c, 1);

ssl/ssl_sess.c:618:9: Call
        616.   int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
        617.   {
        618.   	return remove_session_lock(ctx, c, 1);
                       ^
        619.   }
        620.   

ssl/ssl_sess.c:621:1: Parameter `ctx->sessions->pmax`
          619.   }
          620.   
          621. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
          622.   	{
          623.   	SSL_SESSION *r;

ssl/ssl_sess.c:632:21: Call
          630.   			{
          631.   			ret=1;
          632.   			r=(SSL_SESSION *)lh_delete(ctx->sessions,c);
                                     ^
          633.   			SSL_SESSION_list_remove(ctx,c);
          634.   			}

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(ret);

crypto/lhash/lhash.c:364:1: <LHS trace>
362.   	}
363.   
364. > static void contract(LHASH *lh)
365.   	{
366.   	LHASH_NODE **n,*n1,*np;

crypto/lhash/lhash.c:364:1: Parameter `lh->p`
              362.   	}
              363.   
              364. > static void contract(LHASH *lh)
              365.   	{
              366.   	LHASH_NODE **n,*n1,*np;

crypto/lhash/lhash.c:368:5: Binary operation: ([0, +oo] - 1):unsigned32 by call to `ssl3_get_client_hello` 
              366.   	LHASH_NODE **n,*n1,*np;
              367.   
              368.   	np=lh->b[lh->p+lh->pmax-1];
                         ^
              369.   	lh->b[lh->p+lh->pmax-1]=NULL; /* 24/07-92 - eay - weird but :-( */
              370.   	if (lh->p == 0)
