summaryrefslogtreecommitdiff
path: root/libc
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
parentdec2c57bbf885133aa3277f1e07143b5e45c06a7 (diff)
Finish up fixing stat and setting various system types.
Diffstat (limited to 'libc')
-rw-r--r--libc/sysdeps/linux/alpha/bits/types.h23
-rw-r--r--libc/sysdeps/linux/arm/bits/kernel_stat.h2
-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
-rw-r--r--libc/sysdeps/linux/cris/bits/kernel_stat.h2
-rw-r--r--libc/sysdeps/linux/h8300/bits/kernel_stat.h2
-rw-r--r--libc/sysdeps/linux/i386/bits/kernel_stat.h2
-rw-r--r--libc/sysdeps/linux/m68k/bits/kernel_stat.h2
-rw-r--r--libc/sysdeps/linux/mips/bits/types.h19
-rw-r--r--libc/sysdeps/linux/powerpc/bits/types.h2
-rw-r--r--libc/sysdeps/linux/sparc/bits/types.h31
12 files changed, 52 insertions, 98 deletions
diff --git a/libc/sysdeps/linux/alpha/bits/types.h b/libc/sysdeps/linux/alpha/bits/types.h
index c5e98c5a0..d5e4aac21 100644
--- a/libc/sysdeps/linux/alpha/bits/types.h
+++ b/libc/sysdeps/linux/alpha/bits/types.h
@@ -46,19 +46,18 @@ typedef signed long int __int64_t;
typedef unsigned long int __uint64_t;
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 __uint32_t __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 __uint64_t __dev_t; /* Type of device numbers. */
+typedef __uint32_t __uid_t; /* Type of user identifications. */
+typedef __uint32_t __gid_t; /* Type of group identifications. */
+typedef __uint32_t __ino_t; /* Type of file serial numbers. */
typedef __uint64_t __ino64_t; /* "" (LFS) */
+typedef __uint32_t __mode_t; /* Type of file attribute bitmasks. */
+typedef __uint32_t __nlink_t; /* Type of file link counts. */
+typedef __int64_t __off_t; /* Type of file sizes and offsets. */
typedef __int64_t __off64_t; /* "" (LFS) */
+typedef __int64_t __loff_t; /* Type of file sizes and offsets. */
+typedef __int32_t __pid_t; /* Type of process identifications. */
+typedef __int64_t __ssize_t; /* Type of a byte count, or error. */
typedef __uint64_t __rlim_t; /* Type of resource counts. */
typedef __uint64_t __rlim64_t; /* "" (LFS) */
typedef __uint32_t __blksize_t; /* Type to represnet block size. */
@@ -92,7 +91,7 @@ typedef int __clockid_t;
typedef int __timer_t;
/* Used in `struct shmid_ds'. */
-typedef int __ipc_pid_t;
+typedef __kernel_ipc_pid_t __ipc_pid_t;
/* Number of descriptors that can fit in an `fd_set'. */
#define __FD_SETSIZE 1024
diff --git a/libc/sysdeps/linux/arm/bits/kernel_stat.h b/libc/sysdeps/linux/arm/bits/kernel_stat.h
index cb1d36cda..bfef64cea 100644
--- a/libc/sysdeps/linux/arm/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/arm/bits/kernel_stat.h
@@ -31,7 +31,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/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
}
diff --git a/libc/sysdeps/linux/cris/bits/kernel_stat.h b/libc/sysdeps/linux/cris/bits/kernel_stat.h
index 38f5036a2..d4be6a64d 100644
--- a/libc/sysdeps/linux/cris/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/cris/bits/kernel_stat.h
@@ -47,7 +47,7 @@ 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;
diff --git a/libc/sysdeps/linux/h8300/bits/kernel_stat.h b/libc/sysdeps/linux/h8300/bits/kernel_stat.h
index 9152811ba..3d2805e7f 100644
--- a/libc/sysdeps/linux/h8300/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/h8300/bits/kernel_stat.h
@@ -32,7 +32,7 @@ struct kernel_stat64 {
unsigned char __pad0[6];
unsigned short st_dev;
unsigned char __pad1[2];
-#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/i386/bits/kernel_stat.h b/libc/sysdeps/linux/i386/bits/kernel_stat.h
index 5df484fe7..a574bd5f4 100644
--- a/libc/sysdeps/linux/i386/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/i386/bits/kernel_stat.h
@@ -31,7 +31,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/m68k/bits/kernel_stat.h b/libc/sysdeps/linux/m68k/bits/kernel_stat.h
index 9152811ba..3d2805e7f 100644
--- a/libc/sysdeps/linux/m68k/bits/kernel_stat.h
+++ b/libc/sysdeps/linux/m68k/bits/kernel_stat.h
@@ -32,7 +32,7 @@ struct kernel_stat64 {
unsigned char __pad0[6];
unsigned short st_dev;
unsigned char __pad1[2];
-#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/mips/bits/types.h b/libc/sysdeps/linux/mips/bits/types.h
index d879194ce..5a2908b0e 100644
--- a/libc/sysdeps/linux/mips/bits/types.h
+++ b/libc/sysdeps/linux/mips/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/powerpc/bits/types.h b/libc/sysdeps/linux/powerpc/bits/types.h
index 72ed269ff..547478e36 100644
--- a/libc/sysdeps/linux/powerpc/bits/types.h
+++ b/libc/sysdeps/linux/powerpc/bits/types.h
@@ -103,7 +103,7 @@ typedef int __timer_t;
typedef int __key_t;
/* Used in `struct shmid_ds'. */
-typedef unsigned short int __ipc_pid_t;
+typedef __kernel_ipc_pid_t __ipc_pid_t;
/* Type to represent block size. */
diff --git a/libc/sysdeps/linux/sparc/bits/types.h b/libc/sysdeps/linux/sparc/bits/types.h
index dcddd8e6a..0c7cfbea7 100644
--- a/libc/sysdeps/linux/sparc/bits/types.h
+++ b/libc/sysdeps/linux/sparc/bits/types.h
@@ -70,19 +70,22 @@ __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_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_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_quad_t __ino64_t; /* Type of file serial numbers. */
+typedef __u_int __mode_t; /* Type of file attribute bitmasks. */
+typedef __u_int __nlink_t; /* Type of file link counts. */
+typedef long int __off_t; /* Type of file sizes and offsets. */
typedef __quad_t __off64_t; /* "" (LFS) */
+typedef __quad_t __loff_t; /* Type of file sizes and offsets. */
+typedef int __pid_t; /* Type of process identifications. */
+#if __WORDSIZE == 64
+typedef long int __ssize_t; /* Type of a byte count, or error. */
+#else
+typedef int __ssize_t; /* Type of a byte count, or error. */
+#endif
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 IDs. */
@@ -115,11 +118,7 @@ typedef int __timer_t;
typedef int __key_t;
/* Used in `struct shmid_ds'. */
-#if __WORDSIZE == 64
-typedef int __ipc_pid_t;
-#else
-typedef unsigned short int __ipc_pid_t;
-#endif
+typedef __kernel_ipc_pid_t __ipc_pid_t;
/* Type to represent block size. */