#include "libnazgul.h" #include "ids.h" #define DEBUG 0 int msgPoolDataTabUnlock(msgSpace * space){ int semval; sem_t * poolDataTabSemFd; if (DEBUG) { printf("Unlocking %s\n",space->poolDataTabSemId); } poolDataTabSemFd=sem_open( space->poolDataTabSemId ,O_CREAT, SEM_DEFAULT_MODE, 1); if(poolDataTabSemFd==SEM_FAILED){ NZG_ERROR("sem_open",space->poolDataTabSemId); goto ERROR; } if(sem_post(poolDataTabSemFd)==-1){ NZG_ERROR("sem_post",space->poolDataTabSemId); goto ERROR; } semval=0; sem_getvalue(poolDataTabSemFd,&semval); if (DEBUG) { printf("(AfternValue:%d)\n",semval); } sem_close(poolDataTabSemFd); return 0; ERROR: return -1; }