Commit 846429e3 authored by Tom Lane's avatar Tom Lane

Not needed anymore.

parent d15c30d3
/*-------------------------------------------------------------------------
*
* sem.h
* System V Semaphore Emulation
*
* Copyright (c) 1999, repas AEG Automation GmbH
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/include/port/darwin/Attic/sem.h,v 1.6 2001/11/08 20:37:52 momjian Exp $
*
*-------------------------------------------------------------------------
*/
#ifndef _SYS_SEM_H
#define _SYS_SEM_H
/* #define DEBUG_IPC here if you want to see the shim in action */
#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 */
#ifndef ushort_t
#define ushort_t unsigned int
#endif
/*
* There is one semaphore structure for each semaphore in the system.
*/
struct sem
{
ushort_t semval; /* semaphore text map address */
pid_t sempid; /* pid of last operation */
ushort_t semncnt; /* # awaiting semval > cval */
ushort_t semzcnt; /* # awaiting semval = 0 */
};
/*
* 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 */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment