dev_t st_dev Device ID of device containing file.
ino_t st_ino File serial number.
mode_t st_mode Mode of file (see below).
nlink_t st_nlink Number of hard links to the file.
uid_t st_uid User ID of file.
gid_t st_gid Group ID of file.
dev_t st_rdev Device ID (if file is character or block special).
off_t st_size For regular files, the file size in bytes. For symbolic links, the length in bytes of the pathname contained in the symbolic link. For a shared memory object, the length in bytes. For a typed memory object, the length in bytes. For other file types, the use of this field is unspecified.
struct timespec st_atim Last data access timestamp.
struct timespec st_mtim Last data modification timestamp.
struct timespec st_ctim Last file status change timestamp.
blksize_t st_blksize A file system-specific preferred I/O block size for this object. In some file system types, this may vary from file to file.
blkcnt_t st_blocks Number of blocks allocated for this object.
Name | Numeric Value | Description |
|
S_IRWXU | 0700 | Read, write, execute/search by owner. |
S_IRUSR | 0400 | Read permission, owner. |
S_IWUSR | 0200 | Write permission, owner. |
S_IXUSR | 0100 | Execute/search permission, owner. |
|
S_IRWXG | 070 | Read, write, execute/search by group. |
S_IRGRP | 040 | Read permission, group. |
S_IWGRP | 020 | Write permission, group. |
S_IXGRP | 010 | Execute/search permission, group. |
|
S_IRWXO | 07 | Read, write, execute/search by others. |
S_IROTH | 04 | Read permission, others. |
S_IWOTH | 02 | Write permission, others. |
S_IXOTH | 01 | Execute/search permission, others. |
|
S_ISUID | 04000 | Set-user-ID on execution. |
S_ISGID | 02000 | Set-group-ID on execution. |
S_ISVTX | 01000 | On directories, restricted deletion flag. |
int chmod(const char *, mode_t);
int fchmod(int, mode_t);
int fchmodat(int, const char *, mode_t, int);
int fstat(int, struct stat *);
int fstatat(int, const char *restrict, struct stat *restrict, int);
int futimens(int, const struct timespec [2]);
int lstat(const char *restrict, struct stat *restrict);
int mkdir(const char *, mode_t);
int mkdirat(int, const char *, mode_t);
int mkfifo(const char *, mode_t);
int mkfifoat(int, const char *, mode_t);
int mknod(const char *, mode_t, dev_t);
int mknodat(int, const char *, mode_t, dev_t);
int stat(const char *restrict, struct stat *restrict);
mode_t umask(mode_t);
int utimensat(int, const char *, const struct timespec [2], int);