[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3efc41d3ba70d253e30187485459a724a36bb5a9.camel@linux.intel.com>
Date: Thu, 14 May 2020 14:00:14 +0300
From: Jarkko Sakkinen <jarkko.sakkinen@...ux.intel.com>
To: David Howells <dhowells@...hat.com>, stephen.smalley.work@...il.com
Cc: Paul Moore <paul@...l-moore.com>,
Casey Schaufler <casey@...aufler-ca.com>,
keyrings@...r.kernel.org, selinux@...r.kernel.org,
linux-security-module@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] keys: Make the KEY_NEED_* perms an enum rather than a
mask
On Tue, 2020-05-12 at 23:33 +0100, David Howells wrote:
> Since the meaning of combining the KEY_NEED_* constants is undefined, make
> it so that you can't do that by turning them into an enum.
>
> The enum is also given some extra values to represent special
> circumstances, such as:
>
> (1) The '0' value is reserved and causes a warning to trap the parameter
> being unset.
>
> (2) The key is to be unlinked and we require no permissions on it, only
> the keyring, (this replaces the KEY_LOOKUP_FOR_UNLINK flag).
>
> (3) An override due to CAP_SYS_ADMIN.
>
> (4) An override due to an instantiation token being present.
>
> (5) The permissions check is being deferred to later key_permission()
> calls.
>
> The extra values give the opportunity for LSMs to audit these situations.
>
> Signed-off-by: David Howells <dhowells@...hat.com>
> cc: Jarkko Sakkinen <jarkko.sakkinen@...ux.intel.com>
> cc: Paul Moore <paul@...l-moore.com>
> cc: Stephen Smalley <stephen.smalley.work@...il.com>
> cc: Casey Schaufler <casey@...aufler-ca.com>
> cc: keyrings@...r.kernel.org
> cc: selinux@...r.kernel.org
So extensive comments already from Stephen and Paul that I'll just
wait for the next version (agree with the idea though).
/Jarkko
Powered by blists - more mailing lists