Commit 6cd9d4b9 authored by Paul Moore's avatar Paul Moore
Browse files

selinux: minor tweaks to selinux_add_opt()



Two minor edits to selinux_add_opt(): use "sizeof(*ptr)" instead of
"sizeof(type)" in the kzalloc() call, and rename the "Einval" jump
target to "err" for the sake of consistency.

Signed-off-by: default avatarPaul Moore <paul@paul-moore.com>
parent 2e08df3c
Loading
Loading
Loading
Loading
+10 −8
Original line number Diff line number Diff line
@@ -972,14 +972,14 @@ static int selinux_add_opt(int token, const char *s, void **mnt_opts)
	struct selinux_mnt_opts *opts = *mnt_opts;
	bool is_alloc_opts = false;

	if (token == Opt_seclabel)	/* eaten and completely ignored */
	if (token == Opt_seclabel)
		/* eaten and completely ignored */
		return 0;

	if (!s)
		return -ENOMEM;

	if (!opts) {
		opts = kzalloc(sizeof(struct selinux_mnt_opts), GFP_KERNEL);
		opts = kzalloc(sizeof(*opts), GFP_KERNEL);
		if (!opts)
			return -ENOMEM;
		*mnt_opts = opts;
@@ -989,27 +989,29 @@ static int selinux_add_opt(int token, const char *s, void **mnt_opts)
	switch (token) {
	case Opt_context:
		if (opts->context || opts->defcontext)
			goto Einval;
			goto err;
		opts->context = s;
		break;
	case Opt_fscontext:
		if (opts->fscontext)
			goto Einval;
			goto err;
		opts->fscontext = s;
		break;
	case Opt_rootcontext:
		if (opts->rootcontext)
			goto Einval;
			goto err;
		opts->rootcontext = s;
		break;
	case Opt_defcontext:
		if (opts->context || opts->defcontext)
			goto Einval;
			goto err;
		opts->defcontext = s;
		break;
	}

	return 0;
Einval:

err:
	if (is_alloc_opts) {
		kfree(opts);
		*mnt_opts = NULL;