From: Mimi Zohar <zohar@linux.ibm.com>
To: Al Viro <viro@zeniv.linux.org.uk>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
linux-integrity@vger.kernel.org,
James Morris James Morris <jmorris@namei.org>,
Linux List Kernel Mailing <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] ima: cleanup the match_token policy code
Date: Tue, 18 Dec 2018 00:04:41 -0500 [thread overview]
Message-ID: <1545109481.4206.36.camel@linux.ibm.com> (raw)
In-Reply-To: <20181218040629.GT2217@ZenIV.linux.org.uk>
On Tue, 2018-12-18 at 04:06 +0000, Al Viro wrote:
> On Mon, Dec 17, 2018 at 10:00:07PM -0500, Mimi Zohar wrote:
>
> > Could you expand on commit 5b2ea6199614 ("selinux: switch away from
> > match_token()") patch description. All that it says is "It's not a
> > good fit, unfortunately, and the next step will make it even less so.
> > Open-code what we need here." And there's even less for the
> > equivalent Smack patch, which just says "same issue as with
> > selinux...".
>
> match_token() would require messing around with strsep() or something
> equivalent. It's not a regex; foo=%s has no idea that comma is in any
> way special, etc.
>
> As for the next commit... Killing the Cthulhu-awful mess in
> selinux_sb_eat_lsm_opts() (allocating two temproraries, concatenating
> (comma-separated) non-LSM options into one, concatenating (pipe-separated)
> dequoted LSM options into another, then splitting that another by '|'
> instances and figuring out which option each piece is, etc.)
> is a Good Thing(tm). And having to dance around the needs of
> match_token() adds extra headache, for no good reason.
Ok, so it is this particular combination of things, not the general
usage of strsep or match_token that you're objecting to. So fixing
the other match_token non-LSM instances is fine.
To prevent the enumeration and the match_table from going out of sync,
I was thinking about defining a macro to create the match_table_t:
#define __policy_tokens_match(ENUM, str) {Opt_ ## ENUM, #str},
static const match_table_t policy_tokens = {
__policy_tokens_id(__policy_tokens_match)
};
and the enumeration:
enum policy_tokens_id {
__policy_tokens_id(__policy_tokens_enumify)
};
Mimi
prev parent reply other threads:[~2018-12-18 5:05 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-18 0:14 [PATCH] ima: cleanup the match_token policy code Mimi Zohar
2018-12-18 0:36 ` Linus Torvalds
2018-12-18 1:33 ` Al Viro
2018-12-18 1:40 ` Al Viro
2018-12-18 3:00 ` Mimi Zohar
2018-12-18 4:06 ` Al Viro
2018-12-18 5:04 ` Mimi Zohar [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1545109481.4206.36.camel@linux.ibm.com \
--to=zohar@linux.ibm.com \
--cc=jmorris@namei.org \
--cc=linux-integrity@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=viro@zeniv.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).