svr4_fcntl.h revision 43412
1/* 2 * Copyright (c) 1998 Mark Newton 3 * Copyright (c) 1994 Christos Zoulas 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: 9 * 1. Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 2. Redistributions in binary form must reproduce the above copyright 12 * notice, this list of conditions and the following disclaimer in the 13 * documentation and/or other materials provided with the distribution. 14 * 3. The name of the author may not be used to endorse or promote products 15 * derived from this software without specific prior written permission 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 18 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 19 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29#ifndef _SVR4_FCNTL_H_ 30#define _SVR4_FCNTL_H_ 31 32#include <svr4/svr4_types.h> 33#include <sys/fcntl.h> 34 35#define SVR4_O_RDONLY 0x0000 36#define SVR4_O_WRONLY 0x0001 37#define SVR4_O_RDWR 0x0002 38#define SVR4_O_ACCMODE 0x0003 39#define SVR4_O_NDELAY 0x0004 40#define SVR4_O_APPEND 0x0008 41#define SVR4_O_SYNC 0x0010 42#define SVR4_O_NONBLOCK 0x0080 43#define SVR4_O_CREAT 0x0100 44#define SVR4_O_TRUNC 0x0200 45#define SVR4_O_EXCL 0x0400 46#define SVR4_O_NOCTTY 0x0800 47#define SVR4_O_PRIV 0x1000 48 49 50#define SVR4_FD_CLOEXEC 1 51 52#define SVR4_F_DUPFD 0 53#define SVR4_F_GETFD 1 54#define SVR4_F_SETFD 2 55#define SVR4_F_GETFL 3 56#define SVR4_F_SETFL 4 57#define SVR4_F_GETLK_SVR3 5 58#define SVR4_F_SETLK 6 59#define SVR4_F_SETLKW 7 60#define SVR4_F_CHKFL 8 61#define SVR4_F_DUP2FD 9 62#define SVR4_F_ALLOCSP 10 63#define SVR4_F_FREESP 11 64 65#define SVR4_F_ISSTREAM 13 66#define SVR4_F_GETLK 14 67#define SVR4_F_PRIV 15 68#define SVR4_F_NPRIV 16 69#define SVR4_F_QUOTACTL 17 70#define SVR4_F_BLOCKS 18 71#define SVR4_F_BLKSIZE 19 72#define SVR4_F_RSETLK 20 73#define SVR4_F_RGETLK 21 74#define SVR4_F_RSETLKW 22 75#define SVR4_F_GETOWN 23 76#define SVR4_F_SETOWN 24 77#define SVR4_F_REVOKE 25 78#define SVR4_F_HASREMOTELOCKS 26 79#define SVR4_F_FREESP64 27 80 81#define SVR4_F_GETLK64 33 82#define SVR4_F_SETLK64 34 83#define SVR4_F_SETLKW64 35 84 85#define SVR4_F_SHARE 40 86#define SVR4_F_UNSHARE 41 87 88#define SVR4_F_CHSIZE_XENIX 0x6000 89#define SVR4_F_RDCHK_XENIX 0x6001 90#define SVR4_F_LK_UNLCK_XENIX 0x6300 91#define SVR4_F_LK_LOCK_XENIX 0x7200 92#define SVR4_F_LK_NBLCK_XENIX 0x6200 93#define SVR4_F_LK_RLCK_XENIX 0x7100 94#define SVR4_F_LK_NBRLCK_XENIX 0x6100 95 96#define SVR4_LK_CMDTYPE(x) (((x) >> 12) & 0x7) 97#define SVR4_LK_LCKTYPE(x) (((x) >> 8) & 0x7) 98 99#define SVR4_F_RDLCK 1 100#define SVR4_F_WRLCK 2 101#define SVR4_F_UNLCK 3 102 103struct svr4_flock_svr3 { 104 short l_type; 105 short l_whence; 106 svr4_off_t l_start; 107 svr4_off_t l_len; 108 short l_sysid; 109 svr4_o_pid_t l_pid; 110}; 111 112 113struct svr4_flock { 114 short l_type; 115 short l_whence; 116 svr4_off_t l_start; 117 svr4_off_t l_len; 118 long l_sysid; 119 svr4_pid_t l_pid; 120 long pad[4]; 121}; 122 123struct svr4_flock64 { 124 short l_type; 125 short l_whence; 126 svr4_off64_t l_start; 127 svr4_off64_t l_len; 128 long l_sysid; 129 svr4_pid_t l_pid; 130 long pad[4]; 131}; 132#endif /* !_SVR4_FCNTL_H_ */ 133