linux_file.h revision 283437
158713Sjhb/*- 258713Sjhb * Copyright (c) 2007 Roman Divacky 358713Sjhb * All rights reserved. 458713Sjhb * 558713Sjhb * Redistribution and use in source and binary forms, with or without 658713Sjhb * modification, are permitted provided that the following conditions 758713Sjhb * are met: 858713Sjhb * 1. Redistributions of source code must retain the above copyright 958713Sjhb * notice, this list of conditions and the following disclaimer. 1058713Sjhb * 2. Redistributions in binary form must reproduce the above copyright 1158713Sjhb * notice, this list of conditions and the following disclaimer in the 1258713Sjhb * documentation and/or other materials provided with the distribution. 1358713Sjhb * 1458713Sjhb * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 1558713Sjhb * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1658713Sjhb * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1758713Sjhb * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 1858713Sjhb * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1958713Sjhb * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2058713Sjhb * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2158713Sjhb * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2258713Sjhb * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2358713Sjhb * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2458713Sjhb * SUCH DAMAGE. 2558713Sjhb * 2658713Sjhb * $FreeBSD: head/sys/compat/linux/linux_file.h 283437 2015-05-24 16:31:44Z dchagin $ 2758713Sjhb */ 2858713Sjhb 2958713Sjhb#ifndef _LINUX_FILE_H_ 3058713Sjhb#define _LINUX_FILE_H_ 3158713Sjhb 3258713Sjhb#define LINUX_AT_FDCWD -100 3358713Sjhb#define LINUX_AT_SYMLINK_NOFOLLOW 0x100 3458713Sjhb#define LINUX_AT_EACCESS 0x200 3558713Sjhb#define LINUX_AT_REMOVEDIR 0x200 3658713Sjhb#define LINUX_AT_SYMLINK_FOLLOW 0x400 3758713Sjhb 3858713Sjhb/* 3958713Sjhb * posix_fadvise advice 4069391Sps */ 4158713Sjhb#define LINUX_POSIX_FADV_NORMAL 0 4258713Sjhb#define LINUX_POSIX_FADV_RANDOM 1 4358713Sjhb#define LINUX_POSIX_FADV_SEQUENTIAL 2 4458713Sjhb#define LINUX_POSIX_FADV_WILLNEED 3 4558713Sjhb#define LINUX_POSIX_FADV_DONTNEED 4 4658713Sjhb#define LINUX_POSIX_FADV_NOREUSE 5 4758713Sjhb 4858713Sjhb/* 4958713Sjhb * mount flags 5058713Sjhb */ 5158713Sjhb#define LINUX_MS_RDONLY 0x0001 5258713Sjhb#define LINUX_MS_NOSUID 0x0002 5358713Sjhb#define LINUX_MS_NODEV 0x0004 5458713Sjhb#define LINUX_MS_NOEXEC 0x0008 5558713Sjhb#define LINUX_MS_REMOUNT 0x0020 5669391Sps 5769391Sps/* 5869391Sps * common open/fcntl flags 5969391Sps */ 6058713Sjhb#define LINUX_O_RDONLY 00000000 6158713Sjhb#define LINUX_O_WRONLY 00000001 6258713Sjhb#define LINUX_O_RDWR 00000002 6358713Sjhb#define LINUX_O_ACCMODE 00000003 6458713Sjhb#define LINUX_O_CREAT 00000100 6558713Sjhb#define LINUX_O_EXCL 00000200 6658713Sjhb#define LINUX_O_NOCTTY 00000400 6758713Sjhb#define LINUX_O_TRUNC 00001000 6858713Sjhb#define LINUX_O_APPEND 00002000 6958713Sjhb#define LINUX_O_NONBLOCK 00004000 7058713Sjhb#define LINUX_O_NDELAY LINUX_O_NONBLOCK 7169391Sps#define LINUX_O_SYNC 00010000 7269391Sps#define LINUX_FASYNC 00020000 7369391Sps#define LINUX_O_DIRECT 00040000 /* Direct disk access hint */ 7469391Sps#define LINUX_O_LARGEFILE 00100000 7558713Sjhb#define LINUX_O_DIRECTORY 00200000 /* Must be a directory */ 7658713Sjhb#define LINUX_O_NOFOLLOW 00400000 /* Do not follow links */ 7758713Sjhb#define LINUX_O_NOATIME 01000000 7858713Sjhb#define LINUX_O_CLOEXEC 02000000 7958713Sjhb 8058713Sjhb#define LINUX_F_DUPFD 0 8158713Sjhb#define LINUX_F_GETFD 1 8258713Sjhb#define LINUX_F_SETFD 2 8358713Sjhb#define LINUX_F_GETFL 3 8458713Sjhb#define LINUX_F_SETFL 4 8558713Sjhb#ifndef LINUX_F_GETLK 8658713Sjhb#define LINUX_F_GETLK 5 8758713Sjhb#define LINUX_F_SETLK 6 8858713Sjhb#define LINUX_F_SETLKW 7 8958713Sjhb#endif 9058713Sjhb#ifndef LINUX_F_SETOWN 9158713Sjhb#define LINUX_F_SETOWN 8 9258713Sjhb#define LINUX_F_GETOWN 9 9358713Sjhb#endif 9458713Sjhb 9558713Sjhb#ifndef LINUX_F_RDLCK 9658713Sjhb#define LINUX_F_RDLCK 0 9760821Sjhb#define LINUX_F_WRLCK 1 9858713Sjhb#define LINUX_F_UNLCK 2 9958713Sjhb#endif 10058713Sjhb 10158713Sjhb#endif /* !_LINUX_FILE_H_ */ 10260821Sjhb