[HEADSUP] Disallowing read() of a directory fd

Arne Steinkamm freebsd-hackers at Steinkamm.COM
Fri May 15 15:06:55 UTC 2020


On Fri, May 15, 2020 at 10:48:15AM -0400, Diane Bruce wrote:
> All I have to say on this noisy bikeshed is, let's resurrect the mkdir
> bug of V7 because it's tradition and the BSD way and history and stuff.
> (I only expect a few of you to remember this one.)

Oh, this "bug" was alive until Sys V 3.2 times...

Implementing mkdir as library function without a syscall wasn't a good idea.
ken and dmr saw no reason to implement mkdir as atomic operation.
So it was easy, even with a shell script, to jump between the
mknod(2) and the chown(2) to replace the directory node with a symlink to
/etc/passwd.

This was from a todays point of view a stupid mistake. Reading a directory node
is lightyears away from "a stupid mistake".

Make it switchable with a sysctl switch... would be the best of both worlds.

.//. Arne

-- 
Arne Steinkamm         | Home:     Mail: arne<at>steinkamm<dot>com
Tel.: +49.89.21031004  | Gröbenbachweg 13, 82178 Puchheim, GERMANY



More information about the freebsd-arch mailing list