about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/s390/bits/stat.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-07-11 21:44:15 +0000
committerUlrich Drepper <drepper@redhat.com>2002-07-11 21:44:15 +0000
commit7bf75551f0e18568435901a4362466a08646aca2 (patch)
treef5d5b8eafb90ead88967afefbfd395a6fae0e3f3 /sysdeps/unix/sysv/linux/s390/bits/stat.h
parent3e0dd85b103492e6b91e8e3bf60a997b04eb967f (diff)
downloadglibc-7bf75551f0e18568435901a4362466a08646aca2.tar.gz
glibc-7bf75551f0e18568435901a4362466a08646aca2.tar.xz
glibc-7bf75551f0e18568435901a4362466a08646aca2.zip
Update.
2002-07-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* sysdeps/s390/bits/byteswap.h: Unified 31/64 bit byteswap.h.
	* sysdeps/s390/s390-32/bits/byteswap.h: Remove.
	* sysdeps/s390/s390-64/bits/byteswap.h: Remove.
	* sysdeps/s390/bits/link.h: Unified 31/64 bit link.h.
	* sysdeps/s390/s390-32/bits/link.h: Remove.
	* sysdeps/s390/s390-64/bits/link.h: Remove.
	* sysdeps/s390/bits/setjmp.h: Unified 31/64 bit setjmp.h.
	* sysdeps/s390/s390-32/bits/setjmp.h: Remove.
	* sysdeps/s390/s390-64/bits/setjmp.h: Remove.
	* sysdeps/s390/bits/wordsize.h: New file.
	* sysdeps/unix/sysv/linux/s390/bits/elfclass.h: Unified 31/64 bit
	elfclass.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/elfclass.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Unified 31/64 bit fcntl.h.
	* sysdeps/unix/sysv/linux/s390/s390-32/bits/fcntl.h: Remove.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/fcntl.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/ipc.h: Unified 31/64 bit ipc.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/ipc.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/mman.h: Unified 31/64 bit mman.h.
	* sysdeps/unix/sysv/linux/s390/s390-32/bits/mman.h: Remove.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/mman.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/msq.h: Unified 31/64 bit msq.h.
	* ysdeps/unix/sysv/linux/s390/s390-64/bits/msq.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/resource.h: Unified 31/64 bit
	resource.h.
	* sysdeps/unix/sysv/linux/s390/s390-32/bits/resource.h: Remove.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/resource.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/sem.h: Unified 31/64 bit sem.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/sem.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/shm.h: Unified 31/64 bit shm.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/shm.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/sigaction.h: Unified 31/64 bit
	sigaction.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/sigaction.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Unified 31/64 bit
	siginfo.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/siginfo.h: Remove.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/sigstack.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/socket.h: Unified 31/64 bit
	socket.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/socket.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/stat.h: Unified 31/64 bit stat.h.
	* sysdeps/unix/sysv/linux/s390/s390-32/bits/stat.h: Remove.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/stat.h: Remove.
	* sysdeps/unix/sysv/linux/s390/bits/types.h: Unified 31/64 bit types.h.
	* sysdeps/unix/sysv/linux/s390/s390-64/bits/types.h: Remove.
	* sysdeps/unix/sysv/linux/s390/net/route.h: New file.
	* sysdeps/unix/sysv/linux/s390/sys/procfs.h: Unified 31/64 bit
	procfs.h.
	* sysdeps/unix/sysv/linux/s390/s390-32/sys/procfs.h: Remove.
	* sysdeps/unix/sysv/linux/s390/s390-64/sys/procfs.h: Remove.
	* sysdeps/unix/sysv/linux/s390/sys/ucontext.h: Unified 31/64 bit
	ucontext.h.
	* sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Remove.
	* sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Remove.
Diffstat (limited to 'sysdeps/unix/sysv/linux/s390/bits/stat.h')
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/stat.h194
1 files changed, 194 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/s390/bits/stat.h b/sysdeps/unix/sysv/linux/s390/bits/stat.h
new file mode 100644
index 0000000000..419a4151c1
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/s390/bits/stat.h
@@ -0,0 +1,194 @@
+/* Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef _SYS_STAT_H
+# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
+#endif
+
+#include <bits/wordsize.h>
+
+#if __WORDSIZE == 64
+/* Versions of the `struct stat' data structure.  */
+# define _STAT_VER_KERNEL	0
+# define _STAT_VER_LINUX	1
+# define _STAT_VER		_STAT_VER_LINUX
+
+/* Versions of the `xmknod' interface.	*/
+#define _MKNOD_VER_LINUX	0
+#else
+/* Versions of the `struct stat' data structure.  */
+# define _STAT_VER_LINUX_OLD	1
+# define _STAT_VER_KERNEL	1
+# define _STAT_VER_SVR4		2
+# define _STAT_VER_LINUX	3
+# define _STAT_VER		_STAT_VER_LINUX
+
+/* Versions of the `xmknod' interface.  */
+# define _MKNOD_VER_LINUX	1
+# define _MKNOD_VER_SVR4	2
+# define _MKNOD_VER		_MKNOD_VER_LINUX
+#endif
+
+#if __WORDSIZE == 64
+struct stat
+  {
+    __dev_t st_dev;		/* Device.  */
+    __ino_t st_ino;		/* File serial number.	*/
+    __nlink_t st_nlink;		/* Link count.	*/
+    __mode_t st_mode;		/* File mode.  */
+    __uid_t st_uid;		/* User ID of the file's owner.	*/
+    __gid_t st_gid;		/* Group ID of the file's group.*/
+    int pad0;
+    __dev_t st_rdev;		/* Device number, if device.  */
+    __off_t st_size;		/* Size of file, in bytes.  */
+    __time_t st_atime;		/* Time of last access.	 */
+    long int __reserved0;	/* Reserved for atime.nanoseconds.  */
+    __time_t st_mtime;		/* Time of last modification.  */
+    long int __reserved1;	/* Reserved for mtime.nanoseconds.  */
+    __time_t st_ctime;		/* Time of last status change.	*/
+    long int __reserved2;	/* Reserved for ctime.nanoseconds.  */
+    __blksize_t st_blksize;	/* Optimal block size for I/O.	*/
+    __blkcnt_t st_blocks;	/* Nr. 512-byte blocks allocated.  */
+    long int __unused[3];
+  };
+#else
+struct stat
+  {
+    __dev_t st_dev;			/* Device.  */
+    unsigned int __pad1;
+# ifndef __USE_FILE_OFFSET64
+    __ino_t st_ino;			/* File serial number.	*/
+# else
+    __ino_t __st_ino;			/* 32bit file serial number.	*/
+# endif
+    __mode_t st_mode;			/* File mode.  */
+    __nlink_t st_nlink;			/* Link count.  */
+    __uid_t st_uid;			/* User ID of the file's owner.	*/
+    __gid_t st_gid;			/* Group ID of the file's group.*/
+    __dev_t st_rdev;			/* Device number, if device.  */
+    unsigned int __pad2;
+# ifndef __USE_FILE_OFFSET64
+    __off_t st_size;			/* Size of file, in bytes.  */
+# else
+    __off64_t st_size;			/* Size of file, in bytes.  */
+# endif
+    __blksize_t st_blksize;		/* Optimal block size for I/O.  */
+
+# ifndef __USE_FILE_OFFSET64
+    __blkcnt_t st_blocks;		/* Number 512-byte blocks allocated. */
+# else
+    __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */
+# endif
+    __time_t st_atime;			/* Time of last access.  */
+    unsigned long int __unused1;
+    __time_t st_mtime;			/* Time of last modification.  */
+    unsigned long int __unused2;
+    __time_t st_ctime;			/* Time of last status change.  */
+    unsigned long int __unused3;
+# ifndef __USE_FILE_OFFSET64
+    unsigned long int __unused4;
+    unsigned long int __unused5;
+# else
+    __ino64_t st_ino;			/* File serial number.	*/
+# endif
+  };
+#endif
+
+#ifdef __USE_LARGEFILE64
+# if __WORDSIZE == 64
+/* Note stat64 is the same shape as stat.  */
+struct stat64
+  {
+    __dev_t st_dev;		/* Device.  */
+    __ino64_t st_ino;		/* File serial number.	*/
+    __nlink_t st_nlink;		/* Link count.	*/
+    __mode_t st_mode;		/* File mode.  */
+    __uid_t st_uid;		/* User ID of the file's owner.	*/
+    __gid_t st_gid;		/* Group ID of the file's group.*/
+    int pad0;
+    __dev_t st_rdev;		/* Device number, if device.  */
+    __off_t st_size;		/* Size of file, in bytes.  */
+    __time_t st_atime;		/* Time of last access.	 */
+    long int __reserved0;	/* Reserved for atime.nanoseconds.  */
+    __time_t st_mtime;		/* Time of last modification.  */
+    long int __reserved1;	/* Reserved for mtime.nanoseconds.  */
+    __time_t st_ctime;		/* Time of last status change.	*/
+    long int __reserved2;	/* Reserved for ctime.nanoseconds.  */
+    __blksize_t st_blksize;	/* Optimal block size for I/O.	*/
+    __blkcnt64_t st_blocks;	/* Nr. 512-byte blocks allocated.  */
+    long int __unused[3];
+  };
+# else
+struct stat64
+  {
+    __dev_t st_dev;			/* Device.  */
+    unsigned int __pad1;
+
+    __ino_t __st_ino;			/* 32bit file serial number.	*/
+    __mode_t st_mode;			/* File mode.  */
+    __nlink_t st_nlink;			/* Link count.  */
+    __uid_t st_uid;			/* User ID of the file's owner.	*/
+    __gid_t st_gid;			/* Group ID of the file's group.*/
+    __dev_t st_rdev;			/* Device number, if device.  */
+    unsigned int __pad2;
+    __off64_t st_size;			/* Size of file, in bytes.  */
+    __blksize_t st_blksize;		/* Optimal block size for I/O.  */
+
+    __blkcnt64_t st_blocks;		/* Number 512-byte blocks allocated. */
+    __time_t st_atime;			/* Time of last access.  */
+    unsigned long int __unused1;
+    __time_t st_mtime;			/* Time of last modification.  */
+    unsigned long int __unused2;
+    __time_t st_ctime;			/* Time of last status change.  */
+    unsigned long int __unused3;
+    __ino64_t st_ino;			/* File serial number.		*/
+  };
+# endif
+#endif
+
+/* Tell code we have these members.  */
+#define	_STATBUF_ST_BLKSIZE
+#define _STATBUF_ST_RDEV
+
+/* Encoding of the file mode.  */
+
+#define	__S_IFMT	0170000	/* These bits determine file type.  */
+
+/* File types.  */
+#define	__S_IFDIR	0040000	/* Directory.  */
+#define	__S_IFCHR	0020000	/* Character device.  */
+#define	__S_IFBLK	0060000	/* Block device.  */
+#define	__S_IFREG	0100000	/* Regular file.  */
+#define	__S_IFIFO	0010000	/* FIFO.  */
+#define	__S_IFLNK	0120000	/* Symbolic link.  */
+#define	__S_IFSOCK	0140000	/* Socket.  */
+
+/* POSIX.1b objects.  Note that these macros always evaluate to zero.  But
+   they do it by enforcing the correct use of the macros.  */
+#define __S_TYPEISMQ(buf)  ((buf)->st_mode - (buf)->st_mode)
+#define __S_TYPEISSEM(buf) ((buf)->st_mode - (buf)->st_mode)
+#define __S_TYPEISSHM(buf) ((buf)->st_mode - (buf)->st_mode)
+
+/* Protection bits.  */
+
+#define	__S_ISUID	04000	/* Set user ID on execution.  */
+#define	__S_ISGID	02000	/* Set group ID on execution.  */
+#define	__S_ISVTX	01000	/* Save swapped text after use (sticky).  */
+#define	__S_IREAD	0400	/* Read by owner.  */
+#define	__S_IWRITE	0200	/* Write by owner.  */
+#define	__S_IEXEC	0100	/* Execute by owner.  */