diff options
Diffstat (limited to 'include/sys')
-rw-r--r-- | include/sys/stat.h | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/include/sys/stat.h b/include/sys/stat.h index db0bd8f03d..bb89457e65 100644 --- a/include/sys/stat.h +++ b/include/sys/stat.h @@ -11,18 +11,14 @@ extern __mode_t __umask (__mode_t __mask); extern int __mkdir (__const char *__path, __mode_t __mode); extern int __mknod (__const char *__path, __mode_t __mode, __dev_t __dev); +extern int __fxstat_internal (int __ver, int __fildes, + struct stat *__stat_buf); +extern int __fxstat64_internal (int __ver, int __fildes, + struct stat64 *__stat_buf) ; extern __inline__ int __stat (__const char *__path, struct stat *__statbuf) { return __xstat (_STAT_VER, __path, __statbuf); } -extern __inline__ int __lstat (__const char *__path, struct stat *__statbuf) -{ - return __lxstat (_STAT_VER, __path, __statbuf); -} -extern __inline__ int __fstat (int __fd, struct stat *__statbuf) -{ - return __fxstat (_STAT_VER, __fd, __statbuf); -} extern __inline__ int __mknod (__const char *__path, __mode_t __mode, __dev_t __dev) { @@ -36,11 +32,20 @@ extern __inline__ int __mknod (__const char *__path, __mode_t __mode, We have to use macros but we cannot define them in the normal headers since on user level we must use real functions. */ #define stat(fname, buf) __xstat (_STAT_VER, fname, buf) -#define fstat(fd, buf) __fxstat (_STAT_VER, fd, buf) -#define __fstat(fd, buf) __fxstat (_STAT_VER, fd, buf) #define lstat(fname, buf) __lxstat (_STAT_VER, fname, buf) #define __lstat(fname, buf) __lxstat (_STAT_VER, fname, buf) -#define stat64(fname, buf) __xstat64 (_STAT_VER, fname, buf) -#define fstat64(fd, buf) __fxstat64 (_STAT_VER, fd, buf) #define lstat64(fname, buf) __lxstat64 (_STAT_VER, fname, buf) +#define stat64(fname, buf) __xstat64 (_STAT_VER, fname, buf) +#ifndef NOT_IN_libc +# define fstat64(fd, buf) INTUSE(__fxstat64) (_STAT_VER, fd, buf) +# define fstat(fd, buf) INTUSE(__fxstat) (_STAT_VER, fd, buf) +# define __fstat(fd, buf) INTUSE(__fxstat) (_STAT_VER, fd, buf) + +# define __fxstat(ver, fd, buf) INTUSE(__fxstat) (ver, fd, buf) +# define __fxstat64(ver, fd, buf) INTUSE(__fxstat64) (ver, fd, buf) +#else +# define fstat64(fd, buf) __fxstat64 (_STAT_VER, fd, buf) +# define fstat(fd, buf) __fxstat (_STAT_VER, fd, buf) +# define __fstat(fd, buf) __fxstat (_STAT_VER, fd, buf) +#endif #endif |