From 07e865cc5afb11e6e882e998306ab0f7fb64357e Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Wed, 13 Apr 2011 16:45:43 -0400 Subject: numerous fixes to sysv ipc some of these definitions were just plain wrong, others based on outdated ancient "non-64" versions of the kernel interface. as much as possible has now been moved out of bits/* these changes break abi (the old abi for these functions was wrong), but since they were not working anyway it can hardly matter. --- arch/x86_64/bits/ipc.h | 17 ++--------------- arch/x86_64/bits/msg.h | 13 +++++++++++++ arch/x86_64/bits/shm.h | 9 --------- 3 files changed, 15 insertions(+), 24 deletions(-) create mode 100644 arch/x86_64/bits/msg.h (limited to 'arch/x86_64') diff --git a/arch/x86_64/bits/ipc.h b/arch/x86_64/bits/ipc.h index 04fbefe1..51ad4427 100644 --- a/arch/x86_64/bits/ipc.h +++ b/arch/x86_64/bits/ipc.h @@ -1,25 +1,12 @@ -#define IPC_CREAT 01000 -#define IPC_EXCL 02000 -#define IPC_NOWAIT 04000 - -#define IPC_RMID 0 -#define IPC_SET 1 -#define IPC_STAT 2 -#ifdef _GNU_SOURCE -# define IPC_INFO 3 /* See ipcs. */ -#endif - -#define IPC_PRIVATE ((key_t) 0) - struct ipc_perm { - key_t key; + key_t __ipc_perm_key; uid_t uid; gid_t gid; uid_t cuid; gid_t cgid; mode_t mode; - int seq; + int __ipc_perm_seq; long __pad1; long __pad2; }; diff --git a/arch/x86_64/bits/msg.h b/arch/x86_64/bits/msg.h new file mode 100644 index 00000000..badcf168 --- /dev/null +++ b/arch/x86_64/bits/msg.h @@ -0,0 +1,13 @@ +struct msqid_ds +{ + struct ipc_perm msg_perm; + time_t msg_stime; + time_t msg_rtime; + time_t msg_ctime; + unsigned long msg_cbytes; + msgqnum_t msg_qnum; + msglen_t msg_qbytes; + pid_t msg_lspid; + pid_t msg_lrpid; + unsigned long __unused[2]; +}; diff --git a/arch/x86_64/bits/shm.h b/arch/x86_64/bits/shm.h index bc95a1ca..abf1d506 100644 --- a/arch/x86_64/bits/shm.h +++ b/arch/x86_64/bits/shm.h @@ -1,14 +1,5 @@ #define SHMLBA 4096 -#define SHM_RDONLY 010000 -#define SHM_RND 020000 -#define SHM_REMAP 040000 -#define SHM_EXEC 0100000 - -/* linux extensions */ -#define SHM_LOCK 11 -#define SHM_UNLOCK 12 - struct shmid_ds { struct ipc_perm shm_perm; -- cgit v1.2.1