Laurent Vivier | 5de7706 | 2018-05-29 21:41:53 +0200 | [diff] [blame] | 1 | /* |
| 2 | * This program is free software; you can redistribute it and/or modify |
| 3 | * it under the terms of the GNU General Public License version 2 as |
| 4 | * published by the Free Software Foundation, or (at your option) any |
| 5 | * later version. See the COPYING file in the top-level directory. |
| 6 | */ |
| 7 | |
| 8 | #ifndef MIPS_TARGET_FCNTL_H |
| 9 | #define MIPS_TARGET_FCNTL_H |
Laurent Vivier | b9acdef | 2018-05-29 21:41:57 +0200 | [diff] [blame] | 10 | |
| 11 | #define TARGET_O_APPEND 0x0008 |
| 12 | #define TARGET_O_DSYNC 0x0010 |
| 13 | #define TARGET_O_NONBLOCK 0x0080 |
| 14 | #define TARGET_O_CREAT 0x0100 /* not fcntl */ |
| 15 | #define TARGET_O_TRUNC 0x0200 /* not fcntl */ |
| 16 | #define TARGET_O_EXCL 0x0400 /* not fcntl */ |
| 17 | #define TARGET_O_NOCTTY 0x0800 /* not fcntl */ |
| 18 | #define TARGET_FASYNC 0x1000 /* fcntl, for BSD compatibility */ |
| 19 | #define TARGET_O_LARGEFILE 0x2000 /* allow large file opens */ |
| 20 | #define TARGET___O_SYNC 0x4000 |
| 21 | #define TARGET_O_DIRECT 0x8000 /* direct disk access hint */ |
| 22 | |
| 23 | #define TARGET_F_GETLK 14 |
| 24 | #define TARGET_F_SETLK 6 |
| 25 | #define TARGET_F_SETLKW 7 |
| 26 | |
| 27 | #define TARGET_F_SETOWN 24 /* for sockets. */ |
| 28 | #define TARGET_F_GETOWN 23 /* for sockets. */ |
| 29 | |
Aleksandar Markovic | bf91367 | 2019-06-28 12:43:36 +0200 | [diff] [blame] | 30 | #if (TARGET_ABI_BITS == 32) |
Aleksandar Markovic | 1272a6c | 2019-06-28 12:43:37 +0200 | [diff] [blame] | 31 | |
| 32 | struct target_flock { |
| 33 | short l_type; |
| 34 | short l_whence; |
| 35 | abi_long l_start; |
| 36 | abi_long l_len; |
| 37 | abi_long l_sysid; |
| 38 | int l_pid; |
| 39 | abi_long pad[4]; |
| 40 | }; |
| 41 | |
| 42 | #define TARGET_HAVE_ARCH_STRUCT_FLOCK |
| 43 | |
Aleksandar Markovic | bf91367 | 2019-06-28 12:43:36 +0200 | [diff] [blame] | 44 | #endif |
Laurent Vivier | b9acdef | 2018-05-29 21:41:57 +0200 | [diff] [blame] | 45 | |
| 46 | #define TARGET_F_GETLK64 33 /* using 'struct flock64' */ |
| 47 | #define TARGET_F_SETLK64 34 |
| 48 | #define TARGET_F_SETLKW64 35 |
| 49 | |
Laurent Vivier | 5de7706 | 2018-05-29 21:41:53 +0200 | [diff] [blame] | 50 | #include "../generic/fcntl.h" |
| 51 | #endif |