Error: GCC_ANALYZER_WARNING (CWE-457): [#def1] exfatprogs-1.3.1/dump/dump.c:319:21: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘name[0]’ exfatprogs-1.3.1/dump/dump.c:839:12: enter_function: entry to ‘exfat_show_dentry_set_by_path’ exfatprogs-1.3.1/dump/dump.c:846:15: call_function: calling ‘exfat_create_inode_by_path’ from ‘exfat_show_dentry_set_by_path’ # 317| len = get_name_from_path(p_path, name, sizeof(name)); # 318| p_path += len; # 319|-> if (name[0] == '\0' || len == 0) { # 320| *new = inode; # 321| return 0; Error: GCC_ANALYZER_WARNING (CWE-401): [#def2] exfatprogs-1.3.1/fsck/fsck.c:314:21: warning[-Wanalyzer-malloc-leak]: leak of ‘sect’ exfatprogs-1.3.1/fsck/fsck.c:308:16: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:309:12: branch_false: following ‘false’ branch (when ‘sect’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:312:9: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:313:21: branch_true: following ‘true’ branch (when ‘i != 11’)... exfatprogs-1.3.1/fsck/fsck.c:315:33: branch_true: ...to here exfatprogs-1.3.1/fsck/fsck.c:314:21: throw: if ‘exfat_read’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:314:21: danger: ‘sect’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) # 312| checksum = 0; # 313| for (i = 0; i < 11; i++) { # 314|-> if (exfat_read(dev_fd, sect, sect_size, # 315| bs_offset * sect_size + i * sect_size) != # 316| (ssize_t)sect_size) { Error: GCC_ANALYZER_WARNING (CWE-401): [#def3] exfatprogs-1.3.1/fsck/fsck.c:384:13: warning[-Wanalyzer-malloc-leak]: leak of ‘bs’ exfatprogs-1.3.1/fsck/fsck.c:378:14: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:379:12: branch_false: following ‘false’ branch (when ‘bs’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:385:25: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:384:13: throw: if ‘exfat_read’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:384:13: danger: ‘bs’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) # 382| } # 383| # 384|-> if (exfat_read(bd->dev_fd, bs, sizeof(*bs), # 385| bs_offset * sect_size) != (ssize_t)sizeof(*bs)) { # 386| exfat_err("failed to read a boot sector\n"); Error: GCC_ANALYZER_WARNING (CWE-401): [#def4] exfatprogs-1.3.1/fsck/fsck.c:467:21: warning[-Wanalyzer-malloc-leak]: leak of ‘sector’ exfatprogs-1.3.1/fsck/fsck.c:462:18: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:463:12: branch_false: following ‘false’ branch (when ‘sector’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:463:12: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:466:21: branch_true: following ‘true’ branch (when ‘i != 12’)... exfatprogs-1.3.1/fsck/fsck.c:468:33: branch_true: ...to here exfatprogs-1.3.1/fsck/fsck.c:467:21: throw: if ‘exfat_read’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:467:21: danger: ‘sector’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) # 465| # 466| for (i = 0; i < 12; i++) { # 467|-> if (exfat_read(bd->dev_fd, sector, sect_size, # 468| BACKUP_BOOT_SEC_IDX * sect_size + # 469| i * sect_size) != Error: GCC_ANALYZER_WARNING (CWE-401): [#def5] exfatprogs-1.3.1/fsck/fsck.c:510:13: warning[-Wanalyzer-malloc-leak]: leak of ‘boot_sect’ exfatprogs-1.3.1/fsck/fsck.c:506:21: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:507:12: branch_false: following ‘false’ branch (when ‘boot_sect’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:510:13: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:510:13: throw: if ‘exfat_read’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:510:13: danger: ‘boot_sect’ leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) # 508| return -ENOMEM; # 509| # 510|-> if (exfat_read(blkdev->dev_fd, boot_sect, # 511| sizeof(*boot_sect), 0) != (ssize_t)sizeof(*boot_sect)) { # 512| exfat_err("failed to read Main boot sector\n"); Error: GCC_ANALYZER_WARNING (CWE-401): [#def6] exfatprogs-1.3.1/fsck/fsck.c:1063:1: warning[-Wanalyzer-malloc-leak]: leak of ‘**fsck.exfat.upcase_table’ exfatprogs-1.3.1/fsck/fsck.c:1178:12: enter_function: entry to ‘read_upcase_table’ exfatprogs-1.3.1/fsck/fsck.c:1198:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1206:19: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1206:19: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1209:9: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1213:12: branch_true: following ‘true’ branch... exfatprogs-1.3.1/fsck/fsck.c:1222:25: branch_true: ...to here exfatprogs-1.3.1/fsck/fsck.c:1223:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1224:38: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1223:13: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1233:18: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1234:12: branch_false: following ‘false’ branch (when ‘upcase’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:1242:25: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1240:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1248:9: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1250:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1262:32: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1269:12: branch_false: following ‘false’ branch (when ‘valid_upcase == upcase’)... exfatprogs-1.3.1/fsck/fsck.c:1272:1: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1273:12: branch_false: following ‘false’ branch (when ‘upcase == valid_upcase’)... exfatprogs-1.3.1/fsck/fsck.c:1279:31: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1279:31: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:1280:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1285:47: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1285:9: call_function: calling ‘decompress_upcase_table’ from ‘read_upcase_table’ # 1061| } # 1062| return 0; # 1063|-> } # 1064| # 1065| static bool exfat_has_default_upcase_table(struct exfat *exfat, clus_t *clu) Error: GCC_ANALYZER_WARNING (CWE-401): [#def7] exfatprogs-1.3.1/fsck/fsck.c:1077:14: warning[-Wanalyzer-malloc-leak]: leak of ‘upcase’ exfatprogs-1.3.1/fsck/fsck.c:1073:18: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:1074:12: branch_false: following ‘false’ branch (when ‘upcase’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:1077:14: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1077:14: throw: if ‘exfat_heap_clus’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:1077:14: danger: ‘upcase’ leaks here; was allocated at [(1)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/0) # 1075| return false; # 1076| # 1077|-> if (!exfat_heap_clus(exfat, *clu)) # 1078| *clu = def_clu; # 1079| Error: GCC_ANALYZER_WARNING (CWE-401): [#def8] exfatprogs-1.3.1/fsck/fsck.c:1081:16: warning[-Wanalyzer-malloc-leak]: leak of ‘upcase’ exfatprogs-1.3.1/fsck/fsck.c:1073:18: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:1074:12: branch_false: following ‘false’ branch (when ‘upcase’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:1077:14: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1081:16: throw: if ‘pread’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:1081:16: danger: ‘upcase’ leaks here; was allocated at [(1)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/0) # 1079| # 1080| again: # 1081|-> size = pread(exfat->blk_dev->dev_fd, upcase, # 1082| sizeof(default_upcase_table), # 1083| exfat_c2o(exfat, *clu)); Error: GCC_ANALYZER_WARNING (CWE-401): [#def9] exfatprogs-1.3.1/fsck/fsck.c:1083:25: warning[-Wanalyzer-malloc-leak]: leak of ‘upcase’ exfatprogs-1.3.1/fsck/fsck.c:1073:18: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:1074:12: branch_false: following ‘false’ branch (when ‘upcase’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:1077:14: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1083:25: throw: if ‘exfat_c2o’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:1083:25: danger: ‘upcase’ leaks here; was allocated at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0) # 1081| size = pread(exfat->blk_dev->dev_fd, upcase, # 1082| sizeof(default_upcase_table), # 1083|-> exfat_c2o(exfat, *clu)); # 1084| if (size == sizeof(default_upcase_table)) { # 1085| if (!memcmp(upcase, default_upcase_table, size)) { Error: GCC_ANALYZER_WARNING (CWE-401): [#def10] exfatprogs-1.3.1/fsck/fsck.c:1240:13: warning[-Wanalyzer-malloc-leak]: leak of ‘upcase’ exfatprogs-1.3.1/fsck/fsck.c:1198:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1206:19: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1206:19: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1209:9: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1213:12: branch_true: following ‘true’ branch... exfatprogs-1.3.1/fsck/fsck.c:1222:25: branch_true: ...to here exfatprogs-1.3.1/fsck/fsck.c:1223:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1224:38: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1223:13: branch_false: following ‘false’ branch... exfatprogs-1.3.1/fsck/fsck.c:1233:18: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1233:18: acquire_memory: allocated here exfatprogs-1.3.1/fsck/fsck.c:1234:12: branch_false: following ‘false’ branch (when ‘upcase’ is non-NULL)... exfatprogs-1.3.1/fsck/fsck.c:1242:25: branch_false: ...to here exfatprogs-1.3.1/fsck/fsck.c:1240:13: throw: if ‘exfat_c2o’ throws an exception... exfatprogs-1.3.1/fsck/fsck.c:1240:13: danger: ‘upcase’ leaks here; was allocated at [(11)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/10) # 1238| } # 1239| # 1240|-> if (exfat_read(exfat->blk_dev->dev_fd, upcase, size, # 1241| exfat_c2o(exfat, # 1242| le32_to_cpu(dentry->upcase_start_clu))) != size) { Error: GCC_ANALYZER_WARNING (CWE-401): [#def11] exfatprogs-1.3.1/fsck/repair.c:189:23: warning[-Wanalyzer-malloc-leak]: leak of ‘rename’ exfatprogs-1.3.1/fsck/repair.c:171:24: acquire_memory: allocated here exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: following ‘false’ branch (when ‘rename’ is non-NULL)... exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: ...to here exfatprogs-1.3.1/fsck/repair.c:180:12: branch_true: following ‘true’ branch... exfatprogs-1.3.1/fsck/repair.c:184:23: branch_true: ...to here exfatprogs-1.3.1/fsck/repair.c:189:23: throw: if ‘exfat_utf16_enc’ throws an exception... exfatprogs-1.3.1/fsck/repair.c:189:23: danger: ‘rename’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) # 187| # 188| memset(utf16_name, 0, name_size); # 189|-> len = exfat_utf16_enc(rename, utf16_name, name_size); # 190| if (len < 0) # 191| goto out; Error: GCC_ANALYZER_WARNING (CWE-401): [#def12] exfatprogs-1.3.1/fsck/repair.c:193:23: warning[-Wanalyzer-malloc-leak]: leak of ‘rename’ exfatprogs-1.3.1/fsck/repair.c:171:24: acquire_memory: allocated here exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: following ‘false’ branch (when ‘rename’ is non-NULL)... exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: ...to here exfatprogs-1.3.1/fsck/repair.c:180:12: branch_true: following ‘true’ branch... exfatprogs-1.3.1/fsck/repair.c:184:23: branch_true: ...to here exfatprogs-1.3.1/fsck/repair.c:190:20: branch_false: following ‘false’ branch (when ‘len >= 0’)... exfatprogs-1.3.1/fsck/repair.c:193:23: branch_false: ...to here exfatprogs-1.3.1/fsck/repair.c:193:23: throw: if ‘exfat_check_name’ throws an exception... exfatprogs-1.3.1/fsck/repair.c:193:23: danger: ‘rename’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) # 191| goto out; # 192| # 193|-> err = exfat_check_name(utf16_name, len >> 1); # 194| if (err != len >> 1) { # 195| printf("filename contain invalid character(%c)\n", Error: GCC_ANALYZER_WARNING (CWE-401): [#def13] exfatprogs-1.3.1/fsck/repair.c:200:17: warning[-Wanalyzer-malloc-leak]: leak of ‘rename’ exfatprogs-1.3.1/fsck/repair.c:171:24: acquire_memory: allocated here exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: following ‘false’ branch (when ‘rename’ is non-NULL)... exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: ...to here exfatprogs-1.3.1/fsck/repair.c:180:12: branch_true: following ‘true’ branch... exfatprogs-1.3.1/fsck/repair.c:184:23: branch_true: ...to here exfatprogs-1.3.1/fsck/repair.c:190:20: branch_false: following ‘false’ branch (when ‘len >= 0’)... exfatprogs-1.3.1/fsck/repair.c:193:23: branch_false: ...to here exfatprogs-1.3.1/fsck/repair.c:200:17: throw: if ‘exfat_de_iter_flush’ throws an exception... exfatprogs-1.3.1/fsck/repair.c:200:17: danger: ‘rename’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) # 198| } # 199| # 200|-> exfat_de_iter_flush(iter); # 201| err = exfat_lookup_file(iter->exfat, iter->parent, rename, &filter); # 202| if (!err) { Error: GCC_ANALYZER_WARNING (CWE-401): [#def14] exfatprogs-1.3.1/fsck/repair.c:201:23: warning[-Wanalyzer-malloc-leak]: leak of ‘rename’ exfatprogs-1.3.1/fsck/repair.c:171:24: acquire_memory: allocated here exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: following ‘false’ branch (when ‘rename’ is non-NULL)... exfatprogs-1.3.1/fsck/repair.c:173:12: branch_false: ...to here exfatprogs-1.3.1/fsck/repair.c:180:12: branch_true: following ‘true’ branch... exfatprogs-1.3.1/fsck/repair.c:184:23: branch_true: ...to here exfatprogs-1.3.1/fsck/repair.c:190:20: branch_false: following ‘false’ branch (when ‘len >= 0’)... exfatprogs-1.3.1/fsck/repair.c:193:23: branch_false: ...to here exfatprogs-1.3.1/fsck/repair.c:201:23: throw: if ‘exfat_lookup_file’ throws an exception... exfatprogs-1.3.1/fsck/repair.c:201:23: danger: ‘rename’ leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) # 199| # 200| exfat_de_iter_flush(iter); # 201|-> err = exfat_lookup_file(iter->exfat, iter->parent, rename, &filter); # 202| if (!err) { # 203| printf("file(%s) already exists, retry to insert name\n", rename); Error: GCC_ANALYZER_WARNING (CWE-401): [#def15] exfatprogs-1.3.1/lib/exfat_fs.c:186:13: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ exfatprogs-1.3.1/lib/exfat_fs.c:126:15: enter_function: entry to ‘exfat_alloc_exfat’ exfatprogs-1.3.1/lib/exfat_fs.c:137:12: branch_false: following ‘false’ branch (when ‘exfat’ is non-NULL)... exfatprogs-1.3.1/lib/exfat_fs.c:145:9: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:154:31: acquire_memory: allocated here exfatprogs-1.3.1/lib/exfat_fs.c:155:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:160:31: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:161:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:166:30: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:167:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:173:17: call_function: inlined call to ‘exfat_get_read_size’ from ‘exfat_alloc_exfat’ exfatprogs-1.3.1/lib/exfat_fs.c:177:12: branch_false: following ‘false’ branch (when ‘root’ is NULL)... exfatprogs-1.3.1/lib/exfat_fs.c:180:23: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:180:23: call_function: calling ‘exfat_alloc_inode’ from ‘exfat_alloc_exfat’ exfatprogs-1.3.1/lib/exfat_fs.c:180:23: return_function: returning to ‘exfat_alloc_exfat’ from ‘exfat_alloc_inode’ exfatprogs-1.3.1/lib/exfat_fs.c:181:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:184:35: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:186:13: throw: if ‘exfat_root_clus_count’ throws an exception... exfatprogs-1.3.1/lib/exfat_fs.c:186:13: danger: ‘<unknown>’ leaks here; was allocated at [(4)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/3) # 184| exfat->root->first_clus = le32_to_cpu(exfat->bs->bsx.root_cluster); # 185| # 186|-> if (exfat_root_clus_count(exfat)) { # 187| exfat_err("failed to follow the cluster chain of root\n"); # 188| goto err; Error: GCC_ANALYZER_WARNING (CWE-401): [#def16] exfatprogs-1.3.1/lib/exfat_fs.c:186:13: warning[-Wanalyzer-malloc-leak]: leak of ‘exfat’ exfatprogs-1.3.1/lib/exfat_fs.c:126:15: enter_function: entry to ‘exfat_alloc_exfat’ exfatprogs-1.3.1/lib/exfat_fs.c:136:17: acquire_memory: allocated here exfatprogs-1.3.1/lib/exfat_fs.c:137:12: branch_false: following ‘false’ branch (when ‘exfat’ is non-NULL)... exfatprogs-1.3.1/lib/exfat_fs.c:145:9: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:155:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:160:31: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:161:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:166:30: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:167:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:173:17: call_function: inlined call to ‘exfat_get_read_size’ from ‘exfat_alloc_exfat’ exfatprogs-1.3.1/lib/exfat_fs.c:177:12: branch_false: following ‘false’ branch (when ‘root’ is NULL)... exfatprogs-1.3.1/lib/exfat_fs.c:180:23: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:180:23: call_function: calling ‘exfat_alloc_inode’ from ‘exfat_alloc_exfat’ exfatprogs-1.3.1/lib/exfat_fs.c:180:23: return_function: returning to ‘exfat_alloc_exfat’ from ‘exfat_alloc_inode’ exfatprogs-1.3.1/lib/exfat_fs.c:181:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:184:35: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:186:13: throw: if ‘exfat_root_clus_count’ throws an exception... exfatprogs-1.3.1/lib/exfat_fs.c:186:13: danger: ‘exfat’ leaks here; was allocated at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1) # 184| exfat->root->first_clus = le32_to_cpu(exfat->bs->bsx.root_cluster); # 185| # 186|-> if (exfat_root_clus_count(exfat)) { # 187| exfat_err("failed to follow the cluster chain of root\n"); # 188| goto err; Error: GCC_ANALYZER_WARNING (CWE-401): [#def17] exfatprogs-1.3.1/lib/exfat_fs.c:228:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ exfatprogs-1.3.1/lib/exfat_fs.c:197:21: enter_function: entry to ‘exfat_alloc_buffer’ exfatprogs-1.3.1/lib/exfat_fs.c:204:12: branch_false: following ‘false’ branch (when ‘bd’ is non-NULL)... exfatprogs-1.3.1/lib/exfat_fs.c:204:12: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:207:21: branch_true: following ‘true’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:208:32: branch_true: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:208:32: acquire_memory: allocated here exfatprogs-1.3.1/lib/exfat_fs.c:209:20: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:212:24: branch_false: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:207:21: branch_true: following ‘true’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:208:32: branch_true: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:209:20: branch_true: following ‘true’ branch... exfatprogs-1.3.1/lib/exfat_fs.c:210:25: branch_true: ...to here exfatprogs-1.3.1/lib/exfat_fs.c:216:9: call_function: calling ‘exfat_free_buffer’ from ‘exfat_alloc_buffer’ # 226| free(bd[i].buffer); # 227| } # 228|-> free(bd); # 229| } # 230| Error: GCC_ANALYZER_WARNING (CWE-401): [#def18] exfatprogs-1.3.1/lib/libexfat.c:215:16: warning[-Wanalyzer-malloc-leak]: leak of ‘bs’ exfatprogs-1.3.1/lib/libexfat.c:371:7: enter_function: entry to ‘exfat_get_root_entry_offset’ exfatprogs-1.3.1/lib/libexfat.c:378:14: acquire_memory: allocated here exfatprogs-1.3.1/lib/libexfat.c:379:12: branch_false: following ‘false’ branch (when ‘bs’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:384:18: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:384:18: call_function: inlined call to ‘exfat_read’ from ‘exfat_get_root_entry_offset’ # 213| ssize_t exfat_read(int fd, void *buf, size_t size, off_t offset) # 214| { # 215|-> return pread(fd, buf, size, offset); # 216| } # 217| Error: GCC_ANALYZER_WARNING (CWE-401): [#def19] exfatprogs-1.3.1/lib/libexfat.c:215:16: warning[-Wanalyzer-malloc-leak]: leak of ‘pbr’ exfatprogs-1.3.1/lib/libexfat.c:1032:5: enter_function: entry to ‘read_boot_sect’ exfatprogs-1.3.1/lib/libexfat.c:1038:15: acquire_memory: allocated here exfatprogs-1.3.1/lib/libexfat.c:1039:12: branch_false: following ‘false’ branch (when ‘pbr’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:1044:13: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:1044:13: call_function: inlined call to ‘exfat_read’ from ‘read_boot_sect’ # 213| ssize_t exfat_read(int fd, void *buf, size_t size, off_t offset) # 214| { # 215|-> return pread(fd, buf, size, offset); # 216| } # 217| Error: GCC_ANALYZER_WARNING (CWE-401): [#def20] exfatprogs-1.3.1/lib/libexfat.c:215:16: warning[-Wanalyzer-malloc-leak]: leak of ‘ppbr’ exfatprogs-1.3.1/lib/libexfat.c:746:5: enter_function: entry to ‘exfat_show_volume_serial’ exfatprogs-1.3.1/lib/libexfat.c:751:16: acquire_memory: allocated here exfatprogs-1.3.1/lib/libexfat.c:752:12: branch_false: following ‘false’ branch (when ‘ppbr’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:758:15: call_function: inlined call to ‘exfat_read’ from ‘exfat_show_volume_serial’ # 213| ssize_t exfat_read(int fd, void *buf, size_t size, off_t offset) # 214| { # 215|-> return pread(fd, buf, size, offset); # 216| } # 217| Error: GCC_ANALYZER_WARNING (CWE-457): [#def21] exfatprogs-1.3.1/lib/libexfat.c:512:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘&volume_label’ exfatprogs-1.3.1/lib/libexfat.c:468:5: enter_function: entry to ‘exfat_set_volume_label’ exfatprogs-1.3.1/lib/libexfat.c:482:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/libexfat.c:487:24: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:488:20: branch_false: following ‘false’ branch (when ‘pvol’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:492:17: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:495:28: call_function: calling ‘exfat_utf16_enc’ from ‘exfat_set_volume_label’ exfatprogs-1.3.1/lib/libexfat.c:495:28: return_function: returning to ‘exfat_set_volume_label’ from ‘exfat_utf16_enc’ exfatprogs-1.3.1/lib/libexfat.c:497:12: branch_false: following ‘false’ branch (when ‘volume_label_len >= 0’)... exfatprogs-1.3.1/lib/libexfat.c:503:30: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:504:15: call_function: calling ‘exfat_check_name’ from ‘exfat_set_volume_label’ exfatprogs-1.3.1/lib/libexfat.c:504:15: return_function: returning to ‘exfat_set_volume_label’ from ‘exfat_check_name’ exfatprogs-1.3.1/lib/libexfat.c:505:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/libexfat.c:512:9: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:512:9: danger: use of uninitialized value ‘&volume_label’ here # 510| } # 511| # 512|-> memcpy(pvol->vol_label, volume_label, volume_label_len); # 513| # 514| loc.parent = exfat->root; Error: GCC_ANALYZER_WARNING (CWE-401): [#def22] exfatprogs-1.3.1/lib/libexfat.c:622:9: warning[-Wanalyzer-malloc-leak]: leak of ‘dentry’ exfatprogs-1.3.1/lib/libexfat.c:634:5: enter_function: entry to ‘exfat_set_volume_guid’ exfatprogs-1.3.1/lib/libexfat.c:647:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/lib/libexfat.c:652:20: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:652:20: branch_false: following ‘false’ branch (when ‘guid’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:655:26: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:655:26: acquire_memory: allocated here exfatprogs-1.3.1/lib/libexfat.c:656:20: branch_false: following ‘false’ branch (when ‘dentry’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:660:12: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:660:12: branch_true: following ‘true’ branch (when ‘guid’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:662:23: branch_true: ...to here exfatprogs-1.3.1/lib/libexfat.c:662:23: call_function: calling ‘__exfat_set_volume_guid’ from ‘exfat_set_volume_guid’ # 620| return err; # 621| # 622|-> exfat_calc_dentry_checksum(dentry, &checksum, true); # 623| dentry->dentry.guid.checksum = cpu_to_le16(checksum); # 624| Error: GCC_ANALYZER_WARNING (CWE-401): [#def23] exfatprogs-1.3.1/lib/libexfat.c:693:15: warning[-Wanalyzer-malloc-leak]: leak of ‘buf’ exfatprogs-1.3.1/lib/libexfat.c:778:12: enter_function: entry to ‘exfat_update_boot_checksum’ exfatprogs-1.3.1/lib/libexfat.c:784:15: acquire_memory: allocated here exfatprogs-1.3.1/lib/libexfat.c:785:12: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:790:12: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:793:38: branch_true: following ‘true’ branch (when ‘sec_idx != 11’)... exfatprogs-1.3.1/lib/libexfat.c:796:50: branch_true: ...to here exfatprogs-1.3.1/lib/libexfat.c:796:23: call_function: calling ‘exfat_read_sector’ from ‘exfat_update_boot_checksum’ # 691| (unsigned long long)sec_off * bd->sector_size; # 692| # 693|-> ret = pread(bd->dev_fd, buf, bd->sector_size, offset); # 694| if (ret < 0) { # 695| exfat_err("read failed, sec_off : %u\n", sec_off); Error: GCC_ANALYZER_WARNING (CWE-401): [#def24] exfatprogs-1.3.1/lib/libexfat.c:708:17: warning[-Wanalyzer-malloc-leak]: leak of ‘checksum_buf’ exfatprogs-1.3.1/lib/libexfat.c:717:5: enter_function: entry to ‘exfat_write_checksum_sector’ exfatprogs-1.3.1/lib/libexfat.c:725:24: acquire_memory: allocated here exfatprogs-1.3.1/lib/libexfat.c:726:12: branch_false: following ‘false’ branch (when ‘checksum_buf’ is non-NULL)... exfatprogs-1.3.1/lib/libexfat.c:729:12: branch_false: ...to here exfatprogs-1.3.1/lib/libexfat.c:735:15: call_function: calling ‘exfat_write_sector’ from ‘exfat_write_checksum_sector’ # 706| (unsigned long long)sec_off * bd->sector_size; # 707| # 708|-> bytes = pwrite(bd->dev_fd, buf, bd->sector_size, offset); # 709| if (bytes != (int)bd->sector_size) { # 710| exfat_err("write failed, sec_off : %u, bytes : %d\n", sec_off, Error: GCC_ANALYZER_WARNING (CWE-131): [#def25] exfatprogs-1.3.1/lib/libexfat.c:725:24: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size # 723| unsigned int sec_idx = CHECKSUM_SEC_IDX; # 724| # 725|-> checksum_buf = malloc(bd->sector_size); # 726| if (!checksum_buf) # 727| return -1; Error: GCC_ANALYZER_WARNING (CWE-401): [#def26] exfatprogs-1.3.1/mkfs/mkfs.c:123:15: warning[-Wanalyzer-malloc-leak]: leak of ‘ppbr’ exfatprogs-1.3.1/mkfs/mkfs.c:628:5: enter_function: entry to ‘main’ exfatprogs-1.3.1/mkfs/mkfs.c:728:12: branch_false: following ‘false’ branch (when ‘version_only == 0’)... exfatprogs-1.3.1/mkfs/mkfs.c:731:19: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:735:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/mkfs/mkfs.c:739:13: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:749:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/mkfs/mkfs.c:752:15: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:752:15: call_function: calling ‘exfat_build_mkfs_info’ from ‘main’ exfatprogs-1.3.1/mkfs/mkfs.c:752:15: return_function: returning to ‘main’ from ‘exfat_build_mkfs_info’ exfatprogs-1.3.1/mkfs/mkfs.c:753:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/mkfs/mkfs.c:756:15: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:756:15: call_function: calling ‘exfat_zero_out_disk’ from ‘main’ exfatprogs-1.3.1/mkfs/mkfs.c:756:15: return_function: returning to ‘main’ from ‘exfat_zero_out_disk’ exfatprogs-1.3.1/mkfs/mkfs.c:757:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/mkfs/mkfs.c:760:15: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:760:15: call_function: calling ‘make_exfat’ from ‘main’ # 121| # 122| /* write main boot sector */ # 123|-> ret = exfat_write_sector(bd, ppbr, sec_idx); # 124| if (ret < 0) { # 125| exfat_err("main boot sector write failed\n"); Error: GCC_ANALYZER_WARNING (CWE-401): [#def27] exfatprogs-1.3.1/mkfs/mkfs.c:158:21: warning[-Wanalyzer-malloc-leak]: leak of ‘peb’ exfatprogs-1.3.1/mkfs/mkfs.c:147:15: acquire_memory: allocated here exfatprogs-1.3.1/mkfs/mkfs.c:148:12: branch_false: following ‘false’ branch (when ‘peb’ is non-NULL)... exfatprogs-1.3.1/mkfs/mkfs.c:151:12: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:157:21: branch_true: following ‘true’ branch (when ‘i != 8’)... exfatprogs-1.3.1/mkfs/mkfs.c:158:21: branch_true: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:158:21: throw: if ‘exfat_write_sector’ throws an exception... exfatprogs-1.3.1/mkfs/mkfs.c:158:21: danger: ‘peb’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) # 156| *peb_signature = cpu_to_le16(PBR_SIGNATURE); # 157| for (i = 0; i < EXBOOT_SEC_NUM; i++) { # 158|-> if (exfat_write_sector(bd, peb, sec_idx++)) { # 159| exfat_err("extended boot sector write failed\n"); # 160| ret = -1; Error: GCC_ANALYZER_WARNING (CWE-401): [#def28] exfatprogs-1.3.1/mkfs/mkfs.c:187:15: warning[-Wanalyzer-malloc-leak]: leak of ‘oem’ exfatprogs-1.3.1/mkfs/mkfs.c:180:15: acquire_memory: allocated here exfatprogs-1.3.1/mkfs/mkfs.c:181:12: branch_false: following ‘false’ branch (when ‘oem’ is non-NULL)... exfatprogs-1.3.1/mkfs/mkfs.c:184:12: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:187:15: throw: if ‘exfat_write_sector’ throws an exception... exfatprogs-1.3.1/mkfs/mkfs.c:187:15: danger: ‘oem’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) # 185| sec_idx += BACKUP_BOOT_SEC_IDX; # 186| # 187|-> ret = exfat_write_sector(bd, oem, sec_idx); # 188| if (ret) { # 189| exfat_err("oem sector write failed\n"); Error: GCC_ANALYZER_WARNING (CWE-401): [#def29] exfatprogs-1.3.1/mkfs/mkfs.c:335:18: warning[-Wanalyzer-malloc-leak]: leak of ‘bitmap’ exfatprogs-1.3.1/mkfs/mkfs.c:316:18: acquire_memory: allocated here exfatprogs-1.3.1/mkfs/mkfs.c:317:12: branch_false: following ‘false’ branch (when ‘bitmap’ is non-NULL)... exfatprogs-1.3.1/mkfs/mkfs.c:320:22: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:326:12: branch_false: following ‘false’ branch (when ‘rem_bits == 0’)... exfatprogs-1.3.1/mkfs/mkfs.c:331:27: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:331:12: branch_false: following ‘false’ branch... exfatprogs-1.3.1/mkfs/mkfs.c:335:68: branch_false: ...to here exfatprogs-1.3.1/mkfs/mkfs.c:335:18: throw: if ‘pwrite’ throws an exception... exfatprogs-1.3.1/mkfs/mkfs.c:335:18: danger: ‘bitmap’ leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) # 333| # 334| # 335|-> nbytes = pwrite(bd->dev_fd, bitmap, finfo.bitmap_byte_len, finfo.bitmap_byte_off); # 336| if (nbytes != finfo.bitmap_byte_len) { # 337| exfat_err("write failed, nbytes : %d, bitmap_len : %d\n",
| 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-41.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 | exfatprogs-1.3.1-1.fc44 |
| store-results-to | /tmp/tmp4po4bjvi/exfatprogs-1.3.1-1.fc44.tar.xz |
| time-created | 2026-01-08 16:00:24 |
| time-finished | 2026-01-08 16:01:45 |
| tool | csmock |
| tool-args | '/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmp4po4bjvi/exfatprogs-1.3.1-1.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmp4po4bjvi/exfatprogs-1.3.1-1.fc44.src.rpm' |
| tool-version | csmock-3.8.3.20251215.161544.g62de9a5-1.el9 |