equivalent logic for fstat+O_PATH fallback and direct use of stat/lstat syscalls where appropriate is kept, now in the fstatat function. this change both improves functionality (now, fstatat forms equivalent to fstat/lstat/stat will work even on kernels too old to have the at functions) and localizes direct interfacing with the kernel stat structure to one file.
11 lines
198 B
C
11 lines
198 B
C
#include <sys/stat.h>
|
|
#include <fcntl.h>
|
|
#include "syscall.h"
|
|
|
|
int stat(const char *restrict path, struct stat *restrict buf)
|
|
{
|
|
return fstatat(AT_FDCWD, path, buf, 0);
|
|
}
|
|
|
|
weak_alias(stat, stat64);
|