selinux.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
To: John Johansen <john.johansen@canonical.com>,
	Casey Schaufler <casey@schaufler-ca.com>,
	Paul Moore <paul@paul-moore.com>
Cc: LSM List <linux-security-module@vger.kernel.org>,
	James Morris <jmorris@namei.org>,
	linux-audit@redhat.com, Mimi Zohar <zohar@linux.ibm.com>,
	keescook@chromium.org, SElinux list <selinux@vger.kernel.org>
Subject: Re: LSM stacking in next for 6.1?
Date: Sun, 30 Oct 2022 23:02:52 +0900	[thread overview]
Message-ID: <2c48a481-391f-85c7-be4f-13bbc1553aac@I-love.SAKURA.ne.jp> (raw)
In-Reply-To: <aa5424f3-05a6-530b-bf5f-19e5421f8f3f@canonical.com>

On 2022/10/30 16:23, John Johansen wrote:
>> This reasoning is more stronger than "we don't care about out-of-tree code"
>> reasoning.
>>
> Look many developers really just don't care about out of tree code, and others
> well I won't say they don't care but its impossible task to monitor and think
> about how the broad swath of different out of tree code bits could be affected
> by kernel changes. So the only practical thing to do is make changes based on
> what is in tree and let out of tree projects deal with making the adjustments
> needed to adapt to the changing kernel.

I don't care that out of tree projects have to deal with the burden of making
the adjustments needed to adapt to the changing kernel. But I do care that
out of tree projects are allowed to make the adjustments needed to adapt to
the changing kernel.

Think about the PCI ID Repository ( https://pci-ids.ucw.cz ) as an example.

A PCI ID value can be assigned to a hardware device, regardless of whether
a device driver for Linux kernel is available in the upstream kernel.

Casey's patchset is trying to provide LSM ID Repository for userspace programs.
But an LSM ID value cannot be assigned to that LSM unless that module is
available in the upstream kernel. This means that, developers are not allowed
to develop a new LSM module even with the intention to become available in the
upstream kernel, for there always is a risk of LSM ID collision which the LSM ID
Repository should have avoided from the beginning. Also, this means that, unlike
PCI devices, users are not allowed to use out-of-tree LSM modules which have to
remain out-of-tree due to proposed-but-not-accepted by the upstream kernel.
This is a serious bug; is LSM a proprietary/closed code where modification is
impossible due to an End-User License Agreement?


You have only three choices:

  (1) allow assigning LSM ID integer value to all LSM modules (regardless of
      whether that module was merged into upstream kernel)

  (2) use module name string value as LSM ID

  (3) dynamically assign LSM ID integer value when an LSM module is registered

There never is fourth choice:

  (4) assigning LSM ID integer value to only LSM modules which were merged
      into upstream kernel

The fourth choice is complete lockout of out of tree projects.


  reply	other threads:[~2022-10-30 14:03 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <791e13b5-bebd-12fc-53de-e9a86df23836.ref@schaufler-ca.com>
2022-08-03  0:01 ` LSM stacking in next for 6.1? Casey Schaufler
2022-08-03  0:56   ` Paul Moore
2022-08-03  1:56     ` John Johansen
2022-08-03  2:15     ` Casey Schaufler
2022-08-03  2:33       ` Paul Moore
2022-08-03  2:34     ` Steve Grubb
2022-08-03  2:40       ` Paul Moore
2022-09-02 21:30     ` Paul Moore
2022-09-02 23:14       ` Casey Schaufler
2022-09-02 23:57         ` Casey Schaufler
2022-09-06 23:24         ` Paul Moore
2022-09-07  0:10           ` John Johansen
2022-09-07  0:39             ` Casey Schaufler
2022-09-07  0:50               ` John Johansen
2022-09-07 14:41             ` Paul Moore
2022-09-07 16:41               ` Casey Schaufler
2022-09-07 17:23                 ` John Johansen
2022-09-07 22:57                   ` Paul Moore
2022-09-07 23:27                 ` Paul Moore
2022-09-07 23:53                   ` Casey Schaufler
2022-09-08  0:19                     ` John Johansen
2022-09-08  3:57                     ` Paul Moore
2022-09-08 18:05                       ` Casey Schaufler
2022-09-08 18:35                         ` John Johansen
2022-09-08 19:32                         ` Paul Moore
2022-09-08 22:56                           ` Casey Schaufler
2022-09-10  4:17                             ` Tetsuo Handa
2022-09-12 17:37                               ` Casey Schaufler
2022-09-13 10:47                                 ` Tetsuo Handa
2022-09-13 14:45                                   ` Casey Schaufler
2022-09-14 13:57                                     ` Tetsuo Handa
2022-09-14 15:50                                       ` Casey Schaufler
2022-09-15 14:27                                         ` Tetsuo Handa
2022-09-15 14:54                                           ` John Johansen
2022-09-15  7:45                                       ` John Johansen
2022-09-15 14:27                                         ` Tetsuo Handa
2022-10-25  9:48                                       ` Tetsuo Handa
2022-10-25 10:26                                         ` John Johansen
2022-10-25 11:20                                           ` Tetsuo Handa
2022-10-25 14:12                                             ` Casey Schaufler
2022-10-25 22:12                                               ` Tetsuo Handa
2022-10-25 22:41                                                 ` Casey Schaufler
2022-10-26 10:19                                                   ` Tetsuo Handa
2022-10-26 15:30                                                     ` Casey Schaufler
2022-10-28 10:14                                                     ` John Johansen
2022-10-30  4:03                                                       ` Tetsuo Handa
2022-10-30  7:23                                                         ` John Johansen
2022-10-30 14:02                                                           ` Tetsuo Handa [this message]
2022-10-30 16:37                                                             ` Kees Cook
2022-10-30 20:56                                                               ` Casey Schaufler
2022-10-31 10:26                                                               ` Tetsuo Handa
2022-10-31 15:47                                                                 ` Casey Schaufler
2022-10-26 20:11                                             ` Paul Moore
2022-10-27  0:02                                               ` Tetsuo Handa
2022-10-28  9:50                                                 ` Paul Moore
2022-10-28 13:58                                                   ` Tetsuo Handa
2022-10-28 17:40                                                     ` Kees Cook
2022-10-29  9:33                                                       ` Tetsuo Handa
2022-09-14 13:42                             ` Paul Moore
2022-09-27 20:54                               ` Casey Schaufler
2022-09-27 22:37                                 ` Paul Moore
2022-09-07  0:31           ` Casey Schaufler
2022-09-07 15:13             ` Paul Moore
2022-09-07 17:08               ` Casey Schaufler
2022-09-07 23:04                 ` Paul Moore
2022-09-07 23:26                   ` Casey Schaufler
2022-09-08 15:18   ` Tetsuo Handa
2022-09-08 16:00     ` Casey Schaufler
2022-09-08 18:52     ` Paul Moore
2022-09-09 11:32       ` Tetsuo Handa
2022-09-14 13:56         ` Paul Moore
2022-09-15 14:27           ` Tetsuo Handa
2022-09-15 15:50             ` Casey Schaufler
2022-09-16 13:34               ` Tetsuo Handa

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=2c48a481-391f-85c7-be4f-13bbc1553aac@I-love.SAKURA.ne.jp \
    --to=penguin-kernel@i-love.sakura.ne.jp \
    --cc=casey@schaufler-ca.com \
    --cc=jmorris@namei.org \
    --cc=john.johansen@canonical.com \
    --cc=keescook@chromium.org \
    --cc=linux-audit@redhat.com \
    --cc=linux-security-module@vger.kernel.org \
    --cc=paul@paul-moore.com \
    --cc=selinux@vger.kernel.org \
    --cc=zohar@linux.ibm.com \
    /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).