test/tls13encryptiontest.c:403: error: INTEGER_OVERFLOW_L2
  ([0, 8] - 1):unsigned32 by call to `SSL_free`.
Showing all 18 steps of the trace


test/tls13encryptiontest.c:317:11: Call
315.       rec.rec_version = TLS1_2_VERSION;
316.   
317.       ctx = SSL_CTX_new(TLS_method());
                 ^
318.       if (!TEST_ptr(ctx)) {
319.           TEST_info("Failed creating SSL_CTX");

ssl/ssl_lib.c:3010:21: Call
  3008.           goto err;
  3009.   
  3010.       ret->sessions = lh_SSL_SESSION_new(ssl_session_hash, ssl_session_cmp);
                              ^
  3011.       if (ret->sessions == NULL)
  3012.           goto err;

ssl/ssl_locl.h:732:1: Call
    730.   } TLSEXT_INDEX;
    731.   
    732. > DEFINE_LHASH_OF(SSL_SESSION);
    733.   /* Needed in ssl_cert.c */
    734.   DEFINE_LHASH_OF(X509_NAME);

crypto/lhash/lhash.c:54:5: Assignment
      52.       ret->comp = ((c == NULL) ? (OPENSSL_LH_COMPFUNC)strcmp : c);
      53.       ret->hash = ((h == NULL) ? (OPENSSL_LH_HASHFUNC)OPENSSL_LH_strhash : h);
      54.       ret->num_nodes = MIN_NODES / 2;
                ^
      55.       ret->num_alloc_nodes = MIN_NODES;
      56.       ret->pmax = MIN_NODES / 2;

test/tls13encryptiontest.c:403:5: Call
401.       OPENSSL_free(iv);
402.       OPENSSL_free(seq);
403.       SSL_free(s);
           ^
404.       SSL_CTX_free(ctx);
405.       return ret;

ssl/ssl_lib.c:1138:1: Parameter `s->ctx->sessions->num_nodes`
  1136.   }
  1137.   
  1138. > void SSL_free(SSL *s)
  1139.   {
  1140.       int i;

ssl/ssl_lib.c:1211:5: Call
  1209.       RECORD_LAYER_release(&s->rlayer);
  1210.   
  1211.       SSL_CTX_free(s->ctx);
              ^
  1212.   
  1213.       ASYNC_WAIT_CTX_free(s->waitctx);

ssl/ssl_lib.c:3153:1: Parameter `a->sessions->num_nodes`
    3151.   }
    3152.   
    3153. > void SSL_CTX_free(SSL_CTX *a)
    3154.   {
    3155.       int i;

ssl/ssl_lib.c:3179:9: Call
    3177.        */
    3178.       if (a->sessions != NULL)
    3179.           SSL_CTX_flush_sessions(a, 0);
                    ^
    3180.   
    3181.       CRYPTO_free_ex_data(CRYPTO_EX_INDEX_SSL_CTX, a, &a->ex_data);

ssl/ssl_sess.c:1111:1: Parameter `s->sessions->num_nodes`
      1109.   IMPLEMENT_LHASH_DOALL_ARG(SSL_SESSION, TIMEOUT_PARAM);
      1110.   
      1111. > void SSL_CTX_flush_sessions(SSL_CTX *s, long t)
      1112.   {
      1113.       unsigned long i;

ssl/ssl_sess.c:1124:5: Call
      1122.       i = lh_SSL_SESSION_get_down_load(s->sessions);
      1123.       lh_SSL_SESSION_set_down_load(s->sessions, 0);
      1124.       lh_SSL_SESSION_doall_TIMEOUT_PARAM(tp.cache, timeout_cb, &tp);
                  ^
      1125.       lh_SSL_SESSION_set_down_load(s->sessions, i);
      1126.       CRYPTO_THREAD_unlock(s->lock);

ssl/ssl_sess.c:1109:1: Parameter `lh->num_nodes`
        1107.   }
        1108.   
        1109. > IMPLEMENT_LHASH_DOALL_ARG(SSL_SESSION, TIMEOUT_PARAM);
        1110.   
        1111.   void SSL_CTX_flush_sessions(SSL_CTX *s, long t)

ssl/ssl_sess.c:1109:1: Call
        1107.   }
        1108.   
        1109. > IMPLEMENT_LHASH_DOALL_ARG(SSL_SESSION, TIMEOUT_PARAM);
        1110.   
        1111.   void SSL_CTX_flush_sessions(SSL_CTX *s, long t)

crypto/lhash/lhash.c:198:1: Parameter `lh->num_nodes`
          196.   }
          197.   
          198. > void OPENSSL_LH_doall_arg(OPENSSL_LHASH *lh, OPENSSL_LH_DOALL_FUNCARG func, void *arg)
          199.   {
          200.       doall_util_fn(lh, 1, (OPENSSL_LH_DOALL_FUNC)0, func, arg);

crypto/lhash/lhash.c:200:5: Call
          198.   void OPENSSL_LH_doall_arg(OPENSSL_LHASH *lh, OPENSSL_LH_DOALL_FUNCARG func, void *arg)
          199.   {
          200.       doall_util_fn(lh, 1, (OPENSSL_LH_DOALL_FUNC)0, func, arg);
                     ^
          201.   }
          202.   

crypto/lhash/lhash.c:166:1: <LHS trace>
164.   }
165.   
166. > static void doall_util_fn(OPENSSL_LHASH *lh, int use_arg,
167.                             OPENSSL_LH_DOALL_FUNC func,
168.                             OPENSSL_LH_DOALL_FUNCARG func_arg, void *arg)

crypto/lhash/lhash.c:166:1: Parameter `lh->num_nodes`
            164.   }
            165.   
            166. > static void doall_util_fn(OPENSSL_LHASH *lh, int use_arg,
            167.                             OPENSSL_LH_DOALL_FUNC func,
            168.                             OPENSSL_LH_DOALL_FUNCARG func_arg, void *arg)

crypto/lhash/lhash.c:180:10: Binary operation: ([0, 8] - 1):unsigned32 by call to `SSL_free` 
            178.        * memory leaks otherwise
            179.        */
            180.       for (i = lh->num_nodes - 1; i >= 0; i--) {
                            ^
            181.           a = lh->b[i];
            182.           while (a != NULL) {
