mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-02 11:55:33 -05:00
Merge tag 'selinux-pr-20220616' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux
Pull selinux fix from Paul Moore: "A single SELinux patch to fix memory leaks when mounting filesystems with SELinux mount options" * tag 'selinux-pr-20220616' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/selinux: selinux: free contexts previously transferred in selinux_add_opt()
This commit is contained in:
@@ -2600,8 +2600,9 @@ static int selinux_sb_eat_lsm_opts(char *options, void **mnt_opts)
|
||||
}
|
||||
}
|
||||
rc = selinux_add_opt(token, arg, mnt_opts);
|
||||
kfree(arg);
|
||||
arg = NULL;
|
||||
if (unlikely(rc)) {
|
||||
kfree(arg);
|
||||
goto free_opt;
|
||||
}
|
||||
} else {
|
||||
@@ -2792,17 +2793,13 @@ static int selinux_fs_context_parse_param(struct fs_context *fc,
|
||||
struct fs_parameter *param)
|
||||
{
|
||||
struct fs_parse_result result;
|
||||
int opt, rc;
|
||||
int opt;
|
||||
|
||||
opt = fs_parse(fc, selinux_fs_parameters, param, &result);
|
||||
if (opt < 0)
|
||||
return opt;
|
||||
|
||||
rc = selinux_add_opt(opt, param->string, &fc->security);
|
||||
if (!rc)
|
||||
param->string = NULL;
|
||||
|
||||
return rc;
|
||||
return selinux_add_opt(opt, param->string, &fc->security);
|
||||
}
|
||||
|
||||
/* inode security operations */
|
||||
|
||||
Reference in New Issue
Block a user