Provide lstat() for Windows.

Thomas Munro <tmunro@postgresql.org>

Commit: 895f23d9e174897a9c1a71a2c6cdb439fe5a3101
Author: Thomas Munro <tmunro@postgresql.org>
Committer: Andrew Dunstan <andrew@dunslane.net>
Date: 2024-11-07T23:06:27Z
Releases: 14.14
Provide lstat() for Windows.

Junction points will be reported with S_ISLNK(x.st_mode), simulating
POSIX lstat().  stat() will follow pseudo-symlinks, like in POSIX (but
only one level before giving up, unlike in POSIX).

This completes a TODO left by commit bed90759fcb.

Tested-by: Andrew Dunstan <andrew@dunslane.net> (earlier version)
Discussion: https://postgr.es/m/CA%2BhUKGLfOOeyZpm5ByVcAt7x5Pn-%3DxGRNCvgiUPVVzjFLtnY0w%40mail.gmail.com
(cherry picked from commit c5cb8f3b770c043509b61528664bcd805e1777e6)

Author: Thomas Munro <tmunro@postgresql.org>
Author: Alexandra Wang <alexandra.wang.oss@gmail.com>

Files

PathChange+/−
src/include/port/win32_port.h modified +17 −1
src/port/win32stat.c modified +106 −4