Date: Wed, 10 Apr 2002 07:48:12 -0400 From: Brian T.Schellenberger <bts@babbleon.org> To: Bogdan TARU <bgd@icomag.de>, "Rogier R. Mulhuijzen" <drwilco@drwilco.net>, Terry Lambert <tlambert2@mindspring.com>, <freebsd-hackers@FreeBSD.ORG> Subject: Re: 'rm' incompatibility with Posix.2 Message-ID: <20020410114813.6F9F8BB39@i8k.babbleon.org> In-Reply-To: <20020410103608.F79910-100000@fw.cgn.icom> References: <20020410103608.F79910-100000@fw.cgn.icom>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 10 April 2002 04:45 am, Bogdan TARU wrote:
| Dear Rogier & Terry,
|
| I didn't say the behaviour contradicts Posix.2. I just said that Posix.2
| specifies removal of the trailing slashes when doing directory operation.
I don't think I follow the distinction here. If posix requires removal of
the trailing slashes on directory operations, and it is your perception that
FreeBSD does not do this, then it seems to me that you *are* saying the
FreeBSd contradicts Posix.2.
Aren't you? I mean, isn't that the complaint?
That said, what you've cited isn't a case of a directory operation; it's a
case of a symbolic-link operation. Does Posix.2 say anything one way or
another about those?
In other words, what you are describing here (behavior of which I was utterly
unaware, but now that I am I certainly hope it doesn't change because it
seems quite convenient) is the following algorithm used by FreeBSD:
If there is a symbolic link with a trailing /, then resolve the symbolic link
into the target. I don't think it's resolving it into "the target with a
trailing slash"; thus, with
mkdir dir
ln -s dir link
rm -r link/ is the same as rm -r dir
But the posix rule you cited doesn't seem to me to have anything to do with
this case; rather it merely says that
rm -r dir/ is the same as rm -r dir
It is of entirely possible that posix2 (which I've never even glanced at) has
some *other* rule that implies that the FreeBSD behavior is nonconforming,
but this rule doesn't seem to me to be applicable to this case.
| Which, for example, freebsd 'rm' does not, which leads to a strange
| behaviour. As I stated, I have tryied this on more than one other OS
| (OpenBSD 2.9, 3.0, Linux, HP UX 10.20, Solaris 2.7, 2.8), and all yelded
| the same result (different from the FreeBSD).
|
| Also, I quote from the FreeBSD man page of 'rm':
|
| "The rm utility removes symbolic links, not the files referenced by
| the links."
|
| Greetings,
| bogdan
|
| On Wed, 10 Apr 2002, Rogier R. Mulhuijzen wrote:
| > > I have attached a patch for the 'rm' untility, which strips the
| > > trailing slash(es) from the path (according to Posix.2). But I think
| > > there are many other utilities which need to be patched (e.g. cp, mv).
| >
| > Can you point out how the behavior violates POSIX.2?
| >
| > Doc
|
| To Unsubscribe: send mail to majordomo@FreeBSD.org
| with "unsubscribe freebsd-hackers" in the body of the message
--
Brian T. Schellenberger . . . . . . . bts@wnt.sas.com (work)
Brian, the man from Babble-On . . . . bts@babbleon.org (personal)
ME --> http://www.babbleon.org
http://www.eff.org <-- GOOD GUYS --> http://www.programming-freedom.org
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020410114813.6F9F8BB39>
