diff --git a/src/nzg_allocate.c b/src/nzg_allocate.c index 2a2fc90..56e611b 100644 --- a/src/nzg_allocate.c +++ b/src/nzg_allocate.c @@ -162,7 +162,7 @@ void * msgAllocate(msgSpace *space, /* on acquiert le droit de modifier les infos sur la ressource */ poolDataTabSemFd=sem_open(space->poolDataTabSemId,O_CREAT,SEM_DEFAULT_MODE,1); - + printf("VOILAAA : %s\n",space->poolDataTabSemId); //sem_wait(poolDataTabSemFd); /* on modifie maintenant les données */ @@ -173,7 +173,7 @@ void * msgAllocate(msgSpace *space, // aucun buffer libre ? return NULL; } - printf("Buffer %d libre a attacher !\n",bufferFreeIndex); + printf("Buffer selected : %d,%d\n",selectedPoolIndex,bufferFreeIndex); /*TODO: mapper le buffer libre dans l'esp addr du proc */ //TODO: /* - on s'enregistre aupres de ce buffer */ diff --git a/src/nzg_ids.c b/src/nzg_ids.c index 960f28a..3a17866 100644 --- a/src/nzg_ids.c +++ b/src/nzg_ids.c @@ -16,7 +16,20 @@ int msgSpaceIdIntern(msgSpaceId dest,const msgSpaceId src ){ #endif return 0; } - +int msgPoolDataTabSemIdIntern( + msgPoolSemId destSemId, + const msgSpaceId externId){ + if (strlen(externId)>MSGSPACE_ID_LEN*4){ + return -1; + } + /* sprintf(resNzgId,"/tmp/.nzg-%s",(char *)spaceId); */ +#ifdef _NZG_REALFILEID + sprintf(destSemId,"/tmp/nzgPoolDTSem-%s",(char *)externId); +#else + sprintf(destSemId,"/nzgPoolDTSem-%s",(char *)externId); +#endif + return 0; +} int msgPoolSemIdIntern( msgPoolSemId destSemId, const msgSpaceId srcPoolId, diff --git a/src/nzg_poolCreate.c b/src/nzg_poolCreate.c index b3ac79a..41deaa4 100644 --- a/src/nzg_poolCreate.c +++ b/src/nzg_poolCreate.c @@ -38,7 +38,7 @@ int msgPoolCreate( } // on met un semaphore sur le pool - ressourceSemFd = sem_open(poolRessourceSemId, O_CREAT|O_EXCL, 0666, buffNb); + ressourceSemFd = sem_open(poolRessourceSemId, O_CREAT|O_EXCL,SEM_DEFAULT_MODE, buffNb); if (ressourceSemFd == SEM_FAILED){ NZG_ERROR("sem_open : creation de la ressource",poolRessourceSemId); return -1;