Subject: Re: bug#12339: Bug: rm -fr . doesn't dir depth first deletion yet it is documented to do so.

From: Jim Meyering <[email-masked]>
Date: Tue, 04 Sep 2012 12:42:00 +0200

Paul Eggert wrote:

> On 09/03/2012 10:20 PM, Bernhard Voelker wrote:
>> the question is what rm should remove:
>> the symlink or the target?
>
> The convention in POSIX is that if a symlink is
> followed by '/', it's dereferenced.  So this does
> appear to be a bug in coreutils 'rm'.
>
> I confirmed that the bug does not occur with
> Solaris 11 'rm':
>
> $ mkdir d
> $ touch d/file
> $ ln -s d dl
> $ ls -al *
> lrwxrwxrwx   1 eggert   faculty        1 Sep  3 22:26 dl -> d

Same for FreeBSD 9.0-RELEASE-p3:

    freebsd$ mkdir d; ln -s d s; /bin/rm -r s/; ls
    s@

But not with busybox 1.20.0-6:

    $ mkdir d; ln -s d s; busybox rm -r s/; ls
    d/

I have mixed feelings, but am leaning towards the
Solaris 11/FreeBSD behavior.