Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 May 2020 12:54:12 -0700
From:      Cy Schubert <Cy.Schubert@cschubert.com>
To:        Kyle Evans <kevans@freebsd.org>
Cc:        "freebsd-arch@freebsd.org" <freebsd-arch@freebsd.org>
Subject:   Re: [HEADSUP] Disallowing read() of a directory fd
Message-ID:  <202005141954.04EJsCtH036247@slippy.cwsent.com>
In-Reply-To: <CACNAnaFszg%2BQWPRS0kghsnQMxXc%2B5niPTTNiUPSmK60YyBGCzA@mail.gmail.com>
References:  <CACNAnaFszg%2BQWPRS0kghsnQMxXc%2B5niPTTNiUPSmK60YyBGCzA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In message <CACNAnaFszg+QWPRS0kghsnQMxXc+5niPTTNiUPSmK60YyBGCzA@mail.gmail.c
om>
, Kyle Evans writes:
> Hi,
>
> This is a heads up, given that I'm completely flipping our historical
> behavior- I intend to commit this review in a couple days' time
> without substantial objection: https://reviews.freebsd.org/D24596
>
> With this, FreeBSD 13 will not allow read() of a directory fd, which
> could have previously returned some data from the underlying
> filesystem in no particular standardized format.
>
> This is a still-standards-compliant switch from one
> implementation-defined behavior to another that's already been adopted
> in various other popular kernels, to include OpenBSD, MacOS, and
> Linux.
>
> Worth noting is that there's not really one largely-compelling reasons
> to switch this after so many years (unless you find yourself that
> irate when you accidentally `cat` a directory), but there are some
> benefits which are briefly discussed in the commentary around the
> review along with the history of the current behavior.
>
> This change also simplifies filesystem implementations to some extent.

OpenBSD has done this for a while and more importantly Linux.


-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  https://FreeBSD.org
NTP:           <cy@nwtime.org>    Web:  https://nwtime.org

	The need of the many outweighs the greed of the few.





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