#include "libnazgul.h" #include "ids.h" void * msgQueueElemOpen(msgQueueElemId queueElemId){ int queueElemFd; void * queueElemAddr; queueElemFd=shm_open(queueElemId,O_RDWR,SHM_DEFAULT_MODE); if (queueElemFd == -1 ) { NZG_ERROR("shm_open : msgQueue open",queueElemId); goto ERROR; } queueElemAddr=mmap(NULL, sizeof(msgQueueElem), PROT_READ|PROT_WRITE, MAP_SHARED, queueElemFd, 0); if( queueElemAddr == MAP_FAILED ) { NZG_ERROR("mmap",queueElemId); goto ERROR; } close(queueElemFd); return queueElemAddr; ERROR: return NULL; }