Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 550ad8ef authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull selinux fix from James Morris:
 "Fix for a double free bug in SELinux"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
  selinux: fix double free in selinux_parse_opts_str()
parents a090bd4f 023f108d
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -1106,10 +1106,8 @@ static int selinux_parse_opts_str(char *options,

	opts->mnt_opts_flags = kcalloc(NUM_SEL_MNT_OPTS, sizeof(int),
				       GFP_KERNEL);
	if (!opts->mnt_opts_flags) {
		kfree(opts->mnt_opts);
	if (!opts->mnt_opts_flags)
		goto out_err;
	}

	if (fscontext) {
		opts->mnt_opts[num_mnt_opts] = fscontext;
@@ -1132,6 +1130,7 @@ static int selinux_parse_opts_str(char *options,
	return 0;

out_err:
	security_free_mnt_opts(opts);
	kfree(context);
	kfree(defcontext);
	kfree(fscontext);