Skip to content

Commit

Permalink
checkpolicy: resolve dismod memory leaks
Browse files Browse the repository at this point in the history
Example leak:

    Indirect leak of 4 byte(s) in 1 object(s) allocated from:
        #0 0x49bacd in __interceptor_malloc (./checkpolicy/test/dismod+0x49bacd)
        SELinuxProject#1 0x58ae54 in add_i_to_a ./libsepol/src/util.c:55:21
        SELinuxProject#2 0x53ea8e in symtab_insert ./libsepol/src/policydb.c:1729:6
        SELinuxProject#3 0x536252 in roles_init ./libsepol/src/policydb.c:772:7
        SELinuxProject#4 0x536252 in policydb_init ./libsepol/src/policydb.c:892:7
        SELinuxProject#5 0x562ff1 in sepol_policydb_create ./libsepol/src/policydb_public.c:69:6
        SELinuxProject#6 0x521a7c in module_package_init ./libsepol/src/module.c:96:6
        SELinuxProject#7 0x521a7c in sepol_module_package_create ./libsepol/src/module.c:126:7
        SELinuxProject#8 0x4cfb80 in read_policy ./checkpolicy/test/dismod.c:750:7
        SELinuxProject#9 0x4cda10 in main ./checkpolicy/test/dismod.c:878:6
        SELinuxProject#10 0x7f8538d01e49 in __libc_start_main csu/../csu/libc-start.c:314:16

Signed-off-by: Christian Göttsche <cgzones@googlemail.com>
  • Loading branch information
cgzones committed Sep 8, 2021
1 parent 808200f commit 698297a
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion checkpolicy/test/dismod.c
Original file line number Diff line number Diff line change
Expand Up @@ -751,12 +751,15 @@ static int read_policy(char *filename, policydb_t * policy)
fprintf(stderr, "%s: Out of memory!\n", __FUNCTION__);
exit(1);
}
policydb_destroy((policydb_t *) package->policy);
free(package->policy);
package->policy = (sepol_policydb_t *) policy;
package->file_contexts = NULL;
retval =
sepol_module_package_read(package,
(sepol_policy_file_t *) & f, 1);
free(package->file_contexts);
package->policy = NULL;
sepol_module_package_free(package);
} else {
if (policydb_init(policy)) {
fprintf(stderr, "%s: Out of memory!\n", __FUNCTION__);
Expand Down

0 comments on commit 698297a

Please sign in to comment.