On Thu, 21 Nov 2019 11:52:53 +0100, Raimo Niskanen wrote:

> On OpenBSD 6.6 amd64 patch 006, i get peculiar results from readlink(1)
> with arguments -f with a symlink to /
>
> $ readlink -f /
> /
>
> $ ln -s / test; readlink -f test; rm test
> readlink: test: Is a directory

That appears to be a bug in the __realpath() system call.
I guess namei() is returning EISDIR because wantparent is set.
It seems likely that the check in sys___realpath() for whether or
not LOCKPARENT is used needs to be fixed, though I have only
read the code and not spent time in the kernel debugger.

Perhaps beck@ has an idea?

 - todd

Reply via email to