Newly introduced findings

List of Findings

Error: GCC_ANALYZER_WARNING (CWE-775): [#def1]
curl-8.18.0/lib/altsvc.c:215:16: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(file, "r")'
curl-8.18.0/lib/altsvc.c:206:5: branch_false: following 'false' branch...
curl-8.18.0/lib/altsvc.c:209:8: branch_false: ...to here
curl-8.18.0/lib/altsvc.c:209:8: acquire_resource: opened here
curl-8.18.0/lib/altsvc.c:210:5: branch_true: following 'true' branch...
curl-8.18.0/lib/altsvc.c:211:10: branch_true: ...to here
curl-8.18.0/lib/altsvc.c:215:16: throw: if 'Curl_get_line' throws an exception...
curl-8.18.0/lib/altsvc.c:215:16: danger: 'fopen(file, "r")' leaks here; was opened at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  213|       curlx_dyn_init(&buf, MAX_ALTSVC_LINE);
#  214|       do {
#  215|->       result = Curl_get_line(&buf, fp, &eof);
#  216|         if(!result) {
#  217|           const char *lineptr = curlx_dyn_ptr(&buf);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def2]
curl-8.18.0/lib/altsvc.c:215:16: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(file, "r")'
curl-8.18.0/lib/altsvc.c:206:5: branch_false: following 'false' branch...
curl-8.18.0/lib/altsvc.c:209:8: branch_false: ...to here
curl-8.18.0/lib/altsvc.c:209:8: acquire_memory: allocated here
curl-8.18.0/lib/altsvc.c:210:5: branch_true: following 'true' branch...
curl-8.18.0/lib/altsvc.c:211:10: branch_true: ...to here
curl-8.18.0/lib/altsvc.c:215:16: throw: if 'Curl_get_line' throws an exception...
curl-8.18.0/lib/altsvc.c:215:16: danger: 'fopen(file, "r")' leaks here; was allocated at [(3)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/2)
#  213|       curlx_dyn_init(&buf, MAX_ALTSVC_LINE);
#  214|       do {
#  215|->       result = Curl_get_line(&buf, fp, &eof);
#  216|         if(!result) {
#  217|           const char *lineptr = curlx_dyn_ptr(&buf);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def3]
curl-8.18.0/lib/cf-socket.c:361:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor
curl-8.18.0/lib/cf-socket.c:1071:17: enter_function: entry to 'cf_socket_open'
curl-8.18.0/lib/cf-socket.c:1091:12: call_function: calling 'socket_open' from 'cf_socket_open'
#  359|   
#  360|   #ifdef HAVE_FCNTL
#  361|->   if(fcntl(*sockfd, F_SETFD, FD_CLOEXEC) < 0) {
#  362|       failf(data, "fcntl set CLOEXEC: %s",
#  363|             curlx_strerror(SOCKERRNO, errbuf, sizeof(errbuf)));

Error: GCC_ANALYZER_WARNING (CWE-775): [#def4]
curl-8.18.0/lib/cookie.c:1121:16: warning[-Wanalyzer-file-leak]: leak of FILE 'handle'
curl-8.18.0/lib/cookie.c:1104:5: branch_true: following 'true' branch...
curl-8.18.0/lib/cookie.c:1105:7: branch_false: following 'false' branch (when the strings are non-equal)...
curl-8.18.0/lib/cookie.c:1108:12: branch_false: ...to here
curl-8.18.0/lib/cookie.c:1108:12: acquire_resource: opened here
curl-8.18.0/lib/cookie.c:1109:9: branch_false: following 'false' branch...
curl-8.18.0/lib/cookie.c:1118:10: branch_false: ...to here
curl-8.18.0/lib/cookie.c:1121:16: throw: if 'Curl_get_line' throws an exception...
curl-8.18.0/lib/cookie.c:1121:16: danger: 'handle' leaks here; was opened at [(5)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/4)
# 1119|       curlx_dyn_init(&buf, MAX_COOKIE_LINE);
# 1120|       do {
# 1121|->       result = Curl_get_line(&buf, fp, &eof);
# 1122|         if(!result) {
# 1123|           const char *lineptr = curlx_dyn_ptr(&buf);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def5]
curl-8.18.0/lib/cookie.c:1121:16: warning[-Wanalyzer-malloc-leak]: leak of 'handle'
curl-8.18.0/lib/cookie.c:1104:5: branch_true: following 'true' branch...
curl-8.18.0/lib/cookie.c:1105:7: branch_false: following 'false' branch (when the strings are non-equal)...
curl-8.18.0/lib/cookie.c:1108:12: branch_false: ...to here
curl-8.18.0/lib/cookie.c:1108:12: acquire_memory: allocated here
curl-8.18.0/lib/cookie.c:1109:9: branch_false: following 'false' branch...
curl-8.18.0/lib/cookie.c:1118:10: branch_false: ...to here
curl-8.18.0/lib/cookie.c:1121:16: throw: if 'Curl_get_line' throws an exception...
curl-8.18.0/lib/cookie.c:1121:16: danger: 'handle' leaks here; was allocated at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
# 1119|       curlx_dyn_init(&buf, MAX_COOKIE_LINE);
# 1120|       do {
# 1121|->       result = Curl_get_line(&buf, fp, &eof);
# 1122|         if(!result) {
# 1123|           const char *lineptr = curlx_dyn_ptr(&buf);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def6]
curl-8.18.0/lib/curl_share.c:91:26: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_share.c:69:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:72:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:77:3: branch_false: ...to here
curl-8.18.0/lib/curl_share.c:77:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_share.c:90:9: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_share.c:91:26: branch_true: ...to here
curl-8.18.0/lib/curl_share.c:91:26: throw: if 'Curl_cookie_init' throws an exception...
curl-8.18.0/lib/curl_share.c:91:26: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/4)
#   89|   #if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
#   90|         if(!share->cookies) {
#   91|->         share->cookies = Curl_cookie_init();
#   92|           if(!share->cookies)
#   93|             res = CURLSHE_NOMEM;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def7]
curl-8.18.0/lib/curl_share.c:103:23: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_share.c:69:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:72:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:77:3: branch_false: ...to here
curl-8.18.0/lib/curl_share.c:77:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_share.c:102:9: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_share.c:103:23: branch_true: ...to here
curl-8.18.0/lib/curl_share.c:103:23: throw: if 'Curl_hsts_init' throws an exception...
curl-8.18.0/lib/curl_share.c:103:23: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#  101|   #ifndef CURL_DISABLE_HSTS
#  102|         if(!share->hsts) {
#  103|->         share->hsts = Curl_hsts_init();
#  104|           if(!share->hsts)
#  105|             res = CURLSHE_NOMEM;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def8]
curl-8.18.0/lib/curl_share.c:120:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_share.c:69:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:72:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:77:3: branch_false: ...to here
curl-8.18.0/lib/curl_share.c:77:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_share.c:114:9: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_share.c:120:12: branch_true: ...to here
curl-8.18.0/lib/curl_share.c:120:12: throw: if 'Curl_ssl_scache_create' throws an exception...
curl-8.18.0/lib/curl_share.c:120:12: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
#  118|            * scache is not optimized for several hundreds of peers. So,
#  119|            * keep it at a reasonable level. */
#  120|->         if(Curl_ssl_scache_create(25, 2, &share->ssl_scache))
#  121|             res = CURLSHE_NOMEM;
#  122|         }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def9]
curl-8.18.0/lib/curl_share.c:131:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_share.c:69:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:72:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:77:3: branch_false: ...to here
curl-8.18.0/lib/curl_share.c:77:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_share.c:130:9: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_share.c:131:9: branch_true: ...to here
curl-8.18.0/lib/curl_share.c:131:9: throw: if 'Curl_cpool_init' throws an exception...
curl-8.18.0/lib/curl_share.c:131:9: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/4)
#  129|         /* It is safe to set this option several times on a share. */
#  130|         if(!share->cpool.initialised) {
#  131|->         Curl_cpool_init(&share->cpool, share->admin, share, 103);
#  132|         }
#  133|         break;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def10]
curl-8.18.0/lib/curl_share.c:159:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_share.c:69:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:72:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:77:3: branch_false: ...to here
curl-8.18.0/lib/curl_share.c:77:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_share.c:158:9: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_share.c:159:9: branch_true: ...to here
curl-8.18.0/lib/curl_share.c:159:9: throw: if 'Curl_cookie_cleanup' throws an exception...
curl-8.18.0/lib/curl_share.c:159:9: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#  157|   #if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
#  158|         if(share->cookies) {
#  159|->         Curl_cookie_cleanup(share->cookies);
#  160|           share->cookies = NULL;
#  161|         }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def11]
curl-8.18.0/lib/curl_share.c:170:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_share.c:69:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:72:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:77:3: branch_false: ...to here
curl-8.18.0/lib/curl_share.c:77:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_share.c:169:9: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_share.c:170:9: branch_true: ...to here
curl-8.18.0/lib/curl_share.c:170:9: throw: if 'Curl_hsts_cleanup' throws an exception...
curl-8.18.0/lib/curl_share.c:170:9: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/4)
#  168|   #ifndef CURL_DISABLE_HSTS
#  169|         if(share->hsts) {
#  170|->         Curl_hsts_cleanup(&share->hsts);
#  171|         }
#  172|   #else /* CURL_DISABLE_HSTS */

Error: GCC_ANALYZER_WARNING (CWE-404): [#def12]
curl-8.18.0/lib/curl_share.c:180:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_share.c:69:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:72:5: branch_false: following 'false' branch...
curl-8.18.0/lib/curl_share.c:77:3: branch_false: ...to here
curl-8.18.0/lib/curl_share.c:77:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_share.c:179:9: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_share.c:180:9: branch_true: ...to here
curl-8.18.0/lib/curl_share.c:180:9: throw: if 'Curl_ssl_scache_destroy' throws an exception...
curl-8.18.0/lib/curl_share.c:180:9: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/4)
#  178|   #ifdef USE_SSL
#  179|         if(share->ssl_scache) {
#  180|->         Curl_ssl_scache_destroy(share->ssl_scache);
#  181|           share->ssl_scache = NULL;
#  182|         }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def13]
curl-8.18.0/lib/curl_trc.c:97:14: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_trc.c:440:6: enter_function: entry to 'Curl_trc_ssls'
curl-8.18.0/lib/curl_trc.c:443:5: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_trc.c:445:5: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_trc.c:446:5: call_function: calling 'trc_infof' from 'Curl_trc_ssls'
#   95|     if(data->id >= 0) {
#   96|       if(cid >= 0)
#   97|->       return curl_msnprintf(buf, maxlen, CURL_TRC_FMT_IDSDC, data->id, cid);
#   98|       else
#   99|         return curl_msnprintf(buf, maxlen, CURL_TRC_FMT_IDSD, data->id);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def14]
curl-8.18.0/lib/curl_trc.c:99:14: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_trc.c:440:6: enter_function: entry to 'Curl_trc_ssls'
curl-8.18.0/lib/curl_trc.c:443:5: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_trc.c:445:5: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_trc.c:446:5: call_function: calling 'trc_infof' from 'Curl_trc_ssls'
#   97|         return curl_msnprintf(buf, maxlen, CURL_TRC_FMT_IDSDC, data->id, cid);
#   98|       else
#   99|->       return curl_msnprintf(buf, maxlen, CURL_TRC_FMT_IDSD, data->id);
#  100|     }
#  101|     else if(cid >= 0)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def15]
curl-8.18.0/lib/curl_trc.c:102:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_trc.c:440:6: enter_function: entry to 'Curl_trc_ssls'
curl-8.18.0/lib/curl_trc.c:443:5: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_trc.c:445:5: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_trc.c:446:5: call_function: calling 'trc_infof' from 'Curl_trc_ssls'
#  100|     }
#  101|     else if(cid >= 0)
#  102|->     return curl_msnprintf(buf, maxlen, CURL_TRC_FMT_IDSC, cid);
#  103|     else {
#  104|       return curl_msnprintf(buf, maxlen, "[x-x] ");

Error: GCC_ANALYZER_WARNING (CWE-404): [#def16]
curl-8.18.0/lib/curl_trc.c:104:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_trc.c:440:6: enter_function: entry to 'Curl_trc_ssls'
curl-8.18.0/lib/curl_trc.c:443:5: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_trc.c:445:5: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_trc.c:446:5: call_function: calling 'trc_infof' from 'Curl_trc_ssls'
#  102|       return curl_msnprintf(buf, maxlen, CURL_TRC_FMT_IDSC, cid);
#  103|     else {
#  104|->     return curl_msnprintf(buf, maxlen, "[x-x] ");
#  105|     }
#  106|   }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def17]
curl-8.18.0/lib/curl_trc.c:215:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_trc.c:440:6: enter_function: entry to 'Curl_trc_ssls'
curl-8.18.0/lib/curl_trc.c:443:5: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_trc.c:445:5: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_trc.c:446:5: call_function: calling 'trc_infof' from 'Curl_trc_ssls'
#  213|       len += trc_print_ids(data, buf + len, TRC_LINE_MAX - len);
#  214|     if(feat)
#  215|->     len += curl_msnprintf(buf + len, TRC_LINE_MAX - len, "[%s] ", feat->name);
#  216|     if(opt_id) {
#  217|       if(opt_id_idx > 0)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def18]
curl-8.18.0/lib/curl_trc.c:223:10: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/curl_trc.c:440:6: enter_function: entry to 'Curl_trc_ssls'
curl-8.18.0/lib/curl_trc.c:443:5: branch_true: following 'true' branch...
curl-8.18.0/lib/curl_trc.c:445:5: acquire_resource: 'va_start' called here
curl-8.18.0/lib/curl_trc.c:446:5: call_function: calling 'trc_infof' from 'Curl_trc_ssls'
#  221|         len += curl_msnprintf(buf + len, TRC_LINE_MAX - len, "[%s] ", opt_id);
#  222|     }
#  223|->   len += curl_mvsnprintf(buf + len, TRC_LINE_MAX - len, fmt, ap);
#  224|     len = trc_end_buf(buf, len, TRC_LINE_MAX, TRUE);
#  225|     trc_write(data, CURLINFO_TEXT, buf, len);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def19]
curl-8.18.0/lib/dict.c:139:7: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/dict.c:138:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/dict.c:139:7: throw: if 'curl_mvaprintf' throws an exception...
curl-8.18.0/lib/dict.c:139:7: danger: missing call to 'va_end' to match 'va_start' at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  137|     va_list ap;
#  138|     va_start(ap, fmt);
#  139|->   s = curl_mvaprintf(fmt, ap); /* returns an allocated string */
#  140|     va_end(ap);
#  141|     if(!s)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def20]
curl-8.18.0/lib/formdata.c:108:32: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/formdata.c:609:14: enter_function: entry to 'curl_formadd'
curl-8.18.0/lib/formdata.c:614:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/formdata.c:615:12: call_function: calling 'FormAdd' from 'curl_formadd'
#  106|   static struct FormInfo *NewFormInfo(void)
#  107|   {
#  108|->   struct FormInfo *form_info = curlx_calloc(1, sizeof(struct FormInfo));
#  109|   
#  110|     if(form_info) {

Error: GCC_ANALYZER_WARNING (CWE-404): [#def21]
curl-8.18.0/lib/formdata.c:111:5: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/formdata.c:609:14: enter_function: entry to 'curl_formadd'
curl-8.18.0/lib/formdata.c:614:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/formdata.c:615:12: call_function: calling 'FormAdd' from 'curl_formadd'
#  109|   
#  110|     if(form_info) {
#  111|->     Curl_bufref_init(&form_info->name);
#  112|       Curl_bufref_init(&form_info->value);
#  113|       Curl_bufref_init(&form_info->contenttype);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def22]
curl-8.18.0/lib/formdata.c:112:5: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/formdata.c:609:14: enter_function: entry to 'curl_formadd'
curl-8.18.0/lib/formdata.c:614:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/formdata.c:615:12: call_function: calling 'FormAdd' from 'curl_formadd'
#  110|     if(form_info) {
#  111|       Curl_bufref_init(&form_info->name);
#  112|->     Curl_bufref_init(&form_info->value);
#  113|       Curl_bufref_init(&form_info->contenttype);
#  114|       Curl_bufref_init(&form_info->showfilename);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def23]
curl-8.18.0/lib/formdata.c:113:5: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/formdata.c:609:14: enter_function: entry to 'curl_formadd'
curl-8.18.0/lib/formdata.c:614:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/formdata.c:615:12: call_function: calling 'FormAdd' from 'curl_formadd'
#  111|       Curl_bufref_init(&form_info->name);
#  112|       Curl_bufref_init(&form_info->value);
#  113|->     Curl_bufref_init(&form_info->contenttype);
#  114|       Curl_bufref_init(&form_info->showfilename);
#  115|     }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def24]
curl-8.18.0/lib/formdata.c:114:5: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/formdata.c:609:14: enter_function: entry to 'curl_formadd'
curl-8.18.0/lib/formdata.c:614:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/formdata.c:615:12: call_function: calling 'FormAdd' from 'curl_formadd'
#  112|       Curl_bufref_init(&form_info->value);
#  113|       Curl_bufref_init(&form_info->contenttype);
#  114|->     Curl_bufref_init(&form_info->showfilename);
#  115|     }
#  116|   

Error: GCC_ANALYZER_WARNING (CWE-404): [#def25]
curl-8.18.0/lib/formdata.c:374:10: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/formdata.c:609:14: enter_function: entry to 'curl_formadd'
curl-8.18.0/lib/formdata.c:614:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/formdata.c:615:12: call_function: calling 'FormAdd' from 'curl_formadd'
#  372|         FALLTHROUGH();
#  373|       case CURLFORM_COPYNAME:
#  374|->       if(Curl_bufref_ptr(&curr->name))
#  375|           retval = CURL_FORMADD_OPTION_TWICE;
#  376|         else {

Error: GCC_ANALYZER_WARNING (CWE-404): [#def26]
curl-8.18.0/lib/getinfo.c:92:21: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/getinfo.c:614:10: enter_function: entry to 'Curl_getinfo'
curl-8.18.0/lib/getinfo.c:626:5: branch_false: following 'false' branch (when 'data' is non-NULL)...
curl-8.18.0/lib/getinfo.c:629:3: branch_false: ...to here
curl-8.18.0/lib/getinfo.c:629:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/getinfo.c:635:7: branch_true: following 'true' branch (when 'param_charp' is non-NULL)...
curl-8.18.0/lib/getinfo.c:636:16: branch_true: ...to here
curl-8.18.0/lib/getinfo.c:636:16: call_function: calling 'getinfo_char' from 'Curl_getinfo'
#   90|     switch(info) {
#   91|     case CURLINFO_EFFECTIVE_URL: {
#   92|->     const char *s = Curl_bufref_ptr(&data->state.url);
#   93|       *param_charp = s ? s : "";
#   94|     }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def27]
curl-8.18.0/lib/getinfo.c:147:20: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/getinfo.c:614:10: enter_function: entry to 'Curl_getinfo'
curl-8.18.0/lib/getinfo.c:626:5: branch_false: following 'false' branch (when 'data' is non-NULL)...
curl-8.18.0/lib/getinfo.c:629:3: branch_false: ...to here
curl-8.18.0/lib/getinfo.c:629:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/getinfo.c:635:7: branch_true: following 'true' branch (when 'param_charp' is non-NULL)...
curl-8.18.0/lib/getinfo.c:636:16: branch_true: ...to here
curl-8.18.0/lib/getinfo.c:636:16: call_function: calling 'getinfo_char' from 'Curl_getinfo'
#  145|     case CURLINFO_REFERER:
#  146|       /* Return the referrer header for this request, or NULL if unset */
#  147|->     *param_charp = Curl_bufref_ptr(&data->state.referer);
#  148|       break;
#  149|     case CURLINFO_PRIMARY_IP:

Error: GCC_ANALYZER_WARNING (CWE-775): [#def28]
curl-8.18.0/lib/hsts.c:512:16: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(file, "r")'
curl-8.18.0/lib/hsts.c:503:5: branch_false: following 'false' branch...
curl-8.18.0/lib/hsts.c:506:8: branch_false: ...to here
curl-8.18.0/lib/hsts.c:506:8: acquire_resource: opened here
curl-8.18.0/lib/hsts.c:507:5: branch_true: following 'true' branch...
curl-8.18.0/lib/hsts.c:509:10: branch_true: ...to here
curl-8.18.0/lib/hsts.c:512:16: throw: if 'Curl_get_line' throws an exception...
curl-8.18.0/lib/hsts.c:512:16: danger: 'fopen(file, "r")' leaks here; was opened at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  510|       curlx_dyn_init(&buf, MAX_HSTS_LINE);
#  511|       do {
#  512|->       result = Curl_get_line(&buf, fp, &eof);
#  513|         if(!result) {
#  514|           const char *lineptr = curlx_dyn_ptr(&buf);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def29]
curl-8.18.0/lib/hsts.c:512:16: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(file, "r")'
curl-8.18.0/lib/hsts.c:503:5: branch_false: following 'false' branch...
curl-8.18.0/lib/hsts.c:506:8: branch_false: ...to here
curl-8.18.0/lib/hsts.c:506:8: acquire_memory: allocated here
curl-8.18.0/lib/hsts.c:507:5: branch_true: following 'true' branch...
curl-8.18.0/lib/hsts.c:509:10: branch_true: ...to here
curl-8.18.0/lib/hsts.c:512:16: throw: if 'Curl_get_line' throws an exception...
curl-8.18.0/lib/hsts.c:512:16: danger: 'fopen(file, "r")' leaks here; was allocated at [(3)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/2)
#  510|       curlx_dyn_init(&buf, MAX_HSTS_LINE);
#  511|       do {
#  512|->       result = Curl_get_line(&buf, fp, &eof);
#  513|         if(!result) {
#  514|           const char *lineptr = curlx_dyn_ptr(&buf);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def30]
curl-8.18.0/lib/multi.c:3252:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/multi.c:3216:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3219:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3222:3: branch_false: ...to here
curl-8.18.0/lib/multi.c:3222:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/multi.c:3252:9: throw: if 'curlx_sltouz' throws an exception...
curl-8.18.0/lib/multi.c:3252:9: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/4)
# 3250|       break;
# 3251|     case CURLMOPT_MAX_HOST_CONNECTIONS:
# 3252|->     if(!curlx_sltouz(va_arg(param, long), &multi->max_host_connections))
# 3253|         mresult = CURLM_BAD_FUNCTION_ARGUMENT;
# 3254|       break;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def31]
curl-8.18.0/lib/multi.c:3256:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/multi.c:3216:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3219:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3222:3: branch_false: ...to here
curl-8.18.0/lib/multi.c:3222:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/multi.c:3256:9: throw: if 'curlx_sltouz' throws an exception...
curl-8.18.0/lib/multi.c:3256:9: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
# 3254|       break;
# 3255|     case CURLMOPT_MAX_TOTAL_CONNECTIONS:
# 3256|->     if(!curlx_sltouz(va_arg(param, long), &multi->max_total_connections))
# 3257|         mresult = CURLM_BAD_FUNCTION_ARGUMENT;
# 3258|       break;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def32]
curl-8.18.0/lib/multi.c:3280:7: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/multi.c:3216:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3219:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3222:3: branch_false: ...to here
curl-8.18.0/lib/multi.c:3222:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/multi.c:3279:7: branch_true: following 'true' branch...
curl-8.18.0/lib/multi.c:3280:7: branch_true: ...to here
curl-8.18.0/lib/multi.c:3280:7: throw: if 'Curl_dnscache_clear' throws an exception...
curl-8.18.0/lib/multi.c:3280:7: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
# 3278|       long val = va_arg(param, long);
# 3279|       if(val & CURLMNWC_CLEAR_DNS) {
# 3280|->       Curl_dnscache_clear(multi->admin);
# 3281|       }
# 3282|       if(val & CURLMNWC_CLEAR_CONNS) {

Error: GCC_ANALYZER_WARNING (CWE-404): [#def33]
curl-8.18.0/lib/multi.c:3283:7: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/multi.c:3216:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3219:5: branch_false: following 'false' branch...
curl-8.18.0/lib/multi.c:3222:3: branch_false: ...to here
curl-8.18.0/lib/multi.c:3222:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/multi.c:3279:7: branch_true: following 'true' branch...
curl-8.18.0/lib/multi.c:3280:7: branch_true: ...to here
curl-8.18.0/lib/multi.c:3283:7: throw: if 'Curl_cpool_nw_changed' throws an exception...
curl-8.18.0/lib/multi.c:3283:7: danger: missing call to 'va_end' to match 'va_start' at [(5)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/4)
# 3281|       }
# 3282|       if(val & CURLMNWC_CLEAR_CONNS) {
# 3283|->       Curl_cpool_nw_changed(multi->admin);
# 3284|       }
# 3285|       break;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def34]
curl-8.18.0/lib/netrc.c:84:16: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(filename, "r")'
curl-8.18.0/lib/netrc.c:109:18: enter_function: entry to 'parsenetrc'
curl-8.18.0/lib/netrc.c:131:5: branch_true: following 'true' branch...
curl-8.18.0/lib/netrc.c:132:21: branch_true: ...to here
curl-8.18.0/lib/netrc.c:132:21: call_function: calling 'file2memory' from 'parsenetrc'
#   82|       do {
#   83|         const char *line;
#   84|->       result = Curl_get_line(&linebuf, file, &eof);
#   85|         if(!result) {
#   86|           line = curlx_dyn_ptr(&linebuf);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def35]
curl-8.18.0/lib/netrc.c:84:16: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(filename, "r")'
curl-8.18.0/lib/netrc.c:109:18: enter_function: entry to 'parsenetrc'
curl-8.18.0/lib/netrc.c:131:5: branch_true: following 'true' branch...
curl-8.18.0/lib/netrc.c:132:21: branch_true: ...to here
curl-8.18.0/lib/netrc.c:132:21: call_function: calling 'file2memory' from 'parsenetrc'
#   82|       do {
#   83|         const char *line;
#   84|->       result = Curl_get_line(&linebuf, file, &eof);
#   85|         if(!result) {
#   86|           line = curlx_dyn_ptr(&linebuf);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def36]
curl-8.18.0/lib/setopt.c:742:5: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/setopt.c:2970:10: enter_function: entry to 'curl_easy_setopt'
curl-8.18.0/lib/setopt.c:2976:5: branch_false: following 'false' branch (when 'd' is non-NULL)...
curl-8.18.0/lib/setopt.c:2979:3: branch_false: ...to here
curl-8.18.0/lib/setopt.c:2979:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/setopt.c:2981:12: call_function: calling 'Curl_vsetopt' from 'curl_easy_setopt'
#  740|   
#  741|       /* Update the current connection ssl_config. */
#  742|->     Curl_ssl_conn_config_update(data, FALSE);
#  743|       break;
#  744|     case CURLOPT_SSL_VERIFYSTATUS:

Error: GCC_ANALYZER_WARNING (CWE-404): [#def37]
curl-8.18.0/lib/setopt.c:748:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/setopt.c:2970:10: enter_function: entry to 'curl_easy_setopt'
curl-8.18.0/lib/setopt.c:2976:5: branch_false: following 'false' branch (when 'd' is non-NULL)...
curl-8.18.0/lib/setopt.c:2979:3: branch_false: ...to here
curl-8.18.0/lib/setopt.c:2979:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/setopt.c:2981:12: call_function: calling 'Curl_vsetopt' from 'curl_easy_setopt'
#  746|        * Enable certificate status verifying.
#  747|        */
#  748|->     if(!Curl_ssl_cert_status_request())
#  749|         return CURLE_NOT_BUILT_IN;
#  750|   

Error: GCC_ANALYZER_WARNING (CWE-404): [#def38]
curl-8.18.0/lib/setopt.c:754:5: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/setopt.c:2970:10: enter_function: entry to 'curl_easy_setopt'
curl-8.18.0/lib/setopt.c:2976:5: branch_false: following 'false' branch (when 'd' is non-NULL)...
curl-8.18.0/lib/setopt.c:2979:3: branch_false: ...to here
curl-8.18.0/lib/setopt.c:2979:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/setopt.c:2981:12: call_function: calling 'Curl_vsetopt' from 'curl_easy_setopt'
#  752|   
#  753|       /* Update the current connection ssl_config. */
#  754|->     Curl_ssl_conn_config_update(data, FALSE);
#  755|       break;
#  756|     case CURLOPT_CERTINFO:

Error: GCC_ANALYZER_WARNING (CWE-404): [#def39]
curl-8.18.0/lib/setopt.c:758:8: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/lib/setopt.c:2970:10: enter_function: entry to 'curl_easy_setopt'
curl-8.18.0/lib/setopt.c:2976:5: branch_false: following 'false' branch (when 'd' is non-NULL)...
curl-8.18.0/lib/setopt.c:2979:3: branch_false: ...to here
curl-8.18.0/lib/setopt.c:2979:3: acquire_resource: 'va_start' called here
curl-8.18.0/lib/setopt.c:2981:12: call_function: calling 'Curl_vsetopt' from 'curl_easy_setopt'
#  756|     case CURLOPT_CERTINFO:
#  757|   #ifdef USE_SSL
#  758|->     if(Curl_ssl_supports(data, SSLSUPP_CERTINFO))
#  759|         s->ssl.certinfo = enabled;
#  760|       else

Error: GCC_ANALYZER_WARNING (CWE-404): [#def40]
curl-8.18.0/src/tool_easysrc.c:110:10: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_easysrc.c:109:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_easysrc.c:110:10: throw: if 'curl_mvaprintf' throws an exception...
curl-8.18.0/src/tool_easysrc.c:110:10: danger: missing call to 'va_end' to match 'va_start' at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  108|     va_list ap;
#  109|     va_start(ap, fmt);
#  110|->   bufp = curl_mvaprintf(fmt, ap);
#  111|     va_end(ap);
#  112|     if(!bufp) {

Error: GCC_ANALYZER_WARNING (CWE-404): [#def41]
curl-8.18.0/src/tool_easysrc.c:110:10: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_easysrc.c:109:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_easysrc.c:110:10: throw: if ‘curl_mvaprintf’ throws an exception...
curl-8.18.0/src/tool_easysrc.c:110:10: danger: missing call to ‘va_end’ to match ‘va_start’ at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  108|     va_list ap;
#  109|     va_start(ap, fmt);
#  110|->   bufp = curl_mvaprintf(fmt, ap);
#  111|     va_end(ap);
#  112|     if(!bufp) {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def42]
curl-8.18.0/src/tool_easysrc.c:191:7: warning[-Wanalyzer-file-leak]: leak of FILE 'out'
curl-8.18.0/src/tool_easysrc.c:178:5: branch_true: following 'true' branch (when the strings are non-equal)...
curl-8.18.0/src/tool_easysrc.c:179:11: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:179:11: acquire_resource: opened here
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: following 'false' branch (when 'out' is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: ...to here
curl-8.18.0/src/tool_easysrc.c:190:16: branch_true: following 'true' branch (when 'c' is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:191:7: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:191:7: throw: if 'curl_mfprintf' throws an exception...
curl-8.18.0/src/tool_easysrc.c:191:7: danger: 'out' leaks here; was opened at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  189|   
#  190|       for(i = 0; ((c = srchead[i]) != NULL); i++)
#  191|->       curl_mfprintf(out, "%s\n", c);
#  192|   
#  193|       /* Declare variables used for complex setopt values */

Error: GCC_ANALYZER_WARNING (CWE-775): [#def43]
curl-8.18.0/src/tool_easysrc.c:191:7: warning[-Wanalyzer-file-leak]: leak of FILE ‘out’
curl-8.18.0/src/tool_easysrc.c:178:5: branch_true: following ‘true’ branch (when the strings are non-equal)...
curl-8.18.0/src/tool_easysrc.c:179:11: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:179:11: acquire_resource: opened here
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: following ‘false’ branch (when ‘out’ is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: ...to here
curl-8.18.0/src/tool_easysrc.c:190:16: branch_true: following ‘true’ branch (when ‘c’ is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:191:7: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:191:7: throw: if ‘curl_mfprintf’ throws an exception...
curl-8.18.0/src/tool_easysrc.c:191:7: danger: ‘out’ leaks here; was opened at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  189|   
#  190|       for(i = 0; ((c = srchead[i]) != NULL); i++)
#  191|->       curl_mfprintf(out, "%s\n", c);
#  192|   
#  193|       /* Declare variables used for complex setopt values */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def44]
curl-8.18.0/src/tool_easysrc.c:191:7: warning[-Wanalyzer-malloc-leak]: leak of 'out'
curl-8.18.0/src/tool_easysrc.c:178:5: branch_true: following 'true' branch (when the strings are non-equal)...
curl-8.18.0/src/tool_easysrc.c:179:11: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:179:11: acquire_memory: allocated here
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: following 'false' branch (when 'out' is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: ...to here
curl-8.18.0/src/tool_easysrc.c:190:16: branch_true: following 'true' branch (when 'c' is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:191:7: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:191:7: throw: if 'curl_mfprintf' throws an exception...
curl-8.18.0/src/tool_easysrc.c:191:7: danger: 'out' leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  189|   
#  190|       for(i = 0; ((c = srchead[i]) != NULL); i++)
#  191|->       curl_mfprintf(out, "%s\n", c);
#  192|   
#  193|       /* Declare variables used for complex setopt values */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def45]
curl-8.18.0/src/tool_easysrc.c:191:7: warning[-Wanalyzer-malloc-leak]: leak of ‘out’
curl-8.18.0/src/tool_easysrc.c:178:5: branch_true: following ‘true’ branch (when the strings are non-equal)...
curl-8.18.0/src/tool_easysrc.c:179:11: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:179:11: acquire_memory: allocated here
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: following ‘false’ branch (when ‘out’ is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:184:5: branch_false: ...to here
curl-8.18.0/src/tool_easysrc.c:190:16: branch_true: following ‘true’ branch (when ‘c’ is non-NULL)...
curl-8.18.0/src/tool_easysrc.c:191:7: branch_true: ...to here
curl-8.18.0/src/tool_easysrc.c:191:7: throw: if ‘curl_mfprintf’ throws an exception...
curl-8.18.0/src/tool_easysrc.c:191:7: danger: ‘out’ leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  189|   
#  190|       for(i = 0; ((c = srchead[i]) != NULL); i++)
#  191|->       curl_mfprintf(out, "%s\n", c);
#  192|   
#  193|       /* Declare variables used for complex setopt values */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def46]
curl-8.18.0/src/tool_formparse.c:770:9: warning[-Wanalyzer-malloc-leak]: leak of 'contents'
curl-8.18.0/src/tool_formparse.c:742:14: acquire_memory: allocated here
curl-8.18.0/src/tool_formparse.c:743:5: branch_false: following 'false' branch (when 'contents' is non-NULL)...
curl-8.18.0/src/tool_formparse.c:747:11: branch_false: ...to here
curl-8.18.0/src/tool_formparse.c:748:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_formparse.c:750:7: branch_true: ...to here
curl-8.18.0/src/tool_formparse.c:750:7: branch_false: following 'false' branch...
curl-8.18.0/src/tool_formparse.c:752:6: branch_false: ...to here
curl-8.18.0/src/tool_formparse.c:767:12: branch_true: following 'true' branch...
curl-8.18.0/src/tool_formparse.c:767:13: branch_false: following 'false' branch (when 'literal_value == 0')...
curl-8.18.0/src/tool_formparse.c:769:10: branch_false: ...to here
curl-8.18.0/src/tool_formparse.c:769:9: branch_true: following 'true' branch...
curl-8.18.0/src/tool_formparse.c:770:9: branch_true: ...to here
curl-8.18.0/src/tool_formparse.c:770:9: throw: if 'warnf' throws an exception...
curl-8.18.0/src/tool_formparse.c:770:9: danger: 'contents' leaks here; was allocated at [(1)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/0)
#  768|         /* Ending a multipart. */
#  769|         if(*mimecurrent == *mimeroot) {
#  770|->         warnf("no multipart to terminate");
#  771|           goto fail;
#  772|         }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def47]
curl-8.18.0/src/tool_formparse.c:770:9: warning[-Wanalyzer-malloc-leak]: leak of ‘contents’
curl-8.18.0/src/tool_formparse.c:742:14: acquire_memory: allocated here
curl-8.18.0/src/tool_formparse.c:743:5: branch_false: following ‘false’ branch (when ‘contents’ is non-NULL)...
curl-8.18.0/src/tool_formparse.c:747:11: branch_false: ...to here
curl-8.18.0/src/tool_formparse.c:748:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_formparse.c:750:7: branch_true: ...to here
curl-8.18.0/src/tool_formparse.c:750:7: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_formparse.c:752:6: branch_false: ...to here
curl-8.18.0/src/tool_formparse.c:767:12: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_formparse.c:767:13: branch_false: following ‘false’ branch (when ‘literal_value == 0’)...
curl-8.18.0/src/tool_formparse.c:769:10: branch_false: ...to here
curl-8.18.0/src/tool_formparse.c:769:9: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_formparse.c:770:9: branch_true: ...to here
curl-8.18.0/src/tool_formparse.c:770:9: throw: if ‘warnf’ throws an exception...
curl-8.18.0/src/tool_formparse.c:770:9: danger: ‘contents’ leaks here; was allocated at [(1)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/0)
#  768|         /* Ending a multipart. */
#  769|         if(*mimecurrent == *mimeroot) {
#  770|->         warnf("no multipart to terminate");
#  771|           goto fail;
#  772|         }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def48]
curl-8.18.0/src/tool_ipfs.c:69:3: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:69:3: throw: if 'curl_free' throws an exception...
curl-8.18.0/src/tool_ipfs.c:69:3: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was opened at [(5)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/4)
#   67|   
#   68|     gfile = curlx_fopen(gateway_composed_c, FOPEN_READTEXT);
#   69|->   curl_free(gateway_composed_c);
#   70|   
#   71|     if(gfile) {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def49]
curl-8.18.0/src/tool_ipfs.c:69:3: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:69:3: throw: if ‘curl_free’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:69:3: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was opened at [(5)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/4)
#   67|   
#   68|     gfile = curlx_fopen(gateway_composed_c, FOPEN_READTEXT);
#   69|->   curl_free(gateway_composed_c);
#   70|   
#   71|     if(gfile) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def50]
curl-8.18.0/src/tool_ipfs.c:69:3: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:69:3: throw: if 'curl_free' throws an exception...
curl-8.18.0/src/tool_ipfs.c:69:3: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#   67|   
#   68|     gfile = curlx_fopen(gateway_composed_c, FOPEN_READTEXT);
#   69|->   curl_free(gateway_composed_c);
#   70|   
#   71|     if(gfile) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def51]
curl-8.18.0/src/tool_ipfs.c:69:3: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:69:3: throw: if ‘curl_free’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:69:3: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#   67|   
#   68|     gfile = curlx_fopen(gateway_composed_c, FOPEN_READTEXT);
#   69|->   curl_free(gateway_composed_c);
#   70|   
#   71|     if(gfile) {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def52]
curl-8.18.0/src/tool_ipfs.c:75:5: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:75:5: throw: if 'curlx_dyn_init' throws an exception...
curl-8.18.0/src/tool_ipfs.c:75:5: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was opened at [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
#   73|       struct dynbuf dyn;
#   74|       char *gateway = NULL;
#   75|->     curlx_dyn_init(&dyn, MAX_GATEWAY_URL_LEN);
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */

Error: GCC_ANALYZER_WARNING (CWE-775): [#def53]
curl-8.18.0/src/tool_ipfs.c:75:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:75:5: throw: if ‘curlx_dyn_init’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:75:5: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was opened at [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
#   73|       struct dynbuf dyn;
#   74|       char *gateway = NULL;
#   75|->     curlx_dyn_init(&dyn, MAX_GATEWAY_URL_LEN);
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def54]
curl-8.18.0/src/tool_ipfs.c:75:5: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:75:5: throw: if 'curlx_dyn_init' throws an exception...
curl-8.18.0/src/tool_ipfs.c:75:5: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was allocated at [(5)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/4)
#   73|       struct dynbuf dyn;
#   74|       char *gateway = NULL;
#   75|->     curlx_dyn_init(&dyn, MAX_GATEWAY_URL_LEN);
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def55]
curl-8.18.0/src/tool_ipfs.c:75:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:75:5: throw: if ‘curlx_dyn_init’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:75:5: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/4)
#   73|       struct dynbuf dyn;
#   74|       char *gateway = NULL;
#   75|->     curlx_dyn_init(&dyn, MAX_GATEWAY_URL_LEN);
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */

Error: GCC_ANALYZER_WARNING (CWE-775): [#def56]
curl-8.18.0/src/tool_ipfs.c:78:39: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:78:11: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:80:10: throw: if 'curlx_dyn_addn' throws an exception...
curl-8.18.0/src/tool_ipfs.c:78:39: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was opened at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */
#   78|->     while((c = getc(gfile)) != EOF && c != '\n' && c != '\r') {
#   79|         char c_char = (char)c;
#   80|         if(curlx_dyn_addn(&dyn, &c_char, 1))

Error: GCC_ANALYZER_WARNING (CWE-775): [#def57]
curl-8.18.0/src/tool_ipfs.c:78:39: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:78:11: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:80:10: throw: if ‘curlx_dyn_addn’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:78:39: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was opened at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */
#   78|->     while((c = getc(gfile)) != EOF && c != '\n' && c != '\r') {
#   79|         char c_char = (char)c;
#   80|         if(curlx_dyn_addn(&dyn, &c_char, 1))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def58]
curl-8.18.0/src/tool_ipfs.c:78:39: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:78:11: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:80:10: throw: if 'curlx_dyn_addn' throws an exception...
curl-8.18.0/src/tool_ipfs.c:78:39: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was allocated at [(5)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/4)
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */
#   78|->     while((c = getc(gfile)) != EOF && c != '\n' && c != '\r') {
#   79|         char c_char = (char)c;
#   80|         if(curlx_dyn_addn(&dyn, &c_char, 1))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def59]
curl-8.18.0/src/tool_ipfs.c:78:39: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:78:11: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:80:10: throw: if ‘curlx_dyn_addn’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:78:39: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/4)
#   76|   
#   77|       /* get the first line of the gateway file, ignore the rest */
#   78|->     while((c = getc(gfile)) != EOF && c != '\n' && c != '\r') {
#   79|         char c_char = (char)c;
#   80|         if(curlx_dyn_addn(&dyn, &c_char, 1))

Error: GCC_ANALYZER_WARNING (CWE-775): [#def60]
curl-8.18.0/src/tool_ipfs.c:84:8: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:8: throw: if 'curlx_dyn_len' throws an exception...
curl-8.18.0/src/tool_ipfs.c:84:8: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was opened at [(5)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/4)
#   82|       }
#   83|   
#   84|->     if(curlx_dyn_len(&dyn))
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def61]
curl-8.18.0/src/tool_ipfs.c:84:8: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:8: throw: if ‘curlx_dyn_len’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:84:8: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was opened at [(5)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/4)
#   82|       }
#   83|   
#   84|->     if(curlx_dyn_len(&dyn))
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def62]
curl-8.18.0/src/tool_ipfs.c:84:8: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:8: throw: if 'curlx_dyn_len' throws an exception...
curl-8.18.0/src/tool_ipfs.c:84:8: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was allocated at [(5)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/4)
#   82|       }
#   83|   
#   84|->     if(curlx_dyn_len(&dyn))
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def63]
curl-8.18.0/src/tool_ipfs.c:84:8: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:8: throw: if ‘curlx_dyn_len’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:84:8: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/4)
#   82|       }
#   83|   
#   84|->     if(curlx_dyn_len(&dyn))
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def64]
curl-8.18.0/src/tool_ipfs.c:85:17: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:85:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:85:17: throw: if 'curlx_dyn_ptr' throws an exception...
curl-8.18.0/src/tool_ipfs.c:85:17: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was opened at [(5)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/4)
#   83|   
#   84|       if(curlx_dyn_len(&dyn))
#   85|->       gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|       curl_free(ipfs_path_c);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def65]
curl-8.18.0/src/tool_ipfs.c:85:17: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:85:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:85:17: throw: if ‘curlx_dyn_ptr’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:85:17: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was opened at [(5)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/4)
#   83|   
#   84|       if(curlx_dyn_len(&dyn))
#   85|->       gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|       curl_free(ipfs_path_c);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def66]
curl-8.18.0/src/tool_ipfs.c:85:17: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:85:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:85:17: throw: if 'curlx_dyn_ptr' throws an exception...
curl-8.18.0/src/tool_ipfs.c:85:17: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was allocated at [(5)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/4)
#   83|   
#   84|       if(curlx_dyn_len(&dyn))
#   85|->       gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|       curl_free(ipfs_path_c);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def67]
curl-8.18.0/src/tool_ipfs.c:85:17: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:85:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:85:17: throw: if ‘curlx_dyn_ptr’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:85:17: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/4)
#   83|   
#   84|       if(curlx_dyn_len(&dyn))
#   85|->       gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|       curl_free(ipfs_path_c);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def68]
curl-8.18.0/src/tool_ipfs.c:87:5: warning[-Wanalyzer-file-leak]: leak of FILE 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:87:5: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:87:5: throw: if 'curl_free' throws an exception...
curl-8.18.0/src/tool_ipfs.c:87:5: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was opened at [(5)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/4)
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|->     curl_free(ipfs_path_c);
#   88|       curlx_fclose(gfile);
#   89|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def69]
curl-8.18.0/src/tool_ipfs.c:87:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_resource: opened here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:87:5: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:87:5: throw: if ‘curl_free’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:87:5: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was opened at [(5)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/4)
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|->     curl_free(ipfs_path_c);
#   88|       curlx_fclose(gfile);
#   89|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def70]
curl-8.18.0/src/tool_ipfs.c:87:5: warning[-Wanalyzer-malloc-leak]: leak of 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")'
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following 'false' branch (when 'gateway_env' is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:87:5: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:87:5: throw: if 'curl_free' throws an exception...
curl-8.18.0/src/tool_ipfs.c:87:5: danger: 'fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")' leaks here; was allocated at [(5)](sarif:/runs/0/results/11/codeFlows/0/threadFlows/0/locations/4)
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|->     curl_free(ipfs_path_c);
#   88|       curlx_fclose(gfile);
#   89|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def71]
curl-8.18.0/src/tool_ipfs.c:87:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’
curl-8.18.0/src/tool_ipfs.c:46:5: branch_false: following ‘false’ branch (when ‘gateway_env’ is NULL)...
curl-8.18.0/src/tool_ipfs.c:50:17: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:65:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:68:11: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:68:11: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:71:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:75:5: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:84:7: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:87:5: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:87:5: throw: if ‘curl_free’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:87:5: danger: ‘fopen(curl_maprintf("%s%sgateway", ipfs_path_c,  <unknown>), "r")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/11/codeFlows/0/threadFlows/0/locations/4)
#   85|         gateway = curlx_dyn_ptr(&dyn);
#   86|   
#   87|->     curl_free(ipfs_path_c);
#   88|       curlx_fclose(gfile);
#   89|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def72]
curl-8.18.0/src/tool_ipfs.c:160:6: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:6: throw: if 'curl_url_get' throws an exception...
curl-8.18.0/src/tool_ipfs.c:160:6: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/8)
#  158|   
#  159|     /* check for unsupported gateway parts */
#  160|->   if(curl_url_get(gatewayurl, CURLUPART_QUERY, &gwquery, 0) !=
#  161|        CURLUE_NO_QUERY) {
#  162|       result = CURLE_URL_MALFORMAT;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def73]
curl-8.18.0/src/tool_ipfs.c:160:6: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:6: throw: if ‘curl_url_get’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:160:6: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/8)
#  158|   
#  159|     /* check for unsupported gateway parts */
#  160|->   if(curl_url_get(gatewayurl, CURLUPART_QUERY, &gwquery, 0) !=
#  161|        CURLUE_NO_QUERY) {
#  162|       result = CURLE_URL_MALFORMAT;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def74]
curl-8.18.0/src/tool_ipfs.c:167:6: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: throw: if 'curl_url_get' throws an exception...
curl-8.18.0/src/tool_ipfs.c:167:6: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/8)
#  165|   
#  166|     /* get gateway parts */
#  167|->   if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) ||
#  168|        curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|        curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def75]
curl-8.18.0/src/tool_ipfs.c:167:6: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: throw: if ‘curl_url_get’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:167:6: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/8)
#  165|   
#  166|     /* get gateway parts */
#  167|->   if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) ||
#  168|        curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|        curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def76]
curl-8.18.0/src/tool_ipfs.c:168:6: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:168:6: throw: if 'curl_url_get' throws an exception...
curl-8.18.0/src/tool_ipfs.c:168:6: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/14/codeFlows/0/threadFlows/0/locations/8)
#  166|     /* get gateway parts */
#  167|     if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) ||
#  168|->      curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|        curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||
#  170|        curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def77]
curl-8.18.0/src/tool_ipfs.c:168:6: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:168:6: throw: if ‘curl_url_get’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:168:6: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/14/codeFlows/0/threadFlows/0/locations/8)
#  166|     /* get gateway parts */
#  167|     if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) ||
#  168|->      curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|        curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||
#  170|        curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def78]
curl-8.18.0/src/tool_ipfs.c:169:6: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:169:6: throw: if 'curl_url_get' throws an exception...
curl-8.18.0/src/tool_ipfs.c:169:6: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/15/codeFlows/0/threadFlows/0/locations/8)
#  167|     if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) ||
#  168|        curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|->      curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||
#  170|        curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE))
#  171|       goto clean;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def79]
curl-8.18.0/src/tool_ipfs.c:169:6: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:169:6: throw: if ‘curl_url_get’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:169:6: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/15/codeFlows/0/threadFlows/0/locations/8)
#  167|     if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) ||
#  168|        curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|->      curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||
#  170|        curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE))
#  171|       goto clean;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def80]
curl-8.18.0/src/tool_ipfs.c:170:6: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:170:6: throw: if 'curl_url_get' throws an exception...
curl-8.18.0/src/tool_ipfs.c:170:6: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/16/codeFlows/0/threadFlows/0/locations/8)
#  168|        curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|        curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||
#  170|->      curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE))
#  171|       goto clean;
#  172|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def81]
curl-8.18.0/src/tool_ipfs.c:170:6: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:170:6: throw: if ‘curl_url_get’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:170:6: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/16/codeFlows/0/threadFlows/0/locations/8)
#  168|        curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) ||
#  169|        curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) ||
#  170|->      curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE))
#  171|       goto clean;
#  172|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def82]
curl-8.18.0/src/tool_ipfs.c:174:6: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:174:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:174:6: throw: if 'curl_url_get' throws an exception...
curl-8.18.0/src/tool_ipfs.c:174:6: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/17/codeFlows/0/threadFlows/0/locations/8)
#  172|   
#  173|     /* get the path from user input */
#  174|->   if(curl_url_get(uh, CURLUPART_PATH, &inputpath, CURLU_URLDECODE))
#  175|       goto clean;
#  176|     /* inputpath might be NULL or a valid pointer now */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def83]
curl-8.18.0/src/tool_ipfs.c:174:6: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:174:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:174:6: throw: if ‘curl_url_get’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:174:6: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/17/codeFlows/0/threadFlows/0/locations/8)
#  172|   
#  173|     /* get the path from user input */
#  174|->   if(curl_url_get(uh, CURLUPART_PATH, &inputpath, CURLU_URLDECODE))
#  175|       goto clean;
#  176|     /* inputpath might be NULL or a valid pointer now */

Error: GCC_ANALYZER_WARNING (CWE-401): [#def84]
curl-8.18.0/src/tool_ipfs.c:188:16: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:174:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:174:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:180:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:181:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:185:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:188:16: throw: if 'curl_maprintf' throws an exception...
curl-8.18.0/src/tool_ipfs.c:188:16: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/21/codeFlows/0/threadFlows/0/locations/8)
#  186|       *inputpath = '\0';
#  187|   
#  188|->   pathbuffer = curl_maprintf("%s%s%s/%s%s", gwpath,
#  189|                                has_trailing_slash(gwpath) ? "" : "/",
#  190|                                protocol, cid,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def85]
curl-8.18.0/src/tool_ipfs.c:188:16: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:174:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:174:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:180:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:181:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:185:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:188:16: throw: if ‘curl_maprintf’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:188:16: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/21/codeFlows/0/threadFlows/0/locations/8)
#  186|       *inputpath = '\0';
#  187|   
#  188|->   pathbuffer = curl_maprintf("%s%s%s/%s%s", gwpath,
#  189|                                has_trailing_slash(gwpath) ? "" : "/",
#  190|                                protocol, cid,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def86]
curl-8.18.0/src/tool_ipfs.c:193:6: warning[-Wanalyzer-malloc-leak]: leak of 'gateway'
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following 'false' branch (when 'gateway' is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:174:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:174:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:180:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:181:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:185:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:192:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ipfs.c:193:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:193:6: throw: if 'curl_url_set' throws an exception...
curl-8.18.0/src/tool_ipfs.c:193:6: danger: 'gateway' leaks here; was allocated at [(9)](sarif:/runs/0/results/22/codeFlows/0/threadFlows/0/locations/8)
#  191|                                inputpath ? inputpath : "");
#  192|     if(!pathbuffer ||
#  193|->      curl_url_set(uh, CURLUPART_PATH, pathbuffer, CURLU_URLENCODE))
#  194|       goto clean;
#  195|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def87]
curl-8.18.0/src/tool_ipfs.c:193:6: warning[-Wanalyzer-malloc-leak]: leak of ‘gateway’
curl-8.18.0/src/tool_ipfs.c:120:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:125:15: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:126:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:132:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:133:9: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:133:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_ipfs.c:135:17: branch_true: ...to here
curl-8.18.0/src/tool_ipfs.c:135:17: acquire_memory: allocated here
curl-8.18.0/src/tool_ipfs.c:136:9: branch_false: following ‘false’ branch (when ‘gateway’ is non-NULL)...
curl-8.18.0/src/tool_ipfs.c:160:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:160:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:168:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:169:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:170:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:167:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:174:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:174:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:180:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:181:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:179:6: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:185:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:192:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ipfs.c:193:6: branch_false: ...to here
curl-8.18.0/src/tool_ipfs.c:193:6: throw: if ‘curl_url_set’ throws an exception...
curl-8.18.0/src/tool_ipfs.c:193:6: danger: ‘gateway’ leaks here; was allocated at [(9)](sarif:/runs/0/results/22/codeFlows/0/threadFlows/0/locations/8)
#  191|                                inputpath ? inputpath : "");
#  192|     if(!pathbuffer ||
#  193|->      curl_url_set(uh, CURLUPART_PATH, pathbuffer, CURLU_URLENCODE))
#  194|       goto clean;
#  195|   

Error: GCC_ANALYZER_WARNING (CWE-404): [#def88]
curl-8.18.0/src/tool_msgs.c:42:18: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_msgs.c:79:6: enter_function: entry to 'notef'
curl-8.18.0/src/tool_msgs.c:81:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_msgs.c:83:5: branch_true: ...to here
curl-8.18.0/src/tool_msgs.c:83:5: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_msgs.c:84:5: call_function: calling 'voutf' from 'notef'
#   40|     char *ptr;
#   41|     char buffer[1024];
#   42|->   size_t termw = get_terminal_columns();
#   43|     size_t prefw = strlen(prefix);
#   44|     size_t width = termw > prefw ? termw - prefw : SIZE_MAX;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def89]
curl-8.18.0/src/tool_msgs.c:42:18: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_msgs.c:79:6: enter_function: entry to ‘notef’
curl-8.18.0/src/tool_msgs.c:81:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_msgs.c:83:5: branch_true: ...to here
curl-8.18.0/src/tool_msgs.c:83:5: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_msgs.c:84:5: call_function: calling ‘voutf’ from ‘notef’
#   40|     char *ptr;
#   41|     char buffer[1024];
#   42|->   size_t termw = get_terminal_columns();
#   43|     size_t prefw = strlen(prefix);
#   44|     size_t width = termw > prefw ? termw - prefw : SIZE_MAX;

Error: GCC_ANALYZER_WARNING (CWE-404): [#def90]
curl-8.18.0/src/tool_msgs.c:46:9: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_msgs.c:79:6: enter_function: entry to 'notef'
curl-8.18.0/src/tool_msgs.c:81:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_msgs.c:83:5: branch_true: ...to here
curl-8.18.0/src/tool_msgs.c:83:5: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_msgs.c:84:5: call_function: calling 'voutf' from 'notef'
#   44|     size_t width = termw > prefw ? termw - prefw : SIZE_MAX;
#   45|     DEBUGASSERT(!strchr(fmt, '\n'));
#   46|->   len = curl_mvsnprintf(buffer, sizeof(buffer), fmt, ap);
#   47|     ptr = buffer;
#   48|     while(len > 0) {

Error: GCC_ANALYZER_WARNING (CWE-404): [#def91]
curl-8.18.0/src/tool_msgs.c:46:9: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_msgs.c:79:6: enter_function: entry to ‘notef’
curl-8.18.0/src/tool_msgs.c:81:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_msgs.c:83:5: branch_true: ...to here
curl-8.18.0/src/tool_msgs.c:83:5: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_msgs.c:84:5: call_function: calling ‘voutf’ from ‘notef’
#   44|     size_t width = termw > prefw ? termw - prefw : SIZE_MAX;
#   45|     DEBUGASSERT(!strchr(fmt, '\n'));
#   46|->   len = curl_mvsnprintf(buffer, sizeof(buffer), fmt, ap);
#   47|     ptr = buffer;
#   48|     while(len > 0) {

Error: GCC_ANALYZER_WARNING (CWE-404): [#def92]
curl-8.18.0/src/tool_msgs.c:114:5: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_msgs.c:109:5: branch_true: following 'true' branch (when 'fmt' is non-NULL)...
curl-8.18.0/src/tool_msgs.c:111:5: branch_true: ...to here
curl-8.18.0/src/tool_msgs.c:111:5: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_msgs.c:114:5: throw: if 'curl_mvfprintf' throws an exception...
curl-8.18.0/src/tool_msgs.c:114:5: danger: missing call to 'va_end' to match 'va_start' at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  112|       DEBUGASSERT(!strchr(fmt, '\n'));
#  113|       fputs("curl: ", tool_stderr); /* prefix it */
#  114|->     curl_mvfprintf(tool_stderr, fmt, ap);
#  115|       va_end(ap);
#  116|       fputs("\n", tool_stderr); /* newline it */

Error: GCC_ANALYZER_WARNING (CWE-404): [#def93]
curl-8.18.0/src/tool_msgs.c:114:5: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_msgs.c:109:5: branch_true: following ‘true’ branch (when ‘fmt’ is non-NULL)...
curl-8.18.0/src/tool_msgs.c:111:5: branch_true: ...to here
curl-8.18.0/src/tool_msgs.c:111:5: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_msgs.c:114:5: throw: if ‘curl_mvfprintf’ throws an exception...
curl-8.18.0/src/tool_msgs.c:114:5: danger: missing call to ‘va_end’ to match ‘va_start’ at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  112|       DEBUGASSERT(!strchr(fmt, '\n'));
#  113|       fputs("curl: ", tool_stderr); /* prefix it */
#  114|->     curl_mvfprintf(tool_stderr, fmt, ap);
#  115|       va_end(ap);
#  116|       fputs("\n", tool_stderr); /* newline it */

Error: GCC_ANALYZER_WARNING (CWE-775): [#def94]
curl-8.18.0/src/tool_parsecfg.c:131:5: warning[-Wanalyzer-file-leak]: leak of FILE 'file'
curl-8.18.0/src/tool_parsecfg.c:90:5: branch_true: following 'true' branch (when 'filename' is NULL)...
curl-8.18.0/src/tool_parsecfg.c:92:20: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:93:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_parsecfg.c:94:14: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:94:14: acquire_resource: opened here
curl-8.18.0/src/tool_parsecfg.c:95:9: branch_false: following 'false' branch...
curl-8.18.0/src/tool_parsecfg.c:129:10: branch_false: ...to here
curl-8.18.0/src/tool_parsecfg.c:131:5: throw: if 'curlx_dyn_init' throws an exception...
curl-8.18.0/src/tool_parsecfg.c:131:5: danger: 'file' leaks here; was opened at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#  129|       bool fileerror = FALSE;
#  130|       curlx_dyn_init(&buf, MAX_CONFIG_LINE_LENGTH);
#  131|->     curlx_dyn_init(&pbuf, MAX_CONFIG_LINE_LENGTH);
#  132|       DEBUGASSERT(filename);
#  133|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def95]
curl-8.18.0/src/tool_parsecfg.c:131:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘file’
curl-8.18.0/src/tool_parsecfg.c:90:5: branch_true: following ‘true’ branch (when ‘filename’ is NULL)...
curl-8.18.0/src/tool_parsecfg.c:92:20: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:93:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_parsecfg.c:94:14: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:94:14: acquire_resource: opened here
curl-8.18.0/src/tool_parsecfg.c:95:9: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_parsecfg.c:129:10: branch_false: ...to here
curl-8.18.0/src/tool_parsecfg.c:131:5: throw: if ‘curlx_dyn_init’ throws an exception...
curl-8.18.0/src/tool_parsecfg.c:131:5: danger: ‘file’ leaks here; was opened at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#  129|       bool fileerror = FALSE;
#  130|       curlx_dyn_init(&buf, MAX_CONFIG_LINE_LENGTH);
#  131|->     curlx_dyn_init(&pbuf, MAX_CONFIG_LINE_LENGTH);
#  132|       DEBUGASSERT(filename);
#  133|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def96]
curl-8.18.0/src/tool_parsecfg.c:131:5: warning[-Wanalyzer-malloc-leak]: leak of 'file'
curl-8.18.0/src/tool_parsecfg.c:90:5: branch_true: following 'true' branch (when 'filename' is NULL)...
curl-8.18.0/src/tool_parsecfg.c:92:20: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:93:7: branch_true: following 'true' branch...
curl-8.18.0/src/tool_parsecfg.c:94:14: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:94:14: acquire_memory: allocated here
curl-8.18.0/src/tool_parsecfg.c:95:9: branch_false: following 'false' branch...
curl-8.18.0/src/tool_parsecfg.c:129:10: branch_false: ...to here
curl-8.18.0/src/tool_parsecfg.c:131:5: throw: if 'curlx_dyn_init' throws an exception...
curl-8.18.0/src/tool_parsecfg.c:131:5: danger: 'file' leaks here; was allocated at [(5)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/4)
#  129|       bool fileerror = FALSE;
#  130|       curlx_dyn_init(&buf, MAX_CONFIG_LINE_LENGTH);
#  131|->     curlx_dyn_init(&pbuf, MAX_CONFIG_LINE_LENGTH);
#  132|       DEBUGASSERT(filename);
#  133|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def97]
curl-8.18.0/src/tool_parsecfg.c:131:5: warning[-Wanalyzer-malloc-leak]: leak of ‘file’
curl-8.18.0/src/tool_parsecfg.c:90:5: branch_true: following ‘true’ branch (when ‘filename’ is NULL)...
curl-8.18.0/src/tool_parsecfg.c:92:20: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:93:7: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_parsecfg.c:94:14: branch_true: ...to here
curl-8.18.0/src/tool_parsecfg.c:94:14: acquire_memory: allocated here
curl-8.18.0/src/tool_parsecfg.c:95:9: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_parsecfg.c:129:10: branch_false: ...to here
curl-8.18.0/src/tool_parsecfg.c:131:5: throw: if ‘curlx_dyn_init’ throws an exception...
curl-8.18.0/src/tool_parsecfg.c:131:5: danger: ‘file’ leaks here; was allocated at [(5)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/4)
#  129|       bool fileerror = FALSE;
#  130|       curlx_dyn_init(&buf, MAX_CONFIG_LINE_LENGTH);
#  131|->     curlx_dyn_init(&pbuf, MAX_CONFIG_LINE_LENGTH);
#  132|       DEBUGASSERT(filename);
#  133|   

Error: GCC_ANALYZER_WARNING (CWE-404): [#def98]
curl-8.18.0/src/tool_setopt.c:187:3: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to 'tool_setopt_str'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following 'false' branch (when 'tag != 10015')...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling 'c_escape' from 'tool_setopt_str'
#  185|     struct dynbuf escaped;
#  186|   
#  187|->   curlx_dyn_init(&escaped, 4 * MAX_STRING_LENGTH_OUTPUT + 3);
#  188|   
#  189|     if(len == ZERO_TERMINATED)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def99]
curl-8.18.0/src/tool_setopt.c:187:3: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to ‘tool_setopt_str’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following ‘false’ branch (when ‘tag != 10015’)...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling ‘c_escape’ from ‘tool_setopt_str’
#  185|     struct dynbuf escaped;
#  186|   
#  187|->   curlx_dyn_init(&escaped, 4 * MAX_STRING_LENGTH_OUTPUT + 3);
#  188|   
#  189|     if(len == ZERO_TERMINATED)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def100]
curl-8.18.0/src/tool_setopt.c:198:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to 'tool_setopt_str'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following 'false' branch (when 'tag != 10015')...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling 'c_escape' from 'tool_setopt_str'
#  196|     }
#  197|   
#  198|->   result = curlx_dyn_addn(&escaped, STRCONST(""));
#  199|     for(s = str; !result && len; s++, len--) {
#  200|       /* escape question marks as well, to prevent generating accidental

Error: GCC_ANALYZER_WARNING (CWE-404): [#def101]
curl-8.18.0/src/tool_setopt.c:198:12: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to ‘tool_setopt_str’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following ‘false’ branch (when ‘tag != 10015’)...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling ‘c_escape’ from ‘tool_setopt_str’
#  196|     }
#  197|   
#  198|->   result = curlx_dyn_addn(&escaped, STRCONST(""));
#  199|     for(s = str; !result && len; s++, len--) {
#  200|       /* escape question marks as well, to prevent generating accidental

Error: GCC_ANALYZER_WARNING (CWE-404): [#def102]
curl-8.18.0/src/tool_setopt.c:209:14: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to 'tool_setopt_str'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following 'false' branch (when 'tag != 10015')...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling 'c_escape' from 'tool_setopt_str'
#  207|         continue;
#  208|   
#  209|->     result = curlx_dyn_addn(&escaped, str, s - str);
#  210|       str = s + 1;
#  211|   

Error: GCC_ANALYZER_WARNING (CWE-404): [#def103]
curl-8.18.0/src/tool_setopt.c:209:14: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to ‘tool_setopt_str’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following ‘false’ branch (when ‘tag != 10015’)...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling ‘c_escape’ from ‘tool_setopt_str’
#  207|         continue;
#  208|   
#  209|->     result = curlx_dyn_addn(&escaped, str, s - str);
#  210|       str = s + 1;
#  211|   

Error: GCC_ANALYZER_WARNING (CWE-404): [#def104]
curl-8.18.0/src/tool_setopt.c:214:18: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to 'tool_setopt_str'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following 'false' branch (when 'tag != 10015')...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling 'c_escape' from 'tool_setopt_str'
#  212|       if(!result) {
#  213|         if(p && *p)
#  214|->         result = curlx_dyn_addn(&escaped, to + 2 * (p - from), 2);
#  215|         else {
#  216|           result = curlx_dyn_addf(&escaped,

Error: GCC_ANALYZER_WARNING (CWE-404): [#def105]
curl-8.18.0/src/tool_setopt.c:214:18: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to ‘tool_setopt_str’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following ‘false’ branch (when ‘tag != 10015’)...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling ‘c_escape’ from ‘tool_setopt_str’
#  212|       if(!result) {
#  213|         if(p && *p)
#  214|->         result = curlx_dyn_addn(&escaped, to + 2 * (p - from), 2);
#  215|         else {
#  216|           result = curlx_dyn_addf(&escaped,

Error: GCC_ANALYZER_WARNING (CWE-404): [#def106]
curl-8.18.0/src/tool_setopt.c:216:18: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to 'tool_setopt_str'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following 'false' branch (when 'tag != 10015')...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling 'c_escape' from 'tool_setopt_str'
#  214|           result = curlx_dyn_addn(&escaped, to + 2 * (p - from), 2);
#  215|         else {
#  216|->         result = curlx_dyn_addf(&escaped,
#  217|                                   /* Octal escape to avoid >2 digit hex. */
#  218|                                   (len > 1 && ISXDIGIT(s[1])) ?

Error: GCC_ANALYZER_WARNING (CWE-404): [#def107]
curl-8.18.0/src/tool_setopt.c:216:18: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to ‘tool_setopt_str’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following ‘false’ branch (when ‘tag != 10015’)...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling ‘c_escape’ from ‘tool_setopt_str’
#  214|           result = curlx_dyn_addn(&escaped, to + 2 * (p - from), 2);
#  215|         else {
#  216|->         result = curlx_dyn_addf(&escaped,
#  217|                                   /* Octal escape to avoid >2 digit hex. */
#  218|                                   (len > 1 && ISXDIGIT(s[1])) ?

Error: GCC_ANALYZER_WARNING (CWE-404): [#def108]
curl-8.18.0/src/tool_setopt.c:226:14: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to 'tool_setopt_str'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following 'false' branch (when 'tag != 10015')...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling 'c_escape' from 'tool_setopt_str'
#  224|   
#  225|     if(!result)
#  226|->     result = curlx_dyn_addn(&escaped, str, s - str);
#  227|   
#  228|     if(!result)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def109]
curl-8.18.0/src/tool_setopt.c:226:14: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to ‘tool_setopt_str’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following ‘false’ branch (when ‘tag != 10015’)...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling ‘c_escape’ from ‘tool_setopt_str’
#  224|   
#  225|     if(!result)
#  226|->     result = curlx_dyn_addn(&escaped, str, s - str);
#  227|   
#  228|     if(!result)

Error: GCC_ANALYZER_WARNING (CWE-404): [#def110]
curl-8.18.0/src/tool_setopt.c:229:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to 'tool_setopt_str'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following 'false' branch (when 'tag != 10015')...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling 'c_escape' from 'tool_setopt_str'
#  227|   
#  228|     if(!result)
#  229|->     (void)!curlx_dyn_addn(&escaped, "...", cutoff);
#  230|   
#  231|     return curlx_dyn_ptr(&escaped);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def111]
curl-8.18.0/src/tool_setopt.c:229:12: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:662:10: enter_function: entry to ‘tool_setopt_str’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_false: following ‘false’ branch (when ‘tag != 10015’)...
curl-8.18.0/src/tool_setopt.c:684:15: branch_false: ...to here
curl-8.18.0/src/tool_setopt.c:684:15: call_function: calling ‘c_escape’ from ‘tool_setopt_str’
#  227|   
#  228|     if(!result)
#  229|->     (void)!curlx_dyn_addn(&escaped, "...", cutoff);
#  230|   
#  231|     return curlx_dyn_ptr(&escaped);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def112]
curl-8.18.0/src/tool_setopt.c:647:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:643:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:647:12: throw: if 'curl_easy_setopt' throws an exception...
curl-8.18.0/src/tool_setopt.c:647:12: danger: missing call to 'va_end' to match 'va_start' at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0)
#  645|     pval = va_arg(arg, void *);
#  646|   
#  647|->   result = curl_easy_setopt(curl, tag, pval);
#  648|     if(global->libcurl && pval && !result) {
#  649|       /* we only use this if --libcurl was used */

Error: GCC_ANALYZER_WARNING (CWE-404): [#def113]
curl-8.18.0/src/tool_setopt.c:647:12: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:643:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:647:12: throw: if ‘curl_easy_setopt’ throws an exception...
curl-8.18.0/src/tool_setopt.c:647:12: danger: missing call to ‘va_end’ to match ‘va_start’ at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0)
#  645|     pval = va_arg(arg, void *);
#  646|   
#  647|->   result = curl_easy_setopt(curl, tag, pval);
#  648|     if(global->libcurl && pval && !result) {
#  649|       /* we only use this if --libcurl was used */

Error: GCC_ANALYZER_WARNING (CWE-404): [#def114]
curl-8.18.0/src/tool_setopt.c:652:14: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:643:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:648:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:652:14: throw: if 'easysrc_addf' throws an exception...
curl-8.18.0/src/tool_setopt.c:652:14: danger: missing call to 'va_end' to match 'va_start' at [(1)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/0)
#  650|       const char *remark = (tag >= CURLOPTTYPE_FUNCTIONPOINT) ?
#  651|         "function" : "object";
#  652|->     result = easysrc_addf(&easysrc_toohard,
#  653|                             "%s was set to a%s %s pointer", name,
#  654|                             (*remark == 'o' ? "n" : ""), remark);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def115]
curl-8.18.0/src/tool_setopt.c:652:14: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:643:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:648:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:652:14: throw: if ‘easysrc_addf’ throws an exception...
curl-8.18.0/src/tool_setopt.c:652:14: danger: missing call to ‘va_end’ to match ‘va_start’ at [(1)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/0)
#  650|       const char *remark = (tag >= CURLOPTTYPE_FUNCTIONPOINT) ?
#  651|         "function" : "object";
#  652|->     result = easysrc_addf(&easysrc_toohard,
#  653|                             "%s was set to a%s %s pointer", name,
#  654|                             (*remark == 'o' ? "n" : ""), remark);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def116]
curl-8.18.0/src/tool_setopt.c:677:12: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:677:12: throw: if 'curl_easy_setopt' throws an exception...
curl-8.18.0/src/tool_setopt.c:677:12: danger: missing call to 'va_end' to match 'va_start' at [(1)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/0)
#  675|     str = va_arg(arg, char *);
#  676|   
#  677|->   result = curl_easy_setopt(curl, tag, str);
#  678|     if(global->libcurl && str && !result) {
#  679|       /* we only use this if --libcurl was used */

Error: GCC_ANALYZER_WARNING (CWE-404): [#def117]
curl-8.18.0/src/tool_setopt.c:677:12: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:677:12: throw: if ‘curl_easy_setopt’ throws an exception...
curl-8.18.0/src/tool_setopt.c:677:12: danger: missing call to ‘va_end’ to match ‘va_start’ at [(1)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/0)
#  675|     str = va_arg(arg, char *);
#  676|   
#  677|->   result = curl_easy_setopt(curl, tag, str);
#  678|     if(global->libcurl && str && !result) {
#  679|       /* we only use this if --libcurl was used */

Error: GCC_ANALYZER_WARNING (CWE-404): [#def118]
curl-8.18.0/src/tool_setopt.c:683:13: warning[-Wanalyzer-va-list-leak]: missing call to 'va_end'
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: 'va_start' called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following 'true' branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_true: following 'true' branch (when 'tag == 10015')...
curl-8.18.0/src/tool_setopt.c:683:27: branch_true: ...to here
curl-8.18.0/src/tool_setopt.c:683:13: throw: if 'curlx_dyn_len' throws an exception...
curl-8.18.0/src/tool_setopt.c:683:13: danger: missing call to 'va_end' to match 'va_start' at [(1)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/0)
#  681|       char *escaped;
#  682|       if(tag == CURLOPT_POSTFIELDS)
#  683|->       len = curlx_dyn_len(&config->postdata);
#  684|       escaped = c_escape(str, len);
#  685|       if(escaped) {

Error: GCC_ANALYZER_WARNING (CWE-404): [#def119]
curl-8.18.0/src/tool_setopt.c:683:13: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
curl-8.18.0/src/tool_setopt.c:673:3: acquire_resource: ‘va_start’ called here
curl-8.18.0/src/tool_setopt.c:678:5: branch_true: following ‘true’ branch...
curl-8.18.0/src/tool_setopt.c:682:7: branch_true: following ‘true’ branch (when ‘tag == 10015’)...
curl-8.18.0/src/tool_setopt.c:683:27: branch_true: ...to here
curl-8.18.0/src/tool_setopt.c:683:13: throw: if ‘curlx_dyn_len’ throws an exception...
curl-8.18.0/src/tool_setopt.c:683:13: danger: missing call to ‘va_end’ to match ‘va_start’ at [(1)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/0)
#  681|       char *escaped;
#  682|       if(tag == CURLOPT_POSTFIELDS)
#  683|->       len = curlx_dyn_len(&config->postdata);
#  684|       escaped = c_escape(str, len);
#  685|       if(escaped) {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def120]
curl-8.18.0/src/tool_ssls.c:47:14: warning[-Wanalyzer-file-leak]: leak of FILE 'ctx.fp'
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to 'tool_ssls_save'
curl-8.18.0/src/tool_ssls.c:193:12: acquire_resource: opened here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling 'tool_ssls_easy' from 'tool_ssls_save'
#   45|     result = curl_easy_setopt(*peasy, CURLOPT_SHARE, share);
#   46|     if(!result && (global->tracetype != TRACE_NONE)) {
#   47|->     result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|         result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def121]
curl-8.18.0/src/tool_ssls.c:47:14: warning[-Wanalyzer-file-leak]: leak of FILE ‘ctx.fp’
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to ‘tool_ssls_save’
curl-8.18.0/src/tool_ssls.c:193:12: acquire_resource: opened here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling ‘tool_ssls_easy’ from ‘tool_ssls_save’
#   45|     result = curl_easy_setopt(*peasy, CURLOPT_SHARE, share);
#   46|     if(!result && (global->tracetype != TRACE_NONE)) {
#   47|->     result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|         result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def122]
curl-8.18.0/src/tool_ssls.c:47:14: warning[-Wanalyzer-malloc-leak]: leak of 'ctx.fp'
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to 'tool_ssls_save'
curl-8.18.0/src/tool_ssls.c:193:12: acquire_memory: allocated here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling 'tool_ssls_easy' from 'tool_ssls_save'
#   45|     result = curl_easy_setopt(*peasy, CURLOPT_SHARE, share);
#   46|     if(!result && (global->tracetype != TRACE_NONE)) {
#   47|->     result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|         result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def123]
curl-8.18.0/src/tool_ssls.c:47:14: warning[-Wanalyzer-malloc-leak]: leak of ‘ctx.fp’
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to ‘tool_ssls_save’
curl-8.18.0/src/tool_ssls.c:193:12: acquire_memory: allocated here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling ‘tool_ssls_easy’ from ‘tool_ssls_save’
#   45|     result = curl_easy_setopt(*peasy, CURLOPT_SHARE, share);
#   46|     if(!result && (global->tracetype != TRACE_NONE)) {
#   47|->     result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|         result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def124]
curl-8.18.0/src/tool_ssls.c:49:16: warning[-Wanalyzer-file-leak]: leak of FILE 'ctx.fp'
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to 'tool_ssls_save'
curl-8.18.0/src/tool_ssls.c:193:12: acquire_resource: opened here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling 'tool_ssls_easy' from 'tool_ssls_save'
#   47|       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|->       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);
#   50|       my_setopt_long(*peasy, CURLOPT_VERBOSE, 1L);
#   51|     }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def125]
curl-8.18.0/src/tool_ssls.c:49:16: warning[-Wanalyzer-file-leak]: leak of FILE ‘ctx.fp’
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to ‘tool_ssls_save’
curl-8.18.0/src/tool_ssls.c:193:12: acquire_resource: opened here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling ‘tool_ssls_easy’ from ‘tool_ssls_save’
#   47|       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|->       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);
#   50|       my_setopt_long(*peasy, CURLOPT_VERBOSE, 1L);
#   51|     }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def126]
curl-8.18.0/src/tool_ssls.c:49:16: warning[-Wanalyzer-malloc-leak]: leak of 'ctx.fp'
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to 'tool_ssls_save'
curl-8.18.0/src/tool_ssls.c:193:12: acquire_memory: allocated here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following 'false' branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling 'tool_ssls_easy' from 'tool_ssls_save'
#   47|       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|->       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);
#   50|       my_setopt_long(*peasy, CURLOPT_VERBOSE, 1L);
#   51|     }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def127]
curl-8.18.0/src/tool_ssls.c:49:16: warning[-Wanalyzer-malloc-leak]: leak of ‘ctx.fp’
curl-8.18.0/src/tool_ssls.c:185:10: enter_function: entry to ‘tool_ssls_save’
curl-8.18.0/src/tool_ssls.c:193:12: acquire_memory: allocated here
curl-8.18.0/src/tool_ssls.c:194:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_ssls.c:199:7: branch_false: ...to here
curl-8.18.0/src/tool_ssls.c:199:7: call_function: calling ‘tool_ssls_easy’ from ‘tool_ssls_save’
#   47|       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGFUNCTION, tool_debug_cb);
#   48|       if(!result)
#   49|->       result = my_setopt_ptr(*peasy, CURLOPT_DEBUGDATA, config);
#   50|       my_setopt_long(*peasy, CURLOPT_VERBOSE, 1L);
#   51|     }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def128]
curl-8.18.0/src/tool_urlglob.c:156:20: warning[-Wanalyzer-malloc-leak]: leak of 'elem'
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following 'false' branch (when 'size <= 99999')...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following 'true' branch (when 'palloc == 0')...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:139:16: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following 'false' branch (when 'elem' is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:156:20: throw: if 'curlx_dyn_ptr' throws an exception...
curl-8.18.0/src/tool_urlglob.c:156:20: danger: 'elem' leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#  154|         }
#  155|   
#  156|->       elem[size] = curlx_strdup(curlx_dyn_ptr(&glob->buf) ?
#  157|                                   curlx_dyn_ptr(&glob->buf) : "");
#  158|         if(!elem[size]) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def129]
curl-8.18.0/src/tool_urlglob.c:156:20: warning[-Wanalyzer-malloc-leak]: leak of ‘elem’
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following ‘false’ branch (when ‘size <= 99999’)...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following ‘true’ branch (when ‘palloc == 0’)...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:139:16: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following ‘false’ branch (when ‘elem’ is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:156:20: throw: if ‘curlx_dyn_ptr’ throws an exception...
curl-8.18.0/src/tool_urlglob.c:156:20: danger: ‘elem’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#  154|         }
#  155|   
#  156|->       elem[size] = curlx_strdup(curlx_dyn_ptr(&glob->buf) ?
#  157|                                   curlx_dyn_ptr(&glob->buf) : "");
#  158|         if(!elem[size]) {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def130]
curl-8.18.0/src/tool_urlglob.c:163:7: warning[-Wanalyzer-malloc-leak]: leak of '<unknown>'
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following 'false' branch (when 'size <= 99999')...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following 'true' branch (when 'palloc == 0')...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following 'false' branch (when 'elem' is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:156:20: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following 'false' branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:163:7: throw: if 'curlx_dyn_reset' throws an exception...
curl-8.18.0/src/tool_urlglob.c:163:7: danger: '<unknown>' leaks here; was allocated at [(7)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/6)
#  161|         }
#  162|         ++size;
#  163|->       curlx_dyn_reset(&glob->buf);
#  164|   
#  165|         ++pattern;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def131]
curl-8.18.0/src/tool_urlglob.c:163:7: warning[-Wanalyzer-malloc-leak]: leak of 'elem'
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following 'false' branch (when 'size <= 99999')...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following 'true' branch (when 'palloc == 0')...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:139:16: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following 'false' branch (when 'elem' is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following 'false' branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:163:7: throw: if 'curlx_dyn_reset' throws an exception...
curl-8.18.0/src/tool_urlglob.c:163:7: danger: 'elem' leaks here; was allocated at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#  161|         }
#  162|         ++size;
#  163|->       curlx_dyn_reset(&glob->buf);
#  164|   
#  165|         ++pattern;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def132]
curl-8.18.0/src/tool_urlglob.c:163:7: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following ‘false’ branch (when ‘size <= 99999’)...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following ‘true’ branch (when ‘palloc == 0’)...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following ‘false’ branch (when ‘elem’ is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:156:20: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:163:7: throw: if ‘curlx_dyn_reset’ throws an exception...
curl-8.18.0/src/tool_urlglob.c:163:7: danger: ‘<unknown>’ leaks here; was allocated at [(7)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/6)
#  161|         }
#  162|         ++size;
#  163|->       curlx_dyn_reset(&glob->buf);
#  164|   
#  165|         ++pattern;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def133]
curl-8.18.0/src/tool_urlglob.c:163:7: warning[-Wanalyzer-malloc-leak]: leak of ‘elem’
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following ‘false’ branch (when ‘size <= 99999’)...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following ‘true’ branch (when ‘palloc == 0’)...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:139:16: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following ‘false’ branch (when ‘elem’ is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:163:7: throw: if ‘curlx_dyn_reset’ throws an exception...
curl-8.18.0/src/tool_urlglob.c:163:7: danger: ‘elem’ leaks here; was allocated at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#  161|         }
#  162|         ++size;
#  163|->       curlx_dyn_reset(&glob->buf);
#  164|   
#  165|         ++pattern;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def134]
curl-8.18.0/src/tool_urlglob.c:183:10: warning[-Wanalyzer-malloc-leak]: leak of '<unknown>'
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following 'false' branch (when 'size <= 99999')...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following 'true' branch (when 'palloc == 0')...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following 'false' branch (when 'elem' is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:156:20: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following 'false' branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:166:9: branch_false: following 'false' branch (when 'done == 0')...
curl-8.18.0/src/tool_urlglob.c:167:11: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:183:10: throw: if 'curlx_dyn_addn' throws an exception...
curl-8.18.0/src/tool_urlglob.c:183:10: danger: '<unknown>' leaks here; was allocated at [(7)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/6)
#  181|       default:
#  182|         /* copy character to set element */
#  183|->       if(curlx_dyn_addn(&glob->buf, pattern++, 1)) {
#  184|           result = CURLE_OUT_OF_MEMORY;
#  185|           goto error;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def135]
curl-8.18.0/src/tool_urlglob.c:183:10: warning[-Wanalyzer-malloc-leak]: leak of 'elem'
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following 'false' branch (when 'size <= 99999')...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following 'true' branch (when 'palloc == 0')...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:139:16: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following 'false' branch (when 'elem' is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following 'false' branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:166:9: branch_false: following 'false' branch (when 'done == 0')...
curl-8.18.0/src/tool_urlglob.c:167:11: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:183:10: throw: if 'curlx_dyn_addn' throws an exception...
curl-8.18.0/src/tool_urlglob.c:183:10: danger: 'elem' leaks here; was allocated at [(5)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/4)
#  181|       default:
#  182|         /* copy character to set element */
#  183|->       if(curlx_dyn_addn(&glob->buf, pattern++, 1)) {
#  184|           result = CURLE_OUT_OF_MEMORY;
#  185|           goto error;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def136]
curl-8.18.0/src/tool_urlglob.c:183:10: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following ‘false’ branch (when ‘size <= 99999’)...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following ‘true’ branch (when ‘palloc == 0’)...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following ‘false’ branch (when ‘elem’ is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:156:20: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:166:9: branch_false: following ‘false’ branch (when ‘done == 0’)...
curl-8.18.0/src/tool_urlglob.c:167:11: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:183:10: throw: if ‘curlx_dyn_addn’ throws an exception...
curl-8.18.0/src/tool_urlglob.c:183:10: danger: ‘<unknown>’ leaks here; was allocated at [(7)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/6)
#  181|       default:
#  182|         /* copy character to set element */
#  183|->       if(curlx_dyn_addn(&glob->buf, pattern++, 1)) {
#  184|           result = CURLE_OUT_OF_MEMORY;
#  185|           goto error;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def137]
curl-8.18.0/src/tool_urlglob.c:183:10: warning[-Wanalyzer-malloc-leak]: leak of ‘elem’
curl-8.18.0/src/tool_urlglob.c:134:9: branch_false: following ‘false’ branch (when ‘size <= 99999’)...
curl-8.18.0/src/tool_urlglob.c:137:9: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:137:9: branch_true: following ‘true’ branch (when ‘palloc == 0’)...
curl-8.18.0/src/tool_urlglob.c:139:16: branch_true: ...to here
curl-8.18.0/src/tool_urlglob.c:139:16: acquire_memory: allocated here
curl-8.18.0/src/tool_urlglob.c:151:9: branch_false: following ‘false’ branch (when ‘elem’ is non-NULL)...
curl-8.18.0/src/tool_urlglob.c:156:20: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:158:9: branch_false: following ‘false’ branch...
curl-8.18.0/src/tool_urlglob.c:162:7: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:166:9: branch_false: following ‘false’ branch (when ‘done == 0’)...
curl-8.18.0/src/tool_urlglob.c:167:11: branch_false: ...to here
curl-8.18.0/src/tool_urlglob.c:183:10: throw: if ‘curlx_dyn_addn’ throws an exception...
curl-8.18.0/src/tool_urlglob.c:183:10: danger: ‘elem’ leaks here; was allocated at [(5)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/4)
#  181|       default:
#  182|         /* copy character to set element */
#  183|->       if(curlx_dyn_addn(&glob->buf, pattern++, 1)) {
#  184|           result = CURLE_OUT_OF_MEMORY;
#  185|           goto error;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def138]
curl-8.18.0/src/var.c:360:40: warning[-Wanalyzer-malloc-leak]: leak of 'p'
curl-8.18.0/src/var.c:352:5: branch_false: following 'false' branch...
curl-8.18.0/src/var.c:355:7: branch_false: ...to here
curl-8.18.0/src/var.c:355:7: acquire_memory: allocated here
curl-8.18.0/src/var.c:356:5: branch_true: following 'true' branch (when 'p' is non-NULL)...
curl-8.18.0/src/var.c:357:12: branch_true: ...to here
curl-8.18.0/src/var.c:360:18: branch_false: following 'false' branch (when 'contalloc == 0')...
curl-8.18.0/src/var.c:360:40: branch_false: ...to here
curl-8.18.0/src/var.c:360:40: throw: if 'memdup0' throws an exception...
curl-8.18.0/src/var.c:360:40: danger: 'p' leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  358|       /* the null termination byte is already present from above */
#  359|   
#  360|->     p->content = contalloc ? content : memdup0(content, clen);
#  361|       if(p->content) {
#  362|         p->clen = clen;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def139]
curl-8.18.0/src/var.c:360:40: warning[-Wanalyzer-malloc-leak]: leak of ‘p’
curl-8.18.0/src/var.c:352:5: branch_false: following ‘false’ branch...
curl-8.18.0/src/var.c:355:7: branch_false: ...to here
curl-8.18.0/src/var.c:355:7: acquire_memory: allocated here
curl-8.18.0/src/var.c:356:5: branch_true: following ‘true’ branch (when ‘p’ is non-NULL)...
curl-8.18.0/src/var.c:357:12: branch_true: ...to here
curl-8.18.0/src/var.c:360:18: branch_false: following ‘false’ branch (when ‘contalloc == 0’)...
curl-8.18.0/src/var.c:360:40: branch_false: ...to here
curl-8.18.0/src/var.c:360:40: throw: if ‘memdup0’ throws an exception...
curl-8.18.0/src/var.c:360:40: danger: ‘p’ leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#  358|       /* the null termination byte is already present from above */
#  359|   
#  360|->     p->content = contalloc ? content : memdup0(content, clen);
#  361|       if(p->content) {
#  362|         p->clen = clen;

Scan Properties

analyzer-version-clippy1.92.0
analyzer-version-cppcheck2.19.1
analyzer-version-gcc16.0.0
analyzer-version-gcc-analyzer16.0.0
analyzer-version-shellcheck0.11.0
analyzer-version-unicontrol0.0.2
diffbase-analyzer-version-clippy1.92.0
diffbase-analyzer-version-cppcheck2.19.1
diffbase-analyzer-version-gcc16.0.0
diffbase-analyzer-version-gcc-analyzer16.0.0
diffbase-analyzer-version-shellcheck0.11.0
diffbase-analyzer-version-unicontrol0.0.2
diffbase-enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
diffbase-exit-code0
diffbase-hostip-172-16-1-129.us-west-2.compute.internal
diffbase-known-false-positives/usr/share/csmock/known-false-positives.js
diffbase-known-false-positives-rpmknown-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch
diffbase-mock-configfedora-rawhide-x86_64
diffbase-project-namecurl-8.15.0-2.fc43
diffbase-store-results-to/tmp/tmptwcrszat/curl-8.15.0-2.fc43.tar.xz
diffbase-time-created2026-01-08 15:42:17
diffbase-time-finished2026-01-08 15:47:36
diffbase-toolcsmock
diffbase-tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmptwcrszat/curl-8.15.0-2.fc43.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmptwcrszat/curl-8.15.0-2.fc43.src.rpm'
diffbase-tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-129.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-namecurl-8.18.0-1.fc44
store-results-to/tmp/tmp3em2bcj2/curl-8.18.0-1.fc44.tar.xz
time-created2026-01-08 15:48:26
time-finished2026-01-08 15:53:22
titleNewly introduced findings
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmp3em2bcj2/curl-8.18.0-1.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmp3em2bcj2/curl-8.18.0-1.fc44.src.rpm'
tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9