aboutsummaryrefslogtreecommitdiff
path: root/conform/data/sys/stat.h-data
blob: b0e10a4c7f4a75f095103395d6b542c06ffa1acc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#ifndef ISO

type {struct stat}

element {struct stat} dev_t st_dev
element {struct stat} ino_t st_ino
element {struct stat} mode_t st_mode
element {struct stat} nlink_t st_nlink
element {struct stat} uid_t st_uid
element {struct stat} gid_t st_gid
#if !defined POSIX && !defined POSIX2008
element {struct stat} dev_t st_rdev
#endif
element {struct stat} off_t st_size
element {struct stat} time_t st_atime
element {struct stat} time_t st_mtime
element {struct stat} time_t st_ctime
#if !defined POSIX && !defined POSIX2008
element {struct stat} blksize_t st_blksize
element {struct stat} blkcnt_t st_blocks
#endif

#if !defined POSIX && !defined POSIX2008
type blkcnt_t
type blksize_t
#endif
type dev_t
type ino_t
type mode_t
type nlink_t
type uid_t
type gid_t
type off_t
type time_t
# if defined XOPEN2K8 || defined POSIX2008
type {struct timespec}
element {struct timespec} time_t tv_sec
element {struct timespec} long tv_nsec
# endif

#if !defined POSIX && !defined POSIX2008
constant S_IFMT
constant S_IFBLK
constant S_IFCHR
constant S_IFIFO
constant S_IFREG
constant S_IFDIR
constant S_IFLNK
constant S_IFSOCK
#endif

constant S_IRWXU
constant S_IRUSR
constant S_IWUSR
constant S_IXUSR
constant S_IRWXG
constant S_IWGRP
constant S_IXGRP
constant S_IRWXO
constant S_IROTH
constant S_IWOTH
constant S_IXOTH
constant S_ISUID
constant S_ISGID
#if !defined POSIX && !defined POSIX2008
constant S_ISVTX
#endif

#if !defined POSIX
macro S_ISBLK
macro S_ISCHR
macro S_ISDIR
macro S_ISFIFO
macro S_ISREG
macro S_ISLNK
macro S_ISSOCK
#endif

// How to represent optional tests?
optional-macro S_TYPEISMQ
optional-macro S_TYPEISSEM
optional-macro S_TYPEISSHM
optional-macro S_TYPEISTMO

# if defined XOPEN2K8 || defined POSIX2008
constant UTIME_NOW
constant UTIME_OMIT
# endif

function int chmod (const char*, mode_t)
function int fchmod (int, mode_t)
# if defined XOPEN2K8 || defined POSIX2008
function int fchmodat (int, const char*, mode_t, int)
# endif
function int fstat (int, struct stat*)
# if defined XOPEN2K8 || defined POSIX2008
function int fstatat (int, const char*, struct stat*, int)
function int futimens (int, const struct timespec[2])
# endif
function int lstat (const char*, struct stat*)
function int mkdir (const char*, mode_t)
# if defined XOPEN2K8 || defined POSIX2008
function int mkdirat (int, const char*, mode_t)
# endif
function int mkfifo (const char*, mode_t)
# if defined XOPEN2K8 || defined POSIX2008
function int mkfifoat (int, const char*, mode_t)
# endif
# if !defined POSIX && !defined POSIX2008
function int mknod (const char*, mode_t, dev_t)
function int mknodat (int, const char*, mode_t, dev_t)
# endif
function int stat (const char*, struct stat*)
function mode_t umask (mode_t)
# if defined XOPEN2K8 || defined POSIX2008
function int utimensat (int, const char*, const struct timespec[2], int)
# endif

allow st_*
allow S_*
allow *_t
#endif