From: "Günther Noack" <gnoack3000@gmail.com>
To: Alejandro Colomar <alx@kernel.org>
Cc: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Jared Finder" <jared@finder.org>, "Jann Horn" <jannh@google.com>,
"Hanno Böck" <hanno@hboeck.de>,
"Jiri Slaby" <jirislaby@kernel.org>,
"Kees Cook" <kees@kernel.org>,
linux-man@vger.kernel.org
Subject: Re: [PATCH] man/man2const/TIOCLINUX.2const: Document CAP_SYS_ADMIN requirement for TIOCL_SETSEL modes
Date: Fri, 2 May 2025 12:16:46 +0200 [thread overview]
Message-ID: <20250502.650a645dd94d@gnoack.org> (raw)
In-Reply-To: <v3665whb45ai5elelq456u7g5ihpikfhziinrbdyjvyg2kpg4w@ptcxy4u75n2o>
Hello Alejandro!
On Thu, May 01, 2025 at 10:19:01PM +0200, Alejandro Colomar wrote:
> On Thu, May 01, 2025 at 09:33:52PM +0200, Günther Noack wrote:
> > > > @@ -118,11 +130,11 @@ If mouse reporting is not enabled for the terminal,
> > > > this operation yields an
> > > > .B EINVAL
> > > > error.
> > > > -.RE
> > > > .IP
> > > > -Since Linux 6.7, using this subcode requires the
> > > > +Since Linux 6.12.26, using this selection mode requires the
> > > > .B CAP_SYS_ADMIN
> > > > capability.
> > >
> > > I'm not sure I understand this part. Was it required since 6.7 and now
> > > it's only since 6.12.26? How can that be?
> >
> > Legitimate question. For the TIOCL_SELMOUSEREPORT selection mode, the
> > requirement was briefly lifted (but in a confusing way due to an
> > implementation mistake).
> >
> > The way that the diff came out is slightly misleading. Note that the
> > .RE "moved", which really means that this text is now talking about
> > the TIOCL_SELMOUSEREPORT selection mode instead of the TIOCL_SETSEL
> > subcode - so we are now documenting the more fine-grained selection
> > modes instead of the more coarse grained TIOCL_SETSEL subcode.
> >
> > For the selection modes, we had three cases:
> >
> > 1. The selection modes which continue to require CAP_SYS_ADMIN.
> > For these this is true before and after these kernel patches,
> > so this is "required since Linux 6.7", as before.
> >
> > 2. The selection modes which do not require CAP_SYS_ADMIN any more.
> > For these, I dropped the remark.
> >
> > 3. The TIOCL_SELMOUSEREPORT selection mode. For this one, we had an
> > unfortunate back-and-forth for when CAP_SYS_ADMIN is required:
> >
> > - It used to not be required.
> > - It was required in 6.7+
> > - After 2f83e38a095f, which aimed to loosen the requirement, it
> > was *sometimes required* (unintentional and really too confusing
> > to describe in a man page, IMHO)
> > - After ee6a44da3c87 (coming up in Linux 6.12.26), it requires
> > CAP_SYS_ADMIN again.
>
> Hmmmm.
>
> > So for TIOCL_SELMOUSEREPORT, I am now saying it is required since
> > 6.12.26 (an upcoming stable kernel).
>
> Makes sense. However, 6.12.26 is a branch, and we would need to clarify
> what's the state in 6.{13,14,15}, don't we?
Both patches are applied to all up-to-date versions of stable kernels.
6.7 to 6.11 (EOL) have none of the two patches:
CAP_SYS_ADMIN is enforced broadly
6.12.26 (longterm) has both
6.13.12 (EOL) has only the first patch
6.14.5 (stable) has both
6.15 (not released yet) will have both
> > But we can as well change it to
> > say "since 6.7" if that sounds better to you. Maybe that would be
> > simpler and err on the safe side for users of the API. (To be fair,
> > these interfaces are anyway only used by gpm and consolation. I am
> > mostly documenting it for completeness.)
> >
> > Do you have a preference how to word this? Should we say "since Linux
> > 6.7" instead?
>
> I don't have a preference. Maybe since Linux 6.7 is easier than saying
> since Linux 6.12.26, 6.13.x, 6.14.y, and 6.15.z.
Yes, I think so too. I'll send a V2 that says "since Linux 6.7". The
fact that we permitted some of these invocations without CAP_SYS_ADMIN
was a bug in hindsight and only a temporary state.
Thanks,
–Günther
prev parent reply other threads:[~2025-05-02 10:17 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-01 11:00 [PATCH] man/man2const/TIOCLINUX.2const: Document CAP_SYS_ADMIN requirement for TIOCL_SETSEL modes Günther Noack
2025-05-01 15:05 ` Alejandro Colomar
2025-05-01 19:33 ` Günther Noack
2025-05-01 20:19 ` Alejandro Colomar
2025-05-02 10:16 ` Günther Noack [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=20250502.650a645dd94d@gnoack.org \
--to=gnoack3000@gmail.com \
--cc=alx@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=hanno@hboeck.de \
--cc=jannh@google.com \
--cc=jared@finder.org \
--cc=jirislaby@kernel.org \
--cc=kees@kernel.org \
--cc=linux-man@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.