/************************************************/ /* */ /* Copyright: */ /* Jean-Marc Pigeon <jmp@safe.ca> */ /* Distributed under the Gnu Public */ /* License, see the License file in this */ /* package. */ /* */ /* GESIPC */ /* Define management level for memory */ /* used to exchange message between */ /* process. */ /* */ /************************************************/ #ifndef GESIPC #define GESIPC #include <unistd.h> #include "uniipc.h" typedef void BOXTYP; extern BOXTYP *ipc_getbox(int boxsize); extern BOXTYP *ipc_dropbox(BOXTYP *box); extern void ipc_cleanbox(BOXTYP *box); extern char *ipc_postmsg(BOXTYP *box,pid_t destination,char *msg); extern char *ipc_getpost(BOXTYP *box,char **msgref); extern char *ipc_getreply(BOXTYP *box,char *msgref); extern int ipc_postreply(BOXTYP *box,char *msgref,char *msg); extern int ipc_relaymsg(BOXTYP *box,char *msgref,pid_t destination,char *msg); extern char *ipc_getonemsgref(BOXTYP *box); extern void ipc_purgemsgs(BOXTYP *box,pid_t rcpt); extern int ipc_waitpost(BOXTYP *box,TIMESPEC *timeout); #endif