ssl/s3_clnt.c:251: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned32 by call to `ssl3_check_cert_and_algorithm`.
Showing all 15 steps of the trace


ssl/s3_clnt.c:244:8: Call
242.   		case SSL3_ST_CR_KEY_EXCH_A:
243.   		case SSL3_ST_CR_KEY_EXCH_B:
244.   			ret=ssl3_get_key_exchange(s);
              ^
245.   			if (ret <= 0) goto end;
246.   			s->state=SSL3_ST_CR_CERT_REQ_A;

ssl/s3_clnt.c:862:4: Call
  860.   #endif
  861.   
  862.   	n=ssl3_get_message(s,
            ^
  863.   		SSL3_ST_CR_KEY_EXCH_A,
  864.   		SSL3_ST_CR_KEY_EXCH_B,

ssl/s3_both.c:263:1: Parameter `s->ctx->sessions->p`
    261.   	}
    262.   
    263. > long ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok)
    264.   	{
    265.   	unsigned char *p;

ssl/s3_clnt.c:251:9: Call
249.   			/* at this point we check that we have the
250.   			 * required stuff from the server */
251.   			if (!ssl3_check_cert_and_algorithm(s))
               ^
252.   				{
253.   				ret= -1;

ssl/s3_clnt.c:1613:1: Parameter `s->ctx->sessions->p`
  1611.   #define has_bits(i,m)	(((i)&(m)) == (m))
  1612.   
  1613. > static int ssl3_check_cert_and_algorithm(SSL *s)
  1614.   	{
  1615.   	int i,idx;

ssl/s3_clnt.c:1721:2: Call
  1719.   	return(1);
  1720.   f_err:
  1721.   	ssl3_send_alert(s,SSL3_AL_FATAL,SSL_AD_HANDSHAKE_FAILURE);
           ^
  1722.   err:
  1723.   	return(0);

ssl/s3_pkt.c:1022:1: Parameter `s->ctx->sessions->p`
    1020.   	}
    1021.   
    1022. > void ssl3_send_alert(SSL *s, int level, int desc)
    1023.   	{
    1024.   	/* Map tls/ssl alert value to correct one */

ssl/s3_pkt.c:1029:3: Call
    1027.   	/* If a fatal one, remove from cache */
    1028.   	if ((level == 2) && (s->session != NULL))
    1029.   		SSL_CTX_remove_session(s->ctx,s->session);
              ^
    1030.   
    1031.   	s->s3->alert_dispatch=1;

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

ssl/ssl_sess.c:333:20: Call
      331.   		{
      332.   		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:231:1: Parameter `lh->pmax`
        229.   	}
        230.   
        231. > char *lh_delete(LHASH *lh, char *data)
        232.   	{
        233.   	unsigned long hash;

crypto/lhash/lhash.c:257:3: Call
        255.   	if ((lh->num_nodes > MIN_NODES) &&
        256.   		(lh->down_load >= (lh->num_items*LH_LOAD_MULT/lh->num_nodes)))
        257.   		contract(lh);
                 ^
        258.   
        259.   	return(ret);

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

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

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