Error: GCC_ANALYZER_WARNING (CWE-476): [#def1] libffi-3.5.2/src/dlmalloc.c:3681:15: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libffi-3.5.2/src/dlmalloc.c:4266:6: enter_function: entry to 'dlfree' libffi-3.5.2/src/dlmalloc.c:4273:6: branch_true: following 'true' branch (when 'mem' is non-NULL)... libffi-3.5.2/src/dlmalloc.c:4274:15: branch_true: ...to here libffi-3.5.2/src/dlmalloc.c:4284:10: branch_true: following 'true' branch... libffi-3.5.2/src/dlmalloc.c:4286:11: branch_true: ...to here libffi-3.5.2/src/dlmalloc.c:4286:10: branch_true: following 'true' branch... libffi-3.5.2/src/dlmalloc.c:4317:12: branch_true: following 'true' branch... libffi-3.5.2/src/dlmalloc.c:4318:14: branch_true: following 'true' branch... libffi-3.5.2/src/dlmalloc.c:4319:25: branch_true: ...to here libffi-3.5.2/src/dlmalloc.c:4319:16: branch_true: following 'true' branch... libffi-3.5.2/src/dlmalloc.c:4320:30: branch_true: ...to here libffi-3.5.2/src/dlmalloc.c:4323:18: branch_false: following 'false' branch... libffi-3.5.2/src/dlmalloc.c:4327:19: branch_false: ...to here libffi-3.5.2/src/dlmalloc.c:4327:18: branch_true: following 'true' branch... libffi-3.5.2/src/dlmalloc.c:4328:17: branch_true: ...to here libffi-3.5.2/src/dlmalloc.c:4328:17: call_function: calling 'sys_trim' from 'dlfree' # 3679| if (is_mmapped_segment(sp)) { # 3680| if (HAVE_MMAP && # 3681|-> sp->size >= extra && # 3682| !has_segment_link(m, sp)) { /* can't shrink if pinned */ # 3683| size_t newsize = sp->size - extra; Error: COMPILER_WARNING (CWE-477): [#def2] libffi-3.5.2/src/java_raw_api.c: scope_hint: In function 'ffi_java_raw_call' libffi-3.5.2/src/java_raw_api.c:317:3: warning[-Wdeprecated-declarations]: 'ffi_java_raw_to_ptrarray' is deprecated # 317 | ffi_java_raw_to_ptrarray (cif, raw, avalue); # | ^~~~~~~~~~~~~~~~~~~~~~~~ libffi-3.5.2/src/java_raw_api.c:76:1: note: declared here # 76 | ffi_java_raw_to_ptrarray (ffi_cif *cif, ffi_java_raw *raw, void **args) # | ^~~~~~~~~~~~~~~~~~~~~~~~ # 315| { # 316| void **avalue = (void**) alloca (cif->nargs * sizeof (void*)); # 317|-> ffi_java_raw_to_ptrarray (cif, raw, avalue); # 318| ffi_call (cif, fn, rvalue, avalue); # 319| ffi_java_rvalue_to_raw (cif, rvalue); Error: COMPILER_WARNING (CWE-477): [#def3] libffi-3.5.2/src/java_raw_api.c:317:3: warning[-Wdeprecated-declarations]: 'ffi_java_raw_to_ptrarray' is deprecated # 315| { # 316| void **avalue = (void**) alloca (cif->nargs * sizeof (void*)); # 317|-> ffi_java_raw_to_ptrarray (cif, raw, avalue); # 318| ffi_call (cif, fn, rvalue, avalue); # 319| ffi_java_rvalue_to_raw (cif, rvalue); Error: COMPILER_WARNING (CWE-477): [#def4] libffi-3.5.2/src/java_raw_api.c: scope_hint: In function 'ffi_java_translate_args' libffi-3.5.2/src/java_raw_api.c:328:3: warning[-Wdeprecated-declarations]: 'ffi_java_raw_size' is deprecated # 328 | ffi_java_raw *raw = (ffi_java_raw*)alloca (ffi_java_raw_size (cif)); # | ^~~~~~~~~~~~ libffi-3.5.2/src/java_raw_api.c:45:1: note: declared here # 45 | ffi_java_raw_size (ffi_cif *cif) # | ^~~~~~~~~~~~~~~~~ # 326| void **avalue, void *user_data) # 327| { # 328|-> ffi_java_raw *raw = (ffi_java_raw*)alloca (ffi_java_raw_size (cif)); # 329| ffi_raw_closure *cl = (ffi_raw_closure*)user_data; # 330| Error: COMPILER_WARNING (CWE-477): [#def5] libffi-3.5.2/src/java_raw_api.c:328:3: warning[-Wdeprecated-declarations]: 'ffi_java_raw_size' is deprecated # 326| void **avalue, void *user_data) # 327| { # 328|-> ffi_java_raw *raw = (ffi_java_raw*)alloca (ffi_java_raw_size (cif)); # 329| ffi_raw_closure *cl = (ffi_raw_closure*)user_data; # 330| Error: COMPILER_WARNING (CWE-477): [#def6] libffi-3.5.2/src/java_raw_api.c:331:3: warning[-Wdeprecated-declarations]: 'ffi_java_ptrarray_to_raw' is deprecated # 331 | ffi_java_ptrarray_to_raw (cif, avalue, raw); # | ^~~~~~~~~~~~~~~~~~~~~~~~ libffi-3.5.2/src/java_raw_api.c:157:1: note: declared here # 157 | ffi_java_ptrarray_to_raw (ffi_cif *cif, void **args, ffi_java_raw *raw) # | ^~~~~~~~~~~~~~~~~~~~~~~~ # 329| ffi_raw_closure *cl = (ffi_raw_closure*)user_data; # 330| # 331|-> ffi_java_ptrarray_to_raw (cif, avalue, raw); # 332| (*cl->fun) (cif, rvalue, (ffi_raw*)raw, cl->user_data); # 333| ffi_java_raw_to_rvalue (cif, rvalue); Error: COMPILER_WARNING (CWE-477): [#def7] libffi-3.5.2/src/java_raw_api.c:331:3: warning[-Wdeprecated-declarations]: 'ffi_java_ptrarray_to_raw' is deprecated # 329| ffi_raw_closure *cl = (ffi_raw_closure*)user_data; # 330| # 331|-> ffi_java_ptrarray_to_raw (cif, avalue, raw); # 332| (*cl->fun) (cif, rvalue, (ffi_raw*)raw, cl->user_data); # 333| ffi_java_raw_to_rvalue (cif, rvalue); Error: COMPILER_WARNING (CWE-477): [#def8] libffi-3.5.2/src/java_raw_api.c: scope_hint: In function 'ffi_prep_java_raw_closure' libffi-3.5.2/src/java_raw_api.c:369:3: warning[-Wdeprecated-declarations]: 'ffi_prep_java_raw_closure_loc' is deprecated # 369 | return ffi_prep_java_raw_closure_loc (cl, cif, fun, user_data, cl); # | ^~~~~~ libffi-3.5.2/src/java_raw_api.c:337:1: note: declared here # 337 | ffi_prep_java_raw_closure_loc (ffi_java_raw_closure* cl, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 367| void *user_data) # 368| { # 369|-> return ffi_prep_java_raw_closure_loc (cl, cif, fun, user_data, cl); # 370| } # 371| Error: COMPILER_WARNING (CWE-477): [#def9] libffi-3.5.2/src/java_raw_api.c:369:3: warning[-Wdeprecated-declarations]: 'ffi_prep_java_raw_closure_loc' is deprecated # 367| void *user_data) # 368| { # 369|-> return ffi_prep_java_raw_closure_loc (cl, cif, fun, user_data, cl); # 370| } # 371| Error: GCC_ANALYZER_WARNING (CWE-401): [#def10] libffi-3.5.2/src/tramp.c:508:1: warning[-Wanalyzer-malloc-leak]: leak of 'table' libffi-3.5.2/src/tramp.c:452:11: acquire_memory: allocated here libffi-3.5.2/src/tramp.c:453:6: branch_false: following 'false' branch (when 'table' is non-NULL)... libffi-3.5.2/src/tramp.c:459:43: branch_false: ...to here libffi-3.5.2/src/tramp.c:460:6: branch_false: following 'false' branch (when 'tramp_array' is non-NULL)... libffi-3.5.2/src/tramp.c:466:8: branch_false: ...to here libffi-3.5.2/src/tramp.c:466:6: branch_false: following 'false' branch... libffi-3.5.2/src/tramp.c:477:3: branch_false: ...to here libffi-3.5.2/src/tramp.c:488:15: branch_false: following 'false' branch... libffi-3.5.2/src/tramp.c:488:15: branch_false: ...to here libffi-3.5.2/src/tramp.c:508:1: danger: 'table' leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) # 506| free (table); # 507| return 0; # 508|-> } # 509| # 510| /* Error: GCC_ANALYZER_WARNING (CWE-401): [#def11] libffi-3.5.2/src/tramp.c:508:1: warning[-Wanalyzer-malloc-leak]: leak of 'tramp_array' libffi-3.5.2/src/tramp.c:453:6: branch_false: following 'false' branch (when 'table' is non-NULL)... libffi-3.5.2/src/tramp.c:459:43: branch_false: ...to here libffi-3.5.2/src/tramp.c:459:17: acquire_memory: allocated here libffi-3.5.2/src/tramp.c:460:6: branch_false: following 'false' branch (when 'tramp_array' is non-NULL)... libffi-3.5.2/src/tramp.c:466:8: branch_false: ...to here libffi-3.5.2/src/tramp.c:466:6: branch_false: following 'false' branch... libffi-3.5.2/src/tramp.c:477:3: branch_false: ...to here libffi-3.5.2/src/tramp.c:488:15: branch_false: following 'false' branch... libffi-3.5.2/src/tramp.c:488:15: branch_false: ...to here libffi-3.5.2/src/tramp.c:508:1: danger: 'tramp_array' leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2) # 506| free (table); # 507| return 0; # 508|-> } # 509| # 510| /* Error: GCC_ANALYZER_WARNING (CWE-416): [#def12] libffi-3.5.2/src/tramp.c:560:17: warning[-Wanalyzer-use-after-free]: use after 'free' of 'table' libffi-3.5.2/src/tramp.c:434:1: enter_function: entry to 'tramp_table_alloc' libffi-3.5.2/src/tramp.c:452:11: acquire_memory: allocated here libffi-3.5.2/src/tramp.c:453:6: branch_false: following 'false' branch (when 'table' is non-NULL)... libffi-3.5.2/src/tramp.c:459:43: branch_false: ...to here libffi-3.5.2/src/tramp.c:460:6: branch_false: following 'false' branch (when 'tramp_array' is non-NULL)... libffi-3.5.2/src/tramp.c:466:8: branch_false: ...to here libffi-3.5.2/src/tramp.c:466:6: branch_false: following 'false' branch... libffi-3.5.2/src/tramp.c:477:3: branch_false: ...to here libffi-3.5.2/src/tramp.c:488:15: branch_true: following 'true' branch... libffi-3.5.2/src/tramp.c:490:27: branch_true: ...to here libffi-3.5.2/src/tramp.c:494:7: call_function: calling 'tramp_add' from 'tramp_table_alloc' libffi-3.5.2/src/tramp.c:494:7: return_function: returning to 'tramp_table_alloc' from 'tramp_add' libffi-3.5.2/src/tramp.c:488:15: branch_true: following 'true' branch... libffi-3.5.2/src/tramp.c:490:27: branch_true: ...to here libffi-3.5.2/src/tramp.c:494:7: call_function: calling 'tramp_add' from 'tramp_table_alloc' # 558| struct tramp_table *table = tramp->table; # 559| # 560|-> tramp->next = table->free; # 561| tramp->prev = NULL; # 562| if (table->free != NULL)
| analyzer-version-clippy | 1.92.0 |
| analyzer-version-cppcheck | 2.19.1 |
| analyzer-version-gcc | 16.0.0 |
| analyzer-version-gcc-analyzer | 16.0.0 |
| analyzer-version-shellcheck | 0.11.0 |
| analyzer-version-unicontrol | 0.0.2 |
| enabled-plugins | clippy, cppcheck, gcc, shellcheck, unicontrol |
| exit-code | 0 |
| host | ip-172-16-1-84.us-west-2.compute.internal |
| known-false-positives | /usr/share/csmock/known-false-positives.js |
| known-false-positives-rpm | known-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch |
| mock-config | fedora-rawhide-x86_64 |
| project-name | libffi-3.5.2-1.fc44 |
| store-results-to | /tmp/tmpzih3sigz/libffi-3.5.2-1.fc44.tar.xz |
| time-created | 2026-01-08 18:42:39 |
| time-finished | 2026-01-08 18:43:53 |
| tool | csmock |
| tool-args | '/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmpzih3sigz/libffi-3.5.2-1.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpzih3sigz/libffi-3.5.2-1.fc44.src.rpm' |
| tool-version | csmock-3.8.3.20251215.161544.g62de9a5-1.el9 |