Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 May 2020 01:09:28 +0200
From:      Joerg Sonnenberger <joerg@bec.de>
To:        freebsd-hackers@freebsd.org, hackers@freebsd.org
Subject:   Re: [HEADSUP] Disallowing read() of a directory fd
Message-ID:  <20200515230928.GA9126@bec.de>
In-Reply-To: <20200515224724.WFACq%steffen@sdaoden.eu>
References:  <202005142017.04EKH0aA093503@fire.js.berklix.net> <202005152000.04FK0tjk006516@slippy.cwsent.com> <20200515202526.GZ82984@trajan.stk.cx> <20200515220923.GA36597@bec.de> <20200515224724.WFACq%steffen@sdaoden.eu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, May 16, 2020 at 12:47:24AM +0200, Steffen Nurpmeso wrote:
> Joerg Sonnenberger wrote in
> <20200515220923.GA36597@bec.de>:
>  |On Fri, May 15, 2020 at 10:25:26PM +0200, Arne Steinkamm wrote:
>  |> On Fri, May 15, 2020 at 01:00:55PM -0700, Cy Schubert wrote:
>  |>> It's been 42 or more years since this bug was introduced. Let's \
>  |>> just fix it 
>  |>> now instead of agonizing over it.
>  |> 
>  |> I didn't want to add something as everything is said,
>  |> but this sentence is a little bit to provocative.
>  |> 
>  |> Everything is a file describes one of the defining features of Unix.
>  |> 
>  |> Calling this defining feature of Unix a bug shows to me that the ideas
>  |> behind Unix got lost in the FreeBSD universe too...
>  |
>  |Using linear storage for a directory is an implementation detail of the
>  |implementation. It's not a defining feature. "Reading" from a directory
>  |doesn't make sense for many other organisational forms. So, are you now
>  |arguing that leaky abstractions are a defining feature of Unix?
> 
> In an ideal Unix world read(2)ing from a directory fd would do the
> job that getdents(2) / getdirentries(2) never moved to a standard,
> leaving us with that terrible readdir(3) stuff.  imho.

That still doesn't work well with non-linear representations of
directories. readdir has issues, but plain read is even worse.

Joerg



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