linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Theodore Ts'o" <tytso@mit.edu>
To: Alejandro Colomar <alx@kernel.org>
Cc: linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
	linux-man@vger.kernel.org
Subject: Re: newlines in filenames; POSIX.1-2024
Date: Wed, 23 Apr 2025 19:05:34 -0500	[thread overview]
Message-ID: <20250424000534.GB765145@mit.edu> (raw)
In-Reply-To: <3wpydsib5maytq4m4ve4b7wfbfkxwzd5m6u5woqr43qr6mickk@gw4ww6vvgyo5>

On Wed, Apr 23, 2025 at 09:31:42AM +0200, Alejandro Colomar wrote:
> 
> <http://austingroupbugs.net/view.php?id=251>

Ugh.  Reading through that bug, despite the fact that the original
proposal was *significantly* bared down, has greatly reduced my
respect for the Austin Group.

One of the people in that bug argued unironically that using pipes
should be deprecated.  i.e., that somehow "find . ... -print0 | xargs
-0 ..." was a security problem.

<<Sigh>>

Other people pointed out that creating proscriptions that were not
implemented by many/most historical implementations would fragment the
standard and decrease the respect people would have towards the POSIX
specification.  That was the "toilet paper" comment which you
referenced.

Well, they got that right.

> I think a mode for disallowing _any control characters_ (aka
> [:cntrl:], aka 0-31) would be a good choice.

As the Austin Group Bug pointed out, the problem is that the control
characters can be printable characters, depending on the code page
that you might be using.  The example that was given was cp437.

The problem is that historically speaking, the kernel does *not* know
about what locale that is in use.  We made an exception to handle case
folding, where we added Unicode tables into the kernel.  Some would
say that was a major mistake, and it's certainly been a headache.

    	       	     	      	       - Ted

  reply	other threads:[~2025-04-24  0:06 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-16 16:50 newlines in filenames; POSIX.1-2024 Alejandro Colomar
2025-04-22 22:21 ` Theodore Ts'o
2025-04-23  7:31   ` Alejandro Colomar
2025-04-24  0:05     ` Theodore Ts'o [this message]
2025-04-24  7:00       ` Alejandro Colomar
2025-04-25 14:54   ` Christoph Hellwig

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=20250424000534.GB765145@mit.edu \
    --to=tytso@mit.edu \
    --cc=alx@kernel.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kernel@vger.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 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).