Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Jan 2002 23:38:47 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Mike Makonnen <mike_makonnen@yahoo.com>
Cc:        <ru@freebsd.org>, <sheldonh@starjuice.net>, <audit@freebsd.org>, <bug-followup@freebsd.org>
Subject:   Re: bin/33187: ls -dF and trailing slashes
Message-ID:  <20020110232640.R12168-100000@gamplex.bde.org>
In-Reply-To: <200201101033.g0AAXPd03715@blackbox.pacbell.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 10 Jan 2002, Mike Makonnen wrote:

> On Thu, 10 Jan 2002 15:04:31 +1100 (EST)
> Bruce Evans <bde@zeta.org.au> wrote:
>
> > It also breaks ls of symlinks.  E.g.:
> >
> >     $ ls -lF /var/crash /var/crash/
> >     lrwxr-xr-x  1 root  wheel  8 Mar  5  2001 /var/crash@ -> /c/crash
> >
> >     /var/crash/:
> >     total 145202
> >     -rw-r--r--  1 4294967294  wheel          2 Jan  9 14:44 bounds
> >     -rw-r--r--  1 4294967294  wheel    2630180 Jan  9 14:45 kernel.4
> >     -rw-r--r--  1 root        wheel          5 May 19  1994 minfree
> >     -rw-------  1 4294967294  wheel   14680064 Nov 24 21:06 vmcore.1
> >     -rw-------  1 4294967294  wheel    1048576 Nov 24 21:09 vmcore.2
> >     -rw-------  1 4294967294  wheel    7053312 Jan  7 14:16 vmcore.3
> >     -rw-------  1 4294967294  wheel  268435456 Jan  9 14:45 vmcore.4
>
> I realize the pr has been suspended, but just to set the record straight...
> this is not caused by the patch. The patch only comes into effect when both -d and -F are specified.

I forgot it was -d and my fingers knew it was -l :-).  Anyway, "ls -dF
/var/crash/" should follow the symlink (if any).  Appending a slash
is a normal way to get symlinks followed.  For ls, you can use -L, but
most utilities don't have an equivalent.

> >     I think the slash should be stripped in the output at most.
>
> Yeah, you're right. I also just found out ls(1) will accept ``ls /usr////////''. So, should all trailing '/' be stripped on output or is it not
> worth the effort/POSIX compliance/whatever ?

I doubt that POSIX specifies the output of ls in enough detail to say, but
I think stripping should not change the semantics of the pathnames, in
case they are used for input.  Stripping "//" to "/" changes the semantics,
as does stripping "foo/" to "foo" if "foo" is not a directory.  Otherwise,
trailing slashes may be stripped without changing the semantics.

Bruce


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-audit" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020110232640.R12168-100000>