ssl/s3_pkt.c:775: error: INTEGER_OVERFLOW_L2
  ([0, `s->ctx->sessions->num_items`] - 1):unsigned64 by call to `ssl3_get_record`.
Showing all 13 steps of the trace


ssl/s3_pkt.c:707:1: Parameter `s->ctx->sessions->num_items`
705.    *             none of our business
706.    */
707. > int ssl3_read_bytes(SSL *s, int type, unsigned char *buf, int len, int peek)
708.   	{
709.   	int al,i,j,ret;

ssl/s3_pkt.c:775:7: Call
773.   	if ((rr->length == 0) || (s->rstate == SSL_ST_READ_BODY))
774.   		{
775.   		ret=ssl3_get_record(s);
             ^
776.   		if (ret <= 0) return(ret);
777.   		}

ssl/s3_pkt.c:231:1: Parameter `s->ctx->sessions->num_items`
  229.    */
  230.   /* used only by ssl3_read_bytes */
  231. > static int ssl3_get_record(SSL *s)
  232.   	{
  233.   	int ssl_major,ssl_minor,al;

ssl/s3_pkt.c:431:2: Call
  429.   	return(1);
  430.   f_err:
  431.   	ssl3_send_alert(s,SSL3_AL_FATAL,al);
          ^
  432.   err:
  433.   	return(ret);

ssl/s3_pkt.c:1155:1: Parameter `s->ctx->sessions->num_items`
    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->num_items`
      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->num_items`
        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: <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, s->ctx->sessions->num_items] - 1):unsigned64 by call to `ssl3_get_record` 
          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)))
