[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0e96fbdf-6dba-48a1-8758-0d60f6bad842@schaufler-ca.com>
Date: Mon, 14 Oct 2024 14:47:32 -0700
From: Casey Schaufler <casey@...aufler-ca.com>
To: "Serge E. Hallyn" <serge@...lyn.com>
Cc: paul@...l-moore.com, linux-security-module@...r.kernel.org,
jmorris@...ei.org, keescook@...omium.org, john.johansen@...onical.com,
penguin-kernel@...ove.sakura.ne.jp, stephen.smalley.work@...il.com,
linux-kernel@...r.kernel.org, selinux@...r.kernel.org, mic@...ikod.net,
Casey Schaufler <casey@...aufler-ca.com>
Subject: Re: [PATCH v2 0/6] LSM: Replace secctx/len pairs with lsm_context
On 10/14/2024 2:29 PM, Serge E. Hallyn wrote:
> On Mon, Oct 14, 2024 at 08:14:44AM -0700, Casey Schaufler wrote:
>> LSM: Replace secctx/len pairs with lsm_context
>>
>> Several of the Linux Security Module (LSM) interfaces use a pair of
>> pointers for transmitting security context data and data length. The
>> data passed is refered to as a security context. While all existing
>> modules provide nul terminated strings, there is no requirement that
>> they to so. Hence, the length is necessary.
>>
>> Security contexts are provided by a number of interfaces. The interface
>> security_release_secctx() is used when the caller is finished with the
>> data. Each of the security modules that provide security contexts manages
>> them differently. This was safe in the past, because only one security
>> module that provides security contexts is allowed to be active. To allow
>> multiple active modules that use security contexts it is necessary to
>> identify which security module created a security context. Adding a third
>> pointer to the interfaces for the LSM identification is not appealing.
>>
>> A new structure, lsm_context, is created for use in these interfaces.
>> It includes three members: the data pointer, the data length and
>> the LSM ID of its creator. The interfaces that create contexts and
>> security_release_secctx() now use a pointer to an lsm_context instead
>> of a pointer pair.
>>
>> The changes are mostly mechanical, and some scaffolding is used within
>> the patch set to allow for smaller individual patches.
The next lines in cover letter are:
This patch set depends on the patch set LSM: Move away from secids:
https://github.com/cschaufler/lsm-stacking.git#lsmprop-6.12-rc1-v4
https://github.com/cschaufler/lsm-stacking.git#context-6.12-rc1-v2
> Hey Casey,
>
> so this set is not bisectable. Applying just patch 1 will no compile, right?
> What is your plan for getting past that? Squash some or all of them into one?
> Or are you planning a wider reorg of the patches down the line, once the
> basics of the end result are agreed upon?
You shouldn't have any trouble with the lsmprop patches in place.
>
> -serge
>
Powered by blists - more mailing lists