Update to LGPL v2.1.
[jlayton/glibc.git] / sysdeps / unix / sysv / linux / ipc_priv.h
1 /* Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
2    This file is part of the GNU C Library.
3
4    The GNU C Library is free software; you can redistribute it and/or
5    modify it under the terms of the GNU Lesser General Public
6    License as published by the Free Software Foundation; either
7    version 2.1 of the License, or (at your option) any later version.
8
9    The GNU C Library is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12    Lesser General Public License for more details.
13
14    You should have received a copy of the GNU Lesser General Public
15    License along with the GNU C Library; if not, write to the Free
16    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
17    02111-1307 USA.  */
18
19 #include <sys/ipc.h>
20
21 #define __IPC_64        0x100
22
23 struct __old_ipc_perm
24 {
25   __key_t __key;                        /* Key.  */
26   unsigned short int uid;               /* Owner's user ID.  */
27   unsigned short int gid;               /* Owner's group ID.  */
28   unsigned short int cuid;              /* Creator's user ID.  */
29   unsigned short int cgid;              /* Creator's group ID.  */
30   unsigned short int mode;              /* Read/write permission.  */
31   unsigned short int __seq;             /* Sequence number.  */
32 };
33
34
35 __BEGIN_DECLS
36
37 /* The actual system call: all functions are multiplexed by this.  */
38 extern int __syscall_ipc (int __call, int __first, int __second,
39                           int __third, void *__ptr);
40
41 __END_DECLS
42
43 /* The codes for the functions to use the multiplexer `__syscall_ipc'.  */
44 #define IPCOP_semop      1
45 #define IPCOP_semget     2
46 #define IPCOP_semctl     3
47 #define IPCOP_msgsnd    11
48 #define IPCOP_msgrcv    12
49 #define IPCOP_msgget    13
50 #define IPCOP_msgctl    14
51 #define IPCOP_shmat     21
52 #define IPCOP_shmdt     22
53 #define IPCOP_shmget    23
54 #define IPCOP_shmctl    24