summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/common
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2003-01-24 16:10:36 +0000
committerEric Andersen <andersen@codepoet.org>2003-01-24 16:10:36 +0000
commitd8634ea863cbfefc29360b822e80a3cb8a9d2815 (patch)
treeec541beec1a0bb3de562126393418e1349f114a2 /libc/sysdeps/linux/common
parentdec2c57bbf885133aa3277f1e07143b5e45c06a7 (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.h2
-rw-r--r--libc/sysdeps/linux/common/bits/types.h19
-rw-r--r--libc/sysdeps/linux/common/xstatconv.c44
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
}