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>