FreeBSD/Linux Kernel Cross Reference
sys/compat/sys/sem.h
1 /* $NetBSD: sem.h,v 1.4 2007/06/17 10:23:27 dsl Exp $ */
2
3 /*
4 * SVID compatible sem.h file
5 *
6 * Author: Daniel Boulet
7 */
8
9 #ifndef _COMPAT_SYS_SEM_H_
10 #define _COMPAT_SYS_SEM_H_
11
12 #ifdef _KERNEL
13
14 #include <compat/sys/ipc.h>
15
16 struct semid_ds14 {
17 struct ipc_perm14 sem_perm; /* operation permission struct */
18 struct __sem *sem_base; /* pointer to first semaphore in set */
19 unsigned short sem_nsems; /* number of sems in set */
20 time_t sem_otime; /* last operation time */
21 long sem_pad1; /* SVABI/386 says I need this here */
22 time_t sem_ctime; /* last change time */
23 /* Times measured in secs since */
24 /* 00:00:00 GMT, Jan. 1, 1970 */
25 long sem_pad2; /* SVABI/386 says I need this here */
26 long sem_pad3[4]; /* SVABI/386 says I need this here */
27 };
28 void semid_ds14_to_native(struct semid_ds14 *, struct semid_ds *);
29 void native_to_semid_ds14(struct semid_ds *, struct semid_ds14 *);
30
31 #else /* !_KERNEL */
32
33 __BEGIN_DECLS
34 int semctl(int, int, int, union __semun);
35 int __semctl(int, int, int, union __semun *);
36 int __semctl13(int, int, int, ...);
37 #if defined(_NETBSD_SOURCE)
38 int semconfig(int);
39 #endif
40 __END_DECLS
41
42 #endif /* !_KERNEL */
43
44 #endif /* !_COMPAT_SYS_SEM_H_ */
Cache object: 6eea9251a63857b1b42fb95aa6c6a5c6
|