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