diff options
Diffstat (limited to 'include/fcntl.h')
-rw-r--r-- | include/fcntl.h | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/include/fcntl.h b/include/fcntl.h index adcd7ef4b..ce15ceaf6 100644 --- a/include/fcntl.h +++ b/include/fcntl.h @@ -67,6 +67,11 @@ __BEGIN_DECLS # define AT_NO_AUTOMOUNT 0x800 /* Suppress terminal automount traversal. */ # define AT_EMPTY_PATH 0x1000 /* Allow empty relative pathname. */ +# define AT_STATX_SYNC_TYPE 0x6000 +# define AT_STATX_SYNC_AS_STAT 0x0000 +# define AT_STATX_FORCE_SYNC 0x2000 +# define AT_STATX_DONT_SYNC 0x4000 +# define AT_RECURSIVE 0x8000 /* Apply to the entire subtree. */ # endif # define AT_EACCESS 0x200 /* Test access permitted for effective IDs, not real IDs. */ @@ -99,8 +104,9 @@ libc_hidden_proto(fcntl64) #endif /* Open FILE and return a new file descriptor for it, or -1 on error. - OFLAG determines the type of access used. If O_CREAT is on OFLAG, - the third argument is taken as a `mode_t', the mode of the created file. + OFLAG determines the type of access used. If O_CREAT or O_TMPFILE + is on OFLAG, the third argument is taken as a `mode_t', the mode of + the created file. This function is a cancellation point and therefore not marked with __THROW. */ @@ -276,6 +282,40 @@ extern int fallocate64 (int __fd, int __mode, __off64_t __offset, __off64_t __le # endif #endif +#if (defined __UCLIBC_LINUX_SPECIFIC__ && defined __USE_GNU) +struct file_handle { + unsigned handle_bytes; + int handle_type; + unsigned char f_handle[]; +}; + +#define MAX_HANDLE_SZ 128 + +int name_to_handle_at(int dirfd, const char *pathname, + struct file_handle *handle, int *mount_id, int flags); +int open_by_handle_at(int mount_fd, struct file_handle *handle, int flags); +#endif + +#ifdef __USE_GNU +# define F_SETOWN_EX 15 /* Get owner (thread receiving SIGIO). */ +# define F_GETOWN_EX 16 /* Set owner (thread receiving SIGIO). */ +/* Owner types. */ +enum __pid_type + { + F_OWNER_TID = 0, /* Kernel thread. */ + F_OWNER_PID, /* Process. */ + F_OWNER_PGRP, /* Process group. */ + F_OWNER_GID = F_OWNER_PGRP /* Alternative, obsolete name. */ + }; + +/* Structure to use with F_GETOWN_EX and F_SETOWN_EX. */ +struct f_owner_ex + { + enum __pid_type type; /* Owner type of ID. */ + __pid_t pid; /* ID of owner. */ + }; +#endif + __END_DECLS #endif /* fcntl.h */ |