Provide lstat() for Windows.

Thomas Munro <tmunro@postgresql.org>

Commit: b73c1496dc7aba7748eb3d55b29c4eb0dc788296
Author: Thomas Munro <tmunro@postgresql.org>
Committer: Andrew Dunstan <andrew@dunslane.net>
Date: 2024-11-07T22:57:25Z
Releases: 15.9
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