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


ssl/s3_srvr.c:113:1: Parameter `s->ctx->sessions->p`
111.   	}
112.   
113. > int ssl3_accept(SSL *s)
114.   	{
115.   	BUF_MEM *buf;

ssl/s3_srvr.c:291:9: Call
289.   			    )
290.   				{
291.   				ret=ssl3_send_server_key_exchange(s);
               ^
292.   				if (ret <= 0) goto end;
293.   				}

ssl/s3_srvr.c:928:1: Parameter `s->ctx->sessions->p`
  926.   	}
  927.   
  928. > static int ssl3_send_server_key_exchange(SSL *s)
  929.   	{
  930.   #ifndef OPENSSL_NO_RSA

ssl/s3_srvr.c:1161:2: Call
  1159.   	return(ssl3_do_write(s,SSL3_RT_HANDSHAKE));
  1160.   f_err:
  1161.   	ssl3_send_alert(s,SSL3_AL_FATAL,al);
           ^
  1162.   err:
  1163.   	return(-1);

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:413:1: Parameter `ctx->sessions->p`
      411.   	}
      412.   
      413. > int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
      414.   {
      415.   	return remove_session_lock(ctx, c, 1);

ssl/ssl_sess.c:415:9: Call
      413.   int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
      414.   {
      415.   	return remove_session_lock(ctx, c, 1);
                     ^
      416.   }
      417.   

ssl/ssl_sess.c:418:1: Parameter `ctx->sessions->p`
        416.   }
        417.   
        418. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
        419.   	{
        420.   	SSL_SESSION *r;

ssl/ssl_sess.c:426:20: Call
        424.   		{
        425.   		if(lck) CRYPTO_w_lock(CRYPTO_LOCK_SSL_CTX);
        426.   		r=(SSL_SESSION *)lh_delete(ctx->sessions,c);
                                  ^
        427.   		if (r != NULL)
        428.   			{

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_server_key_exchange` 
            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)
