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


ssl/d1_clnt.c:143:1: Parameter `s->ctx->sessions->num_items`
141.   			dtls1_get_client_method)
142.   
143. > int dtls1_connect(SSL *s)
144.   	{
145.   	BUF_MEM *buf=NULL;

ssl/d1_clnt.c:309:8: Call
307.   		case SSL3_ST_CR_CERT_REQ_A:
308.   		case SSL3_ST_CR_CERT_REQ_B:
309.   			ret=ssl3_get_certificate_request(s);
              ^
310.   			if (ret <= 0) goto end;
311.   			s->state=SSL3_ST_CR_SRVR_DONE_A;

ssl/s3_clnt.c:1607:1: Parameter `s->ctx->sessions->num_items`
  1605.   	}
  1606.   
  1607. > int ssl3_get_certificate_request(SSL *s)
  1608.   	{
  1609.   	int ok,ret=0;

ssl/s3_clnt.c:1715:4: Call
  1713.   		if (q != (p+l))
  1714.   			{
  1715.   			ssl3_send_alert(s,SSL3_AL_FATAL,SSL_AD_DECODE_ERROR);
             ^
  1716.   			SSLerr(SSL_F_SSL3_GET_CERTIFICATE_REQUEST,SSL_R_CA_DN_LENGTH_MISMATCH);
  1717.   			goto err;

ssl/s3_pkt.c:1317:1: Parameter `s->ctx->sessions->num_items`
    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:645:1: Parameter `ctx->sessions->num_items`
      643.   	}
      644.   
      645. > int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
      646.   {
      647.   	return remove_session_lock(ctx, c, 1);

ssl/ssl_sess.c:647:9: Call
      645.   int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
      646.   {
      647.   	return remove_session_lock(ctx, c, 1);
                     ^
      648.   }
      649.   

ssl/ssl_sess.c:650:1: Parameter `ctx->sessions->num_items`
        648.   }
        649.   
        650. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
        651.   	{
        652.   	SSL_SESSION *r;

ssl/ssl_sess.c:661:21: Call
        659.   			{
        660.   			ret=1;
        661.   			r=(SSL_SESSION *)lh_delete(ctx->sessions,c);
                                   ^
        662.   			SSL_SESSION_list_remove(ctx,c);
        663.   			}

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