X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Fsys%2Fstat.h;h=e16a9682b6c3b837367e1689bf7d736725ac05f9;hb=453059571c9dc84dd168631eced25ec2d7afd98e;hp=5363a9a3d89b93f765636bd74072e5a80bb1143a;hpb=eda8e9da763df3fd25fc6c78602d7c79296eae6b;p=musl diff --git a/include/sys/stat.h b/include/sys/stat.h index 5363a9a3..e16a9682 100644 --- a/include/sys/stat.h +++ b/include/sys/stat.h @@ -4,6 +4,12 @@ extern "C" { #endif +#if __STDC_VERSION__ >= 199901L +#define __restrict restrict +#elif !defined(__GNUC__) +#define __restrict +#endif + #define __NEED_dev_t #define __NEED_ino_t #define __NEED_mode_t @@ -47,34 +53,31 @@ extern "C" { #define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK) #define S_ISSOCK(mode) (((mode) & S_IFMT) == S_IFSOCK) +#ifndef S_IRUSR #define S_ISUID 04000 #define S_ISGID 02000 #define S_ISVTX 01000 - -#define S_IREAD 0400 -#define S_IWRITE 0200 -#define S_IEXEC 0100 - #define S_IRUSR 0400 #define S_IWUSR 0200 #define S_IXUSR 0100 #define S_IRWXU 0700 - #define S_IRGRP 0040 #define S_IWGRP 0020 #define S_IXGRP 0010 #define S_IRWXG 0070 - #define S_IROTH 0004 #define S_IWOTH 0002 #define S_IXOTH 0001 #define S_IRWXO 0007 +#endif +#define UTIME_NOW 0x3fffffff +#define UTIME_OMIT 0x3ffffffe -int stat(const char *, struct stat *); +int stat(const char *__restrict, struct stat *__restrict); int fstat(int, struct stat *); -int lstat(const char *, struct stat *); -int fstatat(int, const char *, struct stat *, int); +int lstat(const char *__restrict, struct stat *__restrict); +int fstatat(int, const char *__restrict, struct stat *__restrict, int); int chmod(const char *, mode_t); int fchmod(int, mode_t); int fchmodat(int, const char *, mode_t, int); @@ -93,6 +96,23 @@ int utimensat(int, const char *, const struct timespec [2], int); int lchmod(const char *, mode_t); #endif +#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#define S_IREAD S_IRUSR +#define S_IWRITE S_IWUSR +#define S_IEXEC S_IXUSR +#endif + +#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) +#define stat64 stat +#define fstat64 fstat +#define lstat64 lstat +#define fstatat64 fstatat +#define blksize64_t blksize_t +#define blkcnt64_t blkcnt_t +#define ino64_t ino_t +#define off64_t off_t +#endif + #ifdef __cplusplus } #endif