diff options
author | Rich Felker <dalias@aerifal.cx> | 2011-04-13 16:45:43 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2011-04-13 16:45:43 -0400 |
commit | 07e865cc5afb11e6e882e998306ab0f7fb64357e (patch) | |
tree | 18e18c2b12ee6d9f7ae91f84bd8374224a736c81 /arch/x86_64 | |
parent | b5b43b6d6245efac10cd0d2b6d23ee8f91d75261 (diff) | |
download | musl-07e865cc5afb11e6e882e998306ab0f7fb64357e.tar.gz musl-07e865cc5afb11e6e882e998306ab0f7fb64357e.tar.bz2 musl-07e865cc5afb11e6e882e998306ab0f7fb64357e.tar.xz musl-07e865cc5afb11e6e882e998306ab0f7fb64357e.zip |
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.
Diffstat (limited to 'arch/x86_64')
-rw-r--r-- | arch/x86_64/bits/ipc.h | 17 | ||||
-rw-r--r-- | arch/x86_64/bits/msg.h | 13 | ||||
-rw-r--r-- | arch/x86_64/bits/shm.h | 9 |
3 files changed, 15 insertions, 24 deletions
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; |