aboutsummaryrefslogtreecommitdiff
path: root/src/backend/port/qnx/sem.h
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1999-12-16 01:25:23 +0000
committerBruce Momjian <bruce@momjian.us>1999-12-16 01:25:23 +0000
commit7585deb0878bca96eee9a3e00fb5726c7725831c (patch)
treeabbc9add268b6fbc32af0871f8d14f804681747b /src/backend/port/qnx/sem.h
parent9805abb0fb1d2d57834a233d1a34279757d3f068 (diff)
downloadpostgresql-7585deb0878bca96eee9a3e00fb5726c7725831c.tar.gz
postgresql-7585deb0878bca96eee9a3e00fb5726c7725831c.zip
I have done the QNX4 port with the current source tree. The number of
backend/Makefiles to be patched could significantly be reduced since they have been adopted to the QNX4 needs. Andreas Kardos
Diffstat (limited to 'src/backend/port/qnx/sem.h')
-rw-r--r--src/backend/port/qnx/sem.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/backend/port/qnx/sem.h b/src/backend/port/qnx/sem.h
new file mode 100644
index 00000000000..e9fd57ea351
--- /dev/null
+++ b/src/backend/port/qnx/sem.h
@@ -0,0 +1,54 @@
+/*-------------------------------------------------------------------------
+ *
+ * sem.h
+ * System V Semaphore Emulation
+ *
+ * Copyright (c) 1999, repas AEG Automation GmbH
+ *
+ *
+ * IDENTIFICATION
+ * $Header: /cvsroot/pgsql/src/backend/port/qnx/Attic/sem.h,v 1.1 1999/12/16 01:25:06 momjian Exp $
+ *
+ *-------------------------------------------------------------------------
+ */
+
+#ifndef _SYS_SEM_H
+#define _SYS_SEM_H
+
+#include <sys/ipc.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+* Semctl Command Definitions.
+ */
+
+#define GETNCNT 3 /* get semncnt */
+#define GETPID 4 /* get sempid */
+#define GETVAL 5 /* get semval */
+#define GETALL 6 /* get all semval's */
+#define GETZCNT 7 /* get semzcnt */
+#define SETVAL 8 /* set semval */
+#define SETALL 9 /* set all semval's */
+
+/*
+* User semaphore template for semop system calls.
+ */
+
+struct sembuf {
+ ushort_t sem_num; /* semaphore # */
+ short sem_op; /* semaphore operation */
+ short sem_flg; /* operation flags */
+};
+
+extern int semctl( int semid, int semnum, int cmd, /*...*/union semun arg );
+extern int semget( key_t key, int nsems, int semflg );
+extern int semop( int semid, struct sembuf *sops, size_t nsops );
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SYS_SEM_H */