#include "libnazgul.h" // fonction pour la creation d'une liste de msgSpace // cree un shm qui connait l'element de debut de liste // et l'element de fin de liste. // il ne se crée que s'il n'en existe pas deja un. // // crée également un sémaphore de gestion de liste // a verouiller avant toute modification int msgSpaceListInit(); int msgSpaceListInit(){ int descMemory; msgSpaceListElemId idList; /*Fait un segment de memoir partager sur espace de listelement*/ if( (descMemory=shm_open(idList,O_RDWR|O_CREAT|O_EXCL|O_TRUNC,0600))==-1){ printf("Erreur de shmopen"); } /*Creation de semaphore*/ sem=sem_open(spaceList,O_CREAT|O_EXCL,0666,1024); if(sem==SEM_FAILED){ printf("erreur de semaphore"); return -1; } /*Verouille le semaphore*/ if(sem_wait(sem)==-1){ printf("erreur pour l'ajout d'un semaphore"); return -1; } return 0; };