Re: UTF-8 practically vs. theoretically in the VFS API (was: Re: JFS default behavior)

Marc Lehmann
2004-02-17T16:52:55Z

On Tue, Feb 17, 2004 at 08:32:15AM -0800, Linus Torvalds <torvalds@osdl.org> wrote:
> >
> > Because there is a fundamental difference between file contents and
> > filenames. Filenames are supposed to be text.
>
> I think this is actually the fundamental point where we disagree.

I guess that probably explains it. And I know of no striking arguments to
convince you of changing your fundamental opinion.

*sigh*. Ok, we agree to disagree :)

> It may be rare, but unlike you, I don't think there is anything "wrong"
> with considering path components to be just "data".

Yeah, there are three things - text, binary, and data (and probably more).

Filenames are then "mostly text", "no binary", and still suitable for
"data".

I have read the example somebody posted of some application encoding
"near-binary" data into filenames (e.g. uglies like "\n" or worse).
However, I think that these cases are extremely rare and not really worth
supporting. Not supporting this is not a problem for applications - after
all, base64 or escaping (that is needed even for "near-binary") works fine
for these apps, too, ignoring the problem of backwards compatibility.

I think that everyone having had the experience of dealing with filenames
containing \n etc., despite your shell/GUI helping in quoting, will easily
share this opinion about usefulness.

That's why it should be a mount option, i.e. an enforcable standard.

And since it seems that JFS already supports this (to some degree unknown
to me), I don't think it should be such a pain to implement.

But yes, I am most probably not going to implement it, especially not if
it will simply never be accepted.

So I guess it simply won't be done. I think it's omissing some highly
useful feature, but I will survive it.

--
-----==- |
----==-- _ |
---==---(_)__ __ ____ __ Marc Lehmann +--
--==---/ / _ \/ // /\ \/ / pcg@goof.com |e|
-=====/_/_//_/\_,_/ /_/\_\ XX11-RIPE --+
The choice of a GNU generation |
|