summaryrefslogtreecommitdiff
path: root/include/sys/sem.h
diff options
context:
space:
mode:
authorKacper <kacper@mail.openlinux.dev>2025-12-07 20:10:31 +0100
committerKacper <kacper@mail.openlinux.dev>2025-12-07 20:10:31 +0100
commitfc00c656c96528112d05cf0edf8631bd5eaea446 (patch)
treea6e0e6c588191a8bd1c64afc3b7a258e3e66c236 /include/sys/sem.h
Add build system scaffolding and libc headers
Diffstat (limited to 'include/sys/sem.h')
-rw-r--r--include/sys/sem.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/include/sys/sem.h b/include/sys/sem.h
new file mode 100644
index 00000000..2fdaa834
--- /dev/null
+++ b/include/sys/sem.h
@@ -0,0 +1,40 @@
+#ifndef __SYS_SEM_H
+#define __SYS_SEM_H
+
+#include <sys/ipc.h>
+
+#define SEM_UNDO 0x1000
+#define GETNCNT 14
+#define GETPID 11
+#define GETVAL 12
+#define GETALL 13
+#define GETZCNT 15
+#define SETVAL 16
+#define SETALL 17
+
+typedef __INT64_TYPE__ pid_t;
+typedef __SIZE_TYPE__ size_t;
+typedef __INT64_TYPE__ time_t;
+typedef __UINT32_TYPE__ uid_t;
+typedef __UINT32_TYPE__ gid_t;
+typedef __UINT32_TYPE__ mode_t;
+typedef __INT32_TYPE__ key_t;
+
+struct semid_ds {
+ struct ipc_perm sem_perm;
+ unsigned short sem_nsems;
+ time_t sem_otime;
+ time_t sem_ctime;
+};
+
+struct sembuf {
+ unsigned short sem_num;
+ short sem_op;
+ short sem_flg;
+};
+
+int semctl(int, int, int, ...);
+int semget(key_t, int, int);
+int semop(int, struct sembuf *, size_t);
+
+#endif