1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- #include <stdlib.h>
- #include <errno.h>
- #include <sys/shm.h>
- #include "ipc.h"
- #ifdef L_shmat
- void *
- shmat (shmid, shmaddr, shmflg)
- int shmid;
- const void *shmaddr;
- int shmflg;
- {
- int retval;
- unsigned long raddr;
- retval = __ipc(IPCOP_shmat, shmid, shmflg, (int) &raddr, (void *) shmaddr);
- return ((unsigned long int) retval > -(unsigned long int) SHMLBA
- ? (void *) retval : (void *) raddr);
- }
- #endif
- #ifdef L_shmctl
- int
- shmctl (shmid, cmd, buf)
- int shmid;
- int cmd;
- struct shmid_ds *buf;
- {
- return __ipc(IPCOP_shmctl, shmid, cmd, 0, buf);
- }
- #endif
- #ifdef L_shmdt
- int
- shmdt (shmaddr)
- const void *shmaddr;
- {
- return __ipc(IPCOP_shmdt, 0, 0, 0, (void *) shmaddr);
- }
- #endif
- #ifdef L_shmget
- int
- shmget (key, size, shmflg)
- key_t key;
- size_t size;
- int shmflg;
- {
- return __ipc(IPCOP_shmget, key, size, shmflg, NULL);
- }
- #endif
|