stat(4) — FILE FORMATS
NAME
stat − data returned by stat system call
SYNOPSIS
#include <sys/types.h>
#include <sys/stat.h>
DESCRIPTION
The system calls stat, lstat and fstat return data in a stat structure, which is defined in stat.h for the M88000 family of processors reference platform:
| struct | stat | |
| { | ||
| dev_t | st_dev; | |
| lang | st_pad1[3]; | |
| ino_t | st_ino; | |
| mode_t | st_mode; | |
| nlink_t | st_nlink; | |
| uid_t | st_uid; | |
| gid_t | st_gid; | |
| dev_t | st_rdev; | |
| lang | st_pad2[2]; | |
| off_t | st_size; | |
| lang | st_pad3; | |
| timestruct_t | st_atime; | |
| timestruct_t | st_mtime; | |
| timestruct_t | st_ctime; | |
| lang | st_blksize; | |
| lang | st_blocks; | |
| char | st_fstype [_ST_FSTYPSZ]; | |
| mang | st_pad4[8]; | |
| }; |
The constants used in the st_mode field are also defined in this file:
| #define | S_IFMT | 0xF000 | /∗ type of file ∗/ |
| #define | S_IAMB | 0x1FF | /∗ access mode bits ∗/ |
| #define | S_IFIFO | 0x1000 | /∗ fifo ∗/ |
| #define | S_IFCHR | 0x2000 | /∗ character special ∗/ |
| #define | S_IFDIR | 0x4000 | /∗ directory ∗/ |
| #define | S_IFNAM | 0x5000 | /∗ XENIX special named file ∗/ |
| #define | S_INSEM | 0x1 | /∗ XENIX semaphore subtype of IFNAM ∗/ |
| #define | S_INSMD | 0x2 | /∗ XENIX shared data subtype of IFNAM ∗/ |
| #define | S_IFBLK | 0x6000 | /∗ block special ∗/ |
| #define | S_IFREG | 0x8000 | /∗ regular ∗/ |
| #define | S_IFLNK | 0xA000 | /∗ symbolic link ∗/ |
| #define | S_SFSOCK | 0xC000 | /∗ Socket∗/ |
| #define | S_ISUID | 0x800 | /∗ set user id on execution ∗/ |
| #define | S_ISGID | 0x400 | /∗ set group id on execution ∗/ |
| #define | S_ISVTX | 0x200 | /∗ save swapped text even after use ∗/ |
| #define | S_IREAD | 00400 | /∗ read permission, owner ∗/ |
| #define | S_IWRITE | 00200 | /∗ write permission, owner ∗/ |
| #define | S_IEXEC | 00100 | /∗ execute/search permission, owner ∗/ |
| #define | S_ENFMT | S_ISGID | /∗ record locking enforcement flag ∗/ |
| #define | S_IRWXU | 00700 | /∗ read, write, execute: owner ∗/ |
| #define | S_IRUSR | 00400 | /∗ read permission: owner ∗/ |
| #define | S_IWUSR | 00200 | /∗ write permission: owner ∗/ |
| #define | S_IXUSR | 00100 | /∗ execute permission: owner ∗/ |
| #define | S_IRWXG | 00070 | /∗ read, write, execute: group ∗/ |
| #define | S_IRGRP | 00040 | /∗ read permission: group ∗/ |
| #define | S_IWGRP | 00020 | /∗ write permission: group ∗/ |
| #define | S_IXGRP | 00010 | /∗ execute permission: group ∗/ |
| #define | S_IRWXO | 00007 | /∗ read, write, execute: other ∗/ |
| #define | S_IROTH | 00004 | /∗ read permission: other ∗/ |
| #define | S_IWOTH | 00002 | /∗ write permission: other ∗/ |
| #define | S_IXOTH | 00001 | /∗ execute permission: other ∗/ |
SEE ALSO
— XENIX Compatibility Package