On 11/10/2021 3:32 PM, corinna-cyg...@cygwin.com wrote:
From: Corinna Vinschen <cori...@vinschen.de>

As I told Takashi in PM, I will try to more often send patches to the
cygwin-patches ML before pushing them, so there's a chance to chime in.

LGTM.

This patch series is supposed to address the `rm -rf' problem reported
in https://cygwin.com/pipermail/cygwin/2021-November/249837.html

It was always frustrating, having to allow DOS drive letter paths for
backward compatibility.  This here is another case of ambiguity,
triggered by the `isabspath' macro handling "X:" as absolute path, even
without the trailing slash or backslash.

Check out the 2nd patch for a more detailed description.

While at it, I wonder if we might have a chance to fix these ambiguities
in a better way.  For instance, consider this:

   $ mkdir -p test/c:
   $ cd test

As non-admin:

   $ touch c:/foo
   touch: cannot touch 'c:/foo': Permission denied

As admin, even worse:

   $ touch c:/foo
   $ ls /cygdrive/c/foo
   foo

As long as we support DOS paths as input, I have a hard time to see how
to fix this, but maybe we can at least minimize the ambiguity somehow.

I can't immediately think of anything. But is it really impossible to phase out DOS path support over a period of time? We could start with a HEADS-UP, asking for comments, then a deprecation announcement, then something like the old dosfilewarning option, then a more forceful warning that can't be turned off, and finally removal of support. This could be done over a period of several years (not sure how many).

We could also put lines like

  # C:/ on /c type ntfs (binary,posix=0)

into the default /etc/fstab.

Ken

Reply via email to