X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=include%2Ffcntl.h;h=f0e5671ee7354166849d4c38583c051df76b0bd8;hp=f826a5e4f50c942d5f811a74fb3d35afcfbb4d99;hb=bac03cdde1137c16b4c194e137310e2748661dcc;hpb=419ae6d5c95629d3ebaff6f1880d52cb027ba924 diff --git a/include/fcntl.h b/include/fcntl.h index f826a5e4..f0e5671e 100644 --- a/include/fcntl.h +++ b/include/fcntl.h @@ -9,6 +9,12 @@ extern "C" { #define __NEED_pid_t #define __NEED_mode_t +#ifdef _GNU_SOURCE +#define __NEED_size_t +#define __NEED_ssize_t +#define __NEED_struct_iovec +#endif + #include #include @@ -87,7 +93,6 @@ int posix_fallocate(int, off_t, off_t); #define FNONBLOCK O_NONBLOCK #define FNDELAY O_NDELAY -#ifndef F_OK #define F_OK 0 #define R_OK 4 #define W_OK 2 @@ -96,11 +101,28 @@ int posix_fallocate(int, off_t, off_t); #define F_LOCK 1 #define F_TLOCK 2 #define F_TEST 3 + int lockf(int, int, off_t); #endif + +#if defined(_GNU_SOURCE) +#define F_OWNER_TID 0 +#define F_OWNER_PID 1 +#define F_OWNER_PGRP 2 +#define F_OWNER_GID 2 +struct f_owner_ex { + int type; + pid_t pid; +}; +#define SPLICE_F_MOVE 1 +#define SPLICE_F_NONBLOCK 2 +#define SPLICE_F_MORE 4 +#define SPLICE_F_GIFT 8 +ssize_t vmsplice(int, const struct iovec *, size_t, unsigned); +ssize_t splice(int, off_t *, int, off_t *, size_t, unsigned); #endif -#ifdef _LARGEFILE64_SOURCE +#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE) #define open64 open #define openat64 openat #define creat64 creat