summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordchagin <dchagin@FreeBSD.org>2016-01-09 16:31:10 +0000
committerdchagin <dchagin@FreeBSD.org>2016-01-09 16:31:10 +0000
commit220551826587846e865838bbffb78ba84fcc0a30 (patch)
tree1669a8050b4c1b5c68ee2c6f6ccc5faeb210c636
parentf31e70952fa696f99ce03554a8e4e1a7a7a96931 (diff)
downloadFreeBSD-src-220551826587846e865838bbffb78ba84fcc0a30.zip
FreeBSD-src-220551826587846e865838bbffb78ba84fcc0a30.tar.gz
MFC r283437:
To avoid code duplication move open/fcntl definitions to the MI header file.
-rw-r--r--sys/amd64/linux/linux.h38
-rw-r--r--sys/amd64/linux32/linux.h37
-rw-r--r--sys/compat/linux/linux_file.h44
-rw-r--r--sys/compat/linux/linux_socket.c1
-rw-r--r--sys/i386/linux/linux.h37
5 files changed, 47 insertions, 110 deletions
diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h
index fee2b8d..2ade33c 100644
--- a/sys/amd64/linux/linux.h
+++ b/sys/amd64/linux/linux.h
@@ -407,44 +407,6 @@ struct l_rt_sigframe {
};
/*
- * open/fcntl flags
- */
-#define LINUX_O_RDONLY 00000000
-#define LINUX_O_WRONLY 00000001
-#define LINUX_O_RDWR 00000002
-#define LINUX_O_ACCMODE 00000003
-#define LINUX_O_CREAT 00000100
-#define LINUX_O_EXCL 00000200
-#define LINUX_O_NOCTTY 00000400
-#define LINUX_O_TRUNC 00001000
-#define LINUX_O_APPEND 00002000
-#define LINUX_O_NONBLOCK 00004000
-#define LINUX_O_NDELAY LINUX_O_NONBLOCK
-#define LINUX_O_SYNC 00010000
-#define LINUX_FASYNC 00020000
-#define LINUX_O_DIRECT 00040000 /* Direct disk access hint */
-#define LINUX_O_LARGEFILE 00100000
-#define LINUX_O_DIRECTORY 00200000 /* Must be a directory */
-#define LINUX_O_NOFOLLOW 00400000 /* Do not follow links */
-#define LINUX_O_NOATIME 01000000
-#define LINUX_O_CLOEXEC 02000000
-
-#define LINUX_F_DUPFD 0
-#define LINUX_F_GETFD 1
-#define LINUX_F_SETFD 2
-#define LINUX_F_GETFL 3
-#define LINUX_F_SETFL 4
-#define LINUX_F_GETLK 5
-#define LINUX_F_SETLK 6
-#define LINUX_F_SETLKW 7
-#define LINUX_F_SETOWN 8
-#define LINUX_F_GETOWN 9
-
-#define LINUX_F_RDLCK 0
-#define LINUX_F_WRLCK 1
-#define LINUX_F_UNLCK 2
-
-/*
* mount flags
*/
#define LINUX_MS_RDONLY 0x0001
diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h
index 67c1750..0359738 100644
--- a/sys/amd64/linux32/linux.h
+++ b/sys/amd64/linux32/linux.h
@@ -520,47 +520,12 @@ struct l_rt_sigframe {
} __packed;
/*
- * open/fcntl flags
+ * arch specific open/fcntl flags
*/
-#define LINUX_O_RDONLY 00000000
-#define LINUX_O_WRONLY 00000001
-#define LINUX_O_RDWR 00000002
-#define LINUX_O_ACCMODE 00000003
-#define LINUX_O_CREAT 00000100
-#define LINUX_O_EXCL 00000200
-#define LINUX_O_NOCTTY 00000400
-#define LINUX_O_TRUNC 00001000
-#define LINUX_O_APPEND 00002000
-#define LINUX_O_NONBLOCK 00004000
-#define LINUX_O_NDELAY LINUX_O_NONBLOCK
-#define LINUX_O_SYNC 00010000
-#define LINUX_FASYNC 00020000
-#define LINUX_O_DIRECT 00040000 /* Direct disk access hint */
-#define LINUX_O_LARGEFILE 00100000
-#define LINUX_O_DIRECTORY 00200000 /* Must be a directory */
-#define LINUX_O_NOFOLLOW 00400000 /* Do not follow links */
-#define LINUX_O_NOATIME 01000000
-#define LINUX_O_CLOEXEC 02000000
-
-#define LINUX_F_DUPFD 0
-#define LINUX_F_GETFD 1
-#define LINUX_F_SETFD 2
-#define LINUX_F_GETFL 3
-#define LINUX_F_SETFL 4
-#define LINUX_F_GETLK 5
-#define LINUX_F_SETLK 6
-#define LINUX_F_SETLKW 7
-#define LINUX_F_SETOWN 8
-#define LINUX_F_GETOWN 9
-
#define LINUX_F_GETLK64 12
#define LINUX_F_SETLK64 13
#define LINUX_F_SETLKW64 14
-#define LINUX_F_RDLCK 0
-#define LINUX_F_WRLCK 1
-#define LINUX_F_UNLCK 2
-
union l_semun {
l_int val;
l_uintptr_t buf;
diff --git a/sys/compat/linux/linux_file.h b/sys/compat/linux/linux_file.h
index 2d3106f..b4a0526 100644
--- a/sys/compat/linux/linux_file.h
+++ b/sys/compat/linux/linux_file.h
@@ -54,4 +54,48 @@
#define LINUX_MS_NOEXEC 0x0008
#define LINUX_MS_REMOUNT 0x0020
+/*
+ * common open/fcntl flags
+ */
+#define LINUX_O_RDONLY 00000000
+#define LINUX_O_WRONLY 00000001
+#define LINUX_O_RDWR 00000002
+#define LINUX_O_ACCMODE 00000003
+#define LINUX_O_CREAT 00000100
+#define LINUX_O_EXCL 00000200
+#define LINUX_O_NOCTTY 00000400
+#define LINUX_O_TRUNC 00001000
+#define LINUX_O_APPEND 00002000
+#define LINUX_O_NONBLOCK 00004000
+#define LINUX_O_NDELAY LINUX_O_NONBLOCK
+#define LINUX_O_SYNC 00010000
+#define LINUX_FASYNC 00020000
+#define LINUX_O_DIRECT 00040000 /* Direct disk access hint */
+#define LINUX_O_LARGEFILE 00100000
+#define LINUX_O_DIRECTORY 00200000 /* Must be a directory */
+#define LINUX_O_NOFOLLOW 00400000 /* Do not follow links */
+#define LINUX_O_NOATIME 01000000
+#define LINUX_O_CLOEXEC 02000000
+
+#define LINUX_F_DUPFD 0
+#define LINUX_F_GETFD 1
+#define LINUX_F_SETFD 2
+#define LINUX_F_GETFL 3
+#define LINUX_F_SETFL 4
+#ifndef LINUX_F_GETLK
+#define LINUX_F_GETLK 5
+#define LINUX_F_SETLK 6
+#define LINUX_F_SETLKW 7
+#endif
+#ifndef LINUX_F_SETOWN
+#define LINUX_F_SETOWN 8
+#define LINUX_F_GETOWN 9
+#endif
+
+#ifndef LINUX_F_RDLCK
+#define LINUX_F_RDLCK 0
+#define LINUX_F_WRLCK 1
+#define LINUX_F_UNLCK 2
+#endif
+
#endif /* !_LINUX_FILE_H_ */
diff --git a/sys/compat/linux/linux_socket.c b/sys/compat/linux/linux_socket.c
index 99537e5..5d986ab 100644
--- a/sys/compat/linux/linux_socket.c
+++ b/sys/compat/linux/linux_socket.c
@@ -70,6 +70,7 @@ __FBSDID("$FreeBSD$");
#include <machine/../linux/linux.h>
#include <machine/../linux/linux_proto.h>
#endif
+#include <compat/linux/linux_file.h>
#include <compat/linux/linux_socket.h>
#include <compat/linux/linux_util.h>
diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h
index 5e23d07..cffa5c2 100644
--- a/sys/i386/linux/linux.h
+++ b/sys/i386/linux/linux.h
@@ -497,47 +497,12 @@ struct l_rt_sigframe {
extern struct sysentvec linux_sysvec;
/*
- * open/fcntl flags
+ * arch specific open/fcntl flags
*/
-#define LINUX_O_RDONLY 00000000
-#define LINUX_O_WRONLY 00000001
-#define LINUX_O_RDWR 00000002
-#define LINUX_O_ACCMODE 00000003
-#define LINUX_O_CREAT 00000100
-#define LINUX_O_EXCL 00000200
-#define LINUX_O_NOCTTY 00000400
-#define LINUX_O_TRUNC 00001000
-#define LINUX_O_APPEND 00002000
-#define LINUX_O_NONBLOCK 00004000
-#define LINUX_O_NDELAY LINUX_O_NONBLOCK
-#define LINUX_O_SYNC 00010000
-#define LINUX_FASYNC 00020000
-#define LINUX_O_DIRECT 00040000 /* Direct disk access hint */
-#define LINUX_O_LARGEFILE 00100000
-#define LINUX_O_DIRECTORY 00200000 /* Must be a directory */
-#define LINUX_O_NOFOLLOW 00400000 /* Do not follow links */
-#define LINUX_O_NOATIME 01000000
-#define LINUX_O_CLOEXEC 02000000
-
-#define LINUX_F_DUPFD 0
-#define LINUX_F_GETFD 1
-#define LINUX_F_SETFD 2
-#define LINUX_F_GETFL 3
-#define LINUX_F_SETFL 4
-#define LINUX_F_GETLK 5
-#define LINUX_F_SETLK 6
-#define LINUX_F_SETLKW 7
-#define LINUX_F_SETOWN 8
-#define LINUX_F_GETOWN 9
-
#define LINUX_F_GETLK64 12
#define LINUX_F_SETLK64 13
#define LINUX_F_SETLKW64 14
-#define LINUX_F_RDLCK 0
-#define LINUX_F_WRLCK 1
-#define LINUX_F_UNLCK 2
-
union l_semun {
l_int val;
struct l_semid_ds *buf;
OpenPOWER on IntegriCloud