ssl/ssl_lib.c:1083: error: INTEGER_OVERFLOW_L2
  ([0, max(0, `s->ctx->sessions->num_nodes`)] - 1):unsigned32 by call to `SSL_CTX_free`.
Showing all 13 steps of the trace


ssl/ssl_lib.c:1013:1: Parameter `s->ctx->sessions->num_nodes`
1011.   }
1012.   
1013. > void SSL_free(SSL *s)
1014.   {
1015.       int i;

ssl/ssl_lib.c:1083:5: Call
1081.       RECORD_LAYER_release(&s->rlayer);
1082.   
1083.       SSL_CTX_free(s->ctx);
            ^
1084.   
1085.       ASYNC_WAIT_CTX_free(s->waitctx);

ssl/ssl_lib.c:2493:1: Parameter `a->sessions->num_nodes`
  2491.   }
  2492.   
  2493. > void SSL_CTX_free(SSL_CTX *a)
  2494.   {
  2495.       int i;

ssl/ssl_lib.c:2519:9: Call
  2517.        */
  2518.       if (a->sessions != NULL)
  2519.           SSL_CTX_flush_sessions(a, 0);
                  ^
  2520.   
  2521.       CRYPTO_free_ex_data(CRYPTO_EX_INDEX_SSL_CTX, a, &a->ex_data);

ssl/ssl_sess.c:1074:1: Parameter `s->sessions->num_nodes`
    1072.   IMPLEMENT_LHASH_DOALL_ARG(SSL_SESSION, TIMEOUT_PARAM);
    1073.   
    1074. > void SSL_CTX_flush_sessions(SSL_CTX *s, long t)
    1075.   {
    1076.       unsigned long i;

ssl/ssl_sess.c:1087:5: Call
    1085.       i = CHECKED_LHASH_OF(SSL_SESSION, tp.cache)->down_load;
    1086.       CHECKED_LHASH_OF(SSL_SESSION, tp.cache)->down_load = 0;
    1087.       lh_SSL_SESSION_doall_TIMEOUT_PARAM(tp.cache, timeout_cb, &tp);
                ^
    1088.       CHECKED_LHASH_OF(SSL_SESSION, tp.cache)->down_load = i;
    1089.       CRYPTO_THREAD_unlock(s->lock);

ssl/ssl_sess.c:1072:1: Parameter `lh->num_nodes`
      1070.   }
      1071.   
      1072. > IMPLEMENT_LHASH_DOALL_ARG(SSL_SESSION, TIMEOUT_PARAM);
      1073.   
      1074.   void SSL_CTX_flush_sessions(SSL_CTX *s, long t)

ssl/ssl_sess.c:1072:1: Call
      1070.   }
      1071.   
      1072. > IMPLEMENT_LHASH_DOALL_ARG(SSL_SESSION, TIMEOUT_PARAM);
      1073.   
      1074.   void SSL_CTX_flush_sessions(SSL_CTX *s, long t)

crypto/lhash/lhash.c:273:1: Parameter `lh->num_nodes`
        271.   }
        272.   
        273. > void lh_doall_arg(_LHASH *lh, LHASH_DOALL_ARG_FN_TYPE func, void *arg)
        274.   {
        275.       doall_util_fn(lh, 1, (LHASH_DOALL_FN_TYPE)0, func, arg);

crypto/lhash/lhash.c:275:5: Call
        273.   void lh_doall_arg(_LHASH *lh, LHASH_DOALL_ARG_FN_TYPE func, void *arg)
        274.   {
        275.       doall_util_fn(lh, 1, (LHASH_DOALL_FN_TYPE)0, func, arg);
                   ^
        276.   }
        277.   

crypto/lhash/lhash.c:235:1: <LHS trace>
233.   }
234.   
235. > static void doall_util_fn(_LHASH *lh, int use_arg, LHASH_DOALL_FN_TYPE func,
236.                             LHASH_DOALL_ARG_FN_TYPE func_arg, void *arg)
237.   {

crypto/lhash/lhash.c:235:1: Parameter `lh->num_nodes`
          233.   }
          234.   
          235. > static void doall_util_fn(_LHASH *lh, int use_arg, LHASH_DOALL_FN_TYPE func,
          236.                             LHASH_DOALL_ARG_FN_TYPE func_arg, void *arg)
          237.   {

crypto/lhash/lhash.c:248:10: Binary operation: ([0, max(0, s->ctx->sessions->num_nodes)] - 1):unsigned32 by call to `SSL_CTX_free` 
          246.        * memory leaks otherwise
          247.        */
          248.       for (i = lh->num_nodes - 1; i >= 0; i--) {
                          ^
          249.           a = lh->b[i];
          250.           while (a != NULL) {
