blob: d0f19c8565f98befeabb72037a781aaca302f8e2 [file] [log] [blame]
Nick Kralevicha67e4de2013-01-14 11:28:26 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
Ben Cheng655a7c02013-10-16 16:09:24 -070019#ifndef _UAPI_LINUX_FCNTL_H
20#define _UAPI_LINUX_FCNTL_H
21#include <asm/fcntl.h>
22#define F_SETLEASE (F_LINUX_SPECIFIC_BASE + 0)
Ben Cheng655a7c02013-10-16 16:09:24 -070023#define F_GETLEASE (F_LINUX_SPECIFIC_BASE + 1)
24#define F_CANCELLK (F_LINUX_SPECIFIC_BASE + 5)
25#define F_DUPFD_CLOEXEC (F_LINUX_SPECIFIC_BASE + 6)
Tao Baod7db5942015-01-28 10:07:51 -080026#define F_NOTIFY (F_LINUX_SPECIFIC_BASE + 2)
Ben Cheng655a7c02013-10-16 16:09:24 -070027#define F_SETPIPE_SZ (F_LINUX_SPECIFIC_BASE + 7)
28#define F_GETPIPE_SZ (F_LINUX_SPECIFIC_BASE + 8)
Christopher Ferris82d75042015-01-26 10:57:07 -080029#define F_ADD_SEALS (F_LINUX_SPECIFIC_BASE + 9)
30#define F_GET_SEALS (F_LINUX_SPECIFIC_BASE + 10)
Christopher Ferris82d75042015-01-26 10:57:07 -080031#define F_SEAL_SEAL 0x0001
32#define F_SEAL_SHRINK 0x0002
33#define F_SEAL_GROW 0x0004
34#define F_SEAL_WRITE 0x0008
Christopher Ferris24f97eb2019-05-20 12:58:13 -070035#define F_SEAL_FUTURE_WRITE 0x0010
Christopher Ferris1308ad32017-11-14 17:32:13 -080036#define F_GET_RW_HINT (F_LINUX_SPECIFIC_BASE + 11)
37#define F_SET_RW_HINT (F_LINUX_SPECIFIC_BASE + 12)
38#define F_GET_FILE_RW_HINT (F_LINUX_SPECIFIC_BASE + 13)
39#define F_SET_FILE_RW_HINT (F_LINUX_SPECIFIC_BASE + 14)
Christopher Ferrisd32ca142020-02-04 16:16:51 -080040#define RWH_WRITE_LIFE_NOT_SET 0
Christopher Ferris1308ad32017-11-14 17:32:13 -080041#define RWH_WRITE_LIFE_NONE 1
42#define RWH_WRITE_LIFE_SHORT 2
43#define RWH_WRITE_LIFE_MEDIUM 3
44#define RWH_WRITE_LIFE_LONG 4
45#define RWH_WRITE_LIFE_EXTREME 5
Christopher Ferrisd32ca142020-02-04 16:16:51 -080046#define RWF_WRITE_LIFE_NOT_SET RWH_WRITE_LIFE_NOT_SET
Ben Cheng655a7c02013-10-16 16:09:24 -070047#define DN_ACCESS 0x00000001
48#define DN_MODIFY 0x00000002
Ben Cheng655a7c02013-10-16 16:09:24 -070049#define DN_CREATE 0x00000004
50#define DN_DELETE 0x00000008
51#define DN_RENAME 0x00000010
52#define DN_ATTRIB 0x00000020
Ben Cheng655a7c02013-10-16 16:09:24 -070053#define DN_MULTISHOT 0x80000000
Tao Baod7db5942015-01-28 10:07:51 -080054#define AT_FDCWD - 100
Ben Cheng655a7c02013-10-16 16:09:24 -070055#define AT_SYMLINK_NOFOLLOW 0x100
56#define AT_REMOVEDIR 0x200
Ben Cheng655a7c02013-10-16 16:09:24 -070057#define AT_SYMLINK_FOLLOW 0x400
58#define AT_NO_AUTOMOUNT 0x800
59#define AT_EMPTY_PATH 0x1000
Christopher Ferris525ce912017-07-26 13:12:53 -070060#define AT_STATX_SYNC_TYPE 0x6000
61#define AT_STATX_SYNC_AS_STAT 0x0000
62#define AT_STATX_FORCE_SYNC 0x2000
63#define AT_STATX_DONT_SYNC 0x4000
Christopher Ferrisaeddbcf2019-07-08 12:45:46 -070064#define AT_RECURSIVE 0x8000
Nick Kralevicha67e4de2013-01-14 11:28:26 -080065#endif