Files
kaguya 9a9b91c940 user: implement mlibc as the libc, finally.
It's finally done..

Signed-off-by: kaguya <vpshinomiya@protonmail.com>
2026-05-02 03:31:49 -04:00

86 lines
2.0 KiB
C

#ifndef _ABIBITS_FCNTL_H
#define _ABIBITS_FCNTL_H
/* reserve 3 bits for the access mode */
#define O_ACCMODE 0x0007
#define O_EXEC 1
#define O_RDONLY 2
#define O_RDWR 3
#define O_SEARCH 4
#define O_WRONLY 5
/* these flags get their own bit */
#define O_APPEND 0x000008
#define O_CREAT 0x000010
#define O_DIRECTORY 0x000020
#define O_EXCL 0x000040
#define O_NOCTTY 0x000080
#define O_NOFOLLOW 0x000100
#define O_TRUNC 0x000200
#define O_NONBLOCK 0x000400
#define O_DSYNC 0x000800
#define O_RSYNC 0x001000
#define O_SYNC 0x002000
#define O_CLOEXEC 0x004000
#define O_PATH 0x008000
#define O_LARGEFILE 0x010000
#define O_NOATIME 0x020000
#define O_ASYNC 0x040000
#define O_TMPFILE 0x080000
#define O_DIRECT 0x100000
/* constants for fcntl()'s command argument */
#define F_DUPFD 1
#define F_DUPFD_CLOEXEC 2
#define F_GETFD 3
#define F_SETFD 4
#define F_GETFL 5
#define F_SETFL 6
#define F_GETLK 7
#define F_SETLK 8
#define F_SETLK64 F_SETLK
#define F_SETLKW 9
#define F_SETLKW64 F_SETLKW
#define F_GETOWN 10
#define F_SETOWN 11
/* constants for struct flock's l_type member */
#define F_RDLCK 1
#define F_UNLCK 2
#define F_WRLCK 3
/* constants for fcntl()'s additional argument of F_GETFD and F_SETFD */
#define FD_CLOEXEC 1
/* Used by mmap */
#define F_SEAL_SHRINK 0x0002
#define F_SEAL_GROW 0x0004
#define F_SEAL_WRITE 0x0008
#define F_SEAL_SEAL 0x0010
#define F_SETPIPE_SZ 1031
#define F_GETPIPE_SZ 1032
#define F_ADD_SEALS 1033
#define F_GET_SEALS 1034
#define AT_EMPTY_PATH 1
#define AT_SYMLINK_FOLLOW 2
#define AT_SYMLINK_NOFOLLOW 4
#define AT_REMOVEDIR 8
#define AT_EACCESS 512
#define AT_NO_AUTOMOUNT 1024
#define AT_STATX_SYNC_AS_STAT 0
#define AT_STATX_FORCE_SYNC 2048
#define AT_STATX_DONT_SYNC 4096
#define AT_STATX_SYNC_TYPE 6144
#define AT_FDCWD -100
#define POSIX_FADV_NORMAL 1
#define POSIX_FADV_SEQUENTIAL 2
#define POSIX_FADV_NOREUSE 3
#define POSIX_FADV_DONTNEED 4
#define POSIX_FADV_WILLNEED 5
#define POSIX_FADV_RANDOM 6
#endif /* _ABITBITS_FCNTL_H */