rm(1) bug, possibly serious

Oliver Fromme olli at lurza.secnetix.de
Tue Sep 25 13:40:10 PDT 2007


Nicolas Rachinsky wrote:
 > Oliver Fromme wrote:
 > > By the way, an additional confusion is that ".." and "../"
 > > are handled differently.  Specifying ".." always leads to
 > > this message:
 > > 
 > > rm: "." and ".." may not be removed
 > > 
 > > and nothing is actually removed.  It is confusing that
 > > adding a slash leads to a different error message _and_
 > > removal of the contents of the parent directory.  Clearly
 > > a POLA violation.
 > 
 > Adding a slash often leads to different behaviour.

Yes, I'm aware of that.  I often make use of the feature
that "find /sys/" expands the symlink, while "find /sys"
does not.  The same holds true for ls(1).

However, I would still argue that there is no sane reason
for "rm -rf ../" behaving differently from "rm -rf ..",
especially because it behaves differently in a destructive
way.  That's why I call it a POLA violation.

Best regards
   Oliver

-- 
Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M.
Handelsregister: Registergericht Muenchen, HRA 74606,  Geschäftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün-
chen, HRB 125758,  Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart

FreeBSD-Dienstleistungen, -Produkte und mehr:  http://www.secnetix.de/bsd

Python is executable pseudocode.  Perl is executable line noise.


More information about the freebsd-stable mailing list