From e2575a4f40a6bdee0a3bb74769a53135a8e4bd1d Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 6 May 1998 09:52:22 +0000 Subject: Update. 1998-05-06 09:49 Ulrich Drepper * sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h: Add LFS support. Use correct types. * sysdeps/unix/sysv/sysv4/solaris2/bits/types.h: New file. 1998-05-05 Andreas Schwab * Makerules (elide-routines.*): Fix assignments. (do-makelib): Fix typo. ($(subdirs-stamps)): Depend on $(objpfx)stamp.* if in parent makefile. 1998-05-04 Andreas Schwab * Makefile (sysdep-subdirs, subdirs, $(common-objpfx)sysd-dirs, $(objpfx)sysd-dirs): Move them... * Makeconfig: ... here. * Makerules (subdirs-stamps, subdirs-stamp-o): Always define. (stubs): Fix circular depedency. (do-makelib): Clean up. (lib): Don't depend on lib-noranlib. ($(objpfx)stamp.oS): Remove special case for empty static-only-routines. (elide-routines.o): Add $(static-only-routines). (elide-routines$o): Define this instead of elide-routines.$o. * manual/Makefile (stubs): Fix circular dependency. 1998-05-05 Andreas Schwab * libio/Makefile (routines): Remove duplicate oldiofclose. --- sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h | 53 ++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 10 deletions(-) (limited to 'sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h') diff --git a/sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h b/sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h index c6048a9277..ef93b7be27 100644 --- a/sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h +++ b/sysdeps/unix/sysv/sysv4/solaris2/bits/stat.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1993, 1996, 1997 Free Software Foundation, Inc. +/* Copyright (C) 1993, 1996, 1997, 1998 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 @@ -22,19 +22,21 @@ #include +/* Length of array allocated for file system type name. */ +#define _ST_FSTYPSZ 16 + + /* Structure describing file characteristics. */ struct stat { - unsigned long int st_dev; + __dev_t st_dev; long int st_filler1[3]; __ino_t st_ino; /* File serial number. */ - unsigned long int st_mode; /* File mode. */ - /* This is unsigned long instead of __nlink_t, since SVR4 has - a long nlink_t, not a short one. */ - unsigned long int st_nlink; /* Link count. */ + __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.*/ - unsigned long int st_rdev; /* Device number, if device. */ + __dev_t st_rdev; /* Device number, if device. */ long int st_filler2[2]; __off_t st_size; /* Size of file, in bytes. */ @@ -48,14 +50,45 @@ struct stat __time_t st_ctime; /* Time of last status change. */ unsigned long int st_ctime_usec; - __blkcnt_t st_blksize; /* Optimal block size for I/O. */ + long int st_blksize; /* Optimal block size for I/O. */ #define _STATBUF_ST_BLKSIZE /* Tell code we have this member. */ - long int st_blocks; /* Number of 512-byte blocks allocated. */ - char st_fstype[16]; + __blkcnt_t st_blocks; /* Number of 512-byte blocks allocated. */ + char st_fstype[_ST_FSTYPSZ]; long int st_filler4[8]; }; +#ifdef __USE_LARGEFILE64 +/* struct stat64 has the shape as stat */ +struct stat64 + { + __dev_t st_dev; /* Device */ + long int st_filler1[2]; + __ino64_t st_ino; /* 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 */ + long int st_filler2; + + __off64_t st_size; /* Size of file, in bytes. */ + + __time_t st_atime; /* Time of last access */ + unsigned long int st_atime_usec; + __time_t st_mtime; /* Time of last modification */ + unsigned long int st_mtime_usec; + __time_t st_ctime; /* Time of last status change */ + unsigned long int st_ctime_usec; + + long int st_blksize; + __blkcnt64_t st_blocks; + char st_fstype[_ST_FSTYPSZ]; + long int st_filler3[8]; +}; +#endif + + /* Encoding of the file mode. */ #define __S_IFMT 0170000 /* These bits determine file type. */ -- cgit v1.2.3-70-g09d2