test/dtlsv1listentest.c:320: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned64 by call to `DTLSv1_listen`.
Showing all 18 steps of the trace


test/dtlsv1listentest.c:308:10: Call
306.   
307.       /* Create an SSL object and set the BIO */
308.       if (!TEST_ptr(ssl = SSL_new(ctx))
                ^
309.               || !TEST_ptr(outbio = BIO_new(BIO_s_mem())))
310.           goto err;

ssl/ssl_lib.c:610:1: Parameter `ctx->sessions->num_items`
  608.   }
  609.   
  610. > SSL *SSL_new(SSL_CTX *ctx)
  611.   {
  612.       SSL *s;

test/dtlsv1listentest.c:320:10: Call
318.   
319.       /* Process the incoming packet */
320.       if (!TEST_int_ge(ret = DTLSv1_listen(ssl, peer), 0))
                ^
321.           goto err;
322.       datalen = BIO_get_mem_data(outbio, &data);

ssl/d1_lib.c:442:1: Parameter `s->session_ctx->sessions->num_items`
  440.   
  441.   #ifndef OPENSSL_NO_SOCK
  442. > int DTLSv1_listen(SSL *s, BIO_ADDR *client)
  443.   {
  444.       int next, n, ret = 0, clearpkt = 0;

ssl/d1_lib.c:462:10: Call
  460.   
  461.       /* Ensure there is no state left over from a previous invocation */
  462.       if (!SSL_clear(s))
                  ^
  463.           return -1;
  464.   

ssl/ssl_lib.c:525:1: Parameter `s->session_ctx->sessions->num_items`
    523.   }
    524.   
    525. > int SSL_clear(SSL *s)
    526.   {
    527.       if (s->method == NULL) {

ssl/ssl_lib.c:532:9: Call
    530.       }
    531.   
    532.       if (ssl_clear_bad_session(s)) {
                   ^
    533.           SSL_SESSION_free(s->session);
    534.           s->session = NULL;

ssl/ssl_sess.c:1107:1: Parameter `s->session_ctx->sessions->num_items`
      1105.   }
      1106.   
      1107. > int ssl_clear_bad_session(SSL *s)
      1108.   {
      1109.       if ((s->session != NULL) &&

ssl/ssl_sess.c:1112:9: Call
      1110.           !(s->shutdown & SSL_SENT_SHUTDOWN) &&
      1111.           !(SSL_in_init(s) || SSL_in_before(s))) {
      1112.           SSL_CTX_remove_session(s->session_ctx, s->session);
                      ^
      1113.           return 1;
      1114.       } else

ssl/ssl_sess.c:724:1: Parameter `ctx->sessions->num_items`
        722.   }
        723.   
        724. > int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
        725.   {
        726.       return remove_session_lock(ctx, c, 1);

ssl/ssl_sess.c:726:12: Call
        724.   int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c)
        725.   {
        726.       return remove_session_lock(ctx, c, 1);
                          ^
        727.   }
        728.   

ssl/ssl_sess.c:729:1: Parameter `ctx->sessions->num_items`
          727.   }
          728.   
          729. > static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck)
          730.   {
          731.       SSL_SESSION *r;

ssl/ssl_sess.c:739:17: Call
          737.           if ((r = lh_SSL_SESSION_retrieve(ctx->sessions, c)) == c) {
          738.               ret = 1;
          739.               r = lh_SSL_SESSION_delete(ctx->sessions, c);
                                 ^
          740.               SSL_SESSION_list_remove(ctx, c);
          741.           }

ssl/ssl_locl.h:697:1: Parameter `lh->num_items`
            695.   } TLSEXT_INDEX;
            696.   
            697. > DEFINE_LHASH_OF(SSL_SESSION);
            698.   /* Needed in ssl_cert.c */
            699.   DEFINE_LHASH_OF(X509_NAME);

ssl/ssl_locl.h:697:1: Call
            695.   } TLSEXT_INDEX;
            696.   
            697. > DEFINE_LHASH_OF(SSL_SESSION);
            698.   /* Needed in ssl_cert.c */
            699.   DEFINE_LHASH_OF(X509_NAME);

crypto/lhash/lhash.c:102:1: <LHS trace>
100.   }
101.   
102. > void *OPENSSL_LH_delete(OPENSSL_LHASH *lh, const void *data)
103.   {
104.       unsigned long hash;

crypto/lhash/lhash.c:102:1: Parameter `lh->num_items`
              100.   }
              101.   
              102. > void *OPENSSL_LH_delete(OPENSSL_LHASH *lh, const void *data)
              103.   {
              104.       unsigned long hash;

crypto/lhash/lhash.c:122:5: Binary operation: ([0, +oo] - 1):unsigned64 by call to `DTLSv1_listen` 
              120.       }
              121.   
              122.       lh->num_items--;
                         ^
              123.       if ((lh->num_nodes > MIN_NODES) &&
              124.           (lh->down_load >= (lh->num_items * LH_LOAD_MULT / lh->num_nodes)))
