OLD | NEW |
1 #include <sys/shm.h> | 1 #include <sys/shm.h> |
2 #include "syscall.h" | 2 #include "syscall.h" |
3 #include "ipc.h" | 3 #include "ipc.h" |
4 | 4 |
5 #ifdef SYS_shmat | 5 #ifdef SYS_shmat |
6 void *shmat(int id, const void *addr, int flag) | 6 void* shmat(int id, const void* addr, int flag) { |
7 { | 7 return (void*)syscall(SYS_shmat, id, addr, flag); |
8 » return (void *)syscall(SYS_shmat, id, addr, flag); | |
9 } | 8 } |
10 #else | 9 #else |
11 void *shmat(int id, const void *addr, int flag) | 10 void* shmat(int id, const void* addr, int flag) { |
12 { | 11 unsigned long ret; |
13 » unsigned long ret; | 12 ret = syscall(SYS_ipc, IPCOP_shmat, id, flag, &addr, addr); |
14 » ret = syscall(SYS_ipc, IPCOP_shmat, id, flag, &addr, addr); | 13 return (ret > -(unsigned long)SHMLBA) ? (void*)ret : (void*)addr; |
15 » return (ret > -(unsigned long)SHMLBA) ? (void *)ret : (void *)addr; | |
16 } | 14 } |
17 #endif | 15 #endif |
OLD | NEW |