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


ssl/s3_clnt.c:889:4: Call
887.   	/* use same message size as in ssl3_get_certificate_request()
888.   	 * as ServerKeyExchange message may be skipped */
889.   	n=ssl3_get_message(s,
          ^
890.   		SSL3_ST_CR_KEY_EXCH_A,
891.   		SSL3_ST_CR_KEY_EXCH_B,

ssl/s3_both.c:337:1: Parameter `s->ctx->sessions->p`
  335.    * the body is read in state 'stn'.
  336.    */
  337. > long ssl3_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok)
  338.   	{
  339.   	unsigned char *p;

ssl/s3_clnt.c:1171:2: Call
1169.   	return(1);
1170.   f_err:
1171.   	ssl3_send_alert(s,SSL3_AL_FATAL,al);
         ^
1172.   err:
1173.   	EVP_PKEY_free(pkey);

ssl/s3_pkt.c:1155:1: Parameter `s->ctx->sessions->p`
  1153.   	}
  1154.   
  1155. > void ssl3_send_alert(SSL *s, int level, int desc)
  1156.   	{
  1157.   	/* Map tls/ssl alert value to correct one */

ssl/s3_pkt.c:1162:3: Call
  1160.   	/* If a fatal one, remove from cache */
  1161.   	if ((level == 2) && (s->session != NULL))
  1162.   		SSL_CTX_remove_session(s->ctx,s->session);
            ^
  1163.   
  1164.   	s->s3->alert_dispatch=1;

ssl/ssl_sess.c:468:1: Parameter `ctx->sessions->p`
    466.   	}
    467.   
    468. > int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
    469.   {
    470.   	return remove_session_lock(ctx, c, 1);

ssl/ssl_sess.c:470:9: Call
    468.   int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
    469.   {
    470.   	return remove_session_lock(ctx, c, 1);
                   ^
    471.   }
    472.   

ssl/ssl_sess.c:473:1: Parameter `ctx->sessions->p`
      471.   }
      472.   
      473. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
      474.   	{
      475.   	SSL_SESSION *r;

ssl/ssl_sess.c:481:20: Call
      479.   		{
      480.   		if(lck) CRYPTO_w_lock(CRYPTO_LOCK_SSL_CTX);
      481.   		r=(SSL_SESSION *)lh_delete(ctx->sessions,c);
                                ^
      482.   		if (r != NULL)
      483.   			{

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

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

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

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