diff options
author | Eric Andersen <andersen@codepoet.org> | 2003-01-24 16:10:36 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2003-01-24 16:10:36 +0000 |
commit | d8634ea863cbfefc29360b822e80a3cb8a9d2815 (patch) | |
tree | ec541beec1a0bb3de562126393418e1349f114a2 /libc/sysdeps/linux/common | |
parent | dec2c57bbf885133aa3277f1e07143b5e45c06a7 (diff) |
Finish up fixing stat and setting various system types.
Diffstat (limited to 'libc/sysdeps/linux/common')
-rw-r--r-- | libc/sysdeps/linux/common/bits/kernel_stat.h | 2 | ||||
-rw-r--r-- | libc/sysdeps/linux/common/bits/types.h | 19 | ||||
-rw-r--r-- | libc/sysdeps/linux/common/xstatconv.c | 44 |
3 files changed, 11 insertions, 54 deletions
diff --git a/libc/sysdeps/linux/common/bits/kernel_stat.h b/libc/sysdeps/linux/common/bits/kernel_stat.h index 04c984757..4bcc0fe3a 100644 --- a/libc/sysdeps/linux/common/bits/kernel_stat.h +++ b/libc/sysdeps/linux/common/bits/kernel_stat.h @@ -32,7 +32,7 @@ struct kernel_stat { struct kernel_stat64 { unsigned short st_dev; unsigned char __pad0[10]; -#define STAT64_HAS_BROKEN_ST_INO 1 +#define _HAVE_STAT64___ST_INO unsigned long __st_ino; unsigned int st_mode; unsigned int st_nlink; diff --git a/libc/sysdeps/linux/common/bits/types.h b/libc/sysdeps/linux/common/bits/types.h index 547478e36..07b8ff1a7 100644 --- a/libc/sysdeps/linux/common/bits/types.h +++ b/libc/sysdeps/linux/common/bits/types.h @@ -59,17 +59,16 @@ __extension__ typedef unsigned long long int __uint64_t; #endif typedef __quad_t *__qaddr_t; -/* changed to be more compatible with kernel */ -typedef __kernel_dev_t __dev_t; /* Type of device numbers. */ -typedef __kernel_uid_t __uid_t; /* Type of user identifications. */ -typedef __kernel_gid_t __gid_t; /* Type of group identifications. */ -typedef __kernel_ino_t __ino_t; /* Type of file serial numbers. */ +typedef __u_quad_t __dev_t; /* Type of device numbers. */ +typedef __u_int __uid_t; /* Type of user identifications. */ +typedef __u_int __gid_t; /* Type of group identifications. */ +typedef __u_long __ino_t; /* Type of file serial numbers. */ typedef __u_int __mode_t; /* Type of file attribute bitmasks. */ -typedef __kernel_nlink_t __nlink_t; /* Type of file link counts. */ -typedef __kernel_off_t __off_t; /* Type of file sizes and offsets. */ -typedef __kernel_loff_t __loff_t; /* Type of file sizes and offsets. */ -typedef __kernel_pid_t __pid_t; /* Type of process identifications. */ -typedef __kernel_ssize_t __ssize_t; /* Type of a byte count, or error. */ +typedef __u_int __nlink_t; /* Type of file link counts. */ +typedef long int __off_t; /* Type of file sizes and offsets. */ +typedef __quad_t __loff_t; /* Type of file sizes and offsets. */ +typedef int __pid_t; /* Type of process identifications. */ +typedef int __ssize_t; /* Type of a byte count, or error. */ typedef __u_long __rlim_t; /* Type of resource counts. */ typedef __u_quad_t __rlim64_t; /* Type of resource counts (LFS). */ typedef __u_int __id_t; /* General type for ID. */ diff --git a/libc/sysdeps/linux/common/xstatconv.c b/libc/sysdeps/linux/common/xstatconv.c index 8b432a328..e35e900ef 100644 --- a/libc/sysdeps/linux/common/xstatconv.c +++ b/libc/sysdeps/linux/common/xstatconv.c @@ -36,80 +36,38 @@ void __xstat_conv(struct kernel_stat *kbuf, struct stat *buf) { /* Convert to current kernel version of `struct stat'. */ buf->st_dev = kbuf->st_dev; -#ifdef _HAVE_STAT___PAD1 - buf->__pad1 = 0; -#endif buf->st_ino = kbuf->st_ino; buf->st_mode = kbuf->st_mode; buf->st_nlink = kbuf->st_nlink; buf->st_uid = kbuf->st_uid; buf->st_gid = kbuf->st_gid; buf->st_rdev = kbuf->st_rdev; -#ifdef _HAVE_STAT___PAD2 - buf->__pad2 = 0; -#endif buf->st_size = kbuf->st_size; buf->st_blksize = kbuf->st_blksize; buf->st_blocks = kbuf->st_blocks; buf->st_atime = kbuf->st_atime; -#ifdef _HAVE_STAT___UNUSED1 - buf->__unused1 = 0; -#endif buf->st_mtime = kbuf->st_mtime; -#ifdef _HAVE_STAT___UNUSED2 - buf->__unused2 = 0; -#endif buf->st_ctime = kbuf->st_ctime; -#ifdef _HAVE_STAT___UNUSED3 - buf->__unused3 = 0; -#endif -#ifdef _HAVE_STAT___UNUSED4 - buf->__unused4 = 0; -#endif -#ifdef _HAVE_STAT___UNUSED5 - buf->__unused5 = 0; -#endif } void __xstat64_conv(struct kernel_stat64 *kbuf, struct stat64 *buf) { /* Convert to current kernel version of `struct stat64'. */ buf->st_dev = kbuf->st_dev; -#ifdef _HAVE_STAT64___PAD1 - buf->__pad1 = 0; -#endif buf->st_ino = kbuf->st_ino; #ifdef _HAVE_STAT64___ST_INO - buf->__st_ino = kbuf->st_ino; + buf->__st_ino = kbuf->__st_ino; #endif buf->st_mode = kbuf->st_mode; buf->st_nlink = kbuf->st_nlink; buf->st_uid = kbuf->st_uid; buf->st_gid = kbuf->st_gid; buf->st_rdev = kbuf->st_rdev; -#ifdef _HAVE_STAT64___PAD2 - buf->__pad2 = 0; -#endif buf->st_size = kbuf->st_size; buf->st_blksize = kbuf->st_blksize; buf->st_blocks = kbuf->st_blocks; buf->st_atime = kbuf->st_atime; -#ifdef _HAVE_STAT64___UNUSED1 - buf->__unused1 = 0; -#endif buf->st_mtime = kbuf->st_mtime; -#ifdef _HAVE_STAT64___UNUSED2 - buf->__unused2 = 0; -#endif buf->st_ctime = kbuf->st_ctime; -#ifdef _HAVE_STAT64___UNUSED3 - buf->__unused3 = 0; -#endif -#ifdef _HAVE_STAT64___UNUSED4 - buf->__unused4 = 0; -#endif -#ifdef _HAVE_STAT64___UNUSED5 - buf->__unused5 = 0; -#endif } |