From f80d3d58643f99727faf7a0cd0f07b616e79aff8 Mon Sep 17 00:00:00 2001 From: "Glenn Y. Rolland" Date: Tue, 3 Mar 2020 23:42:59 +0100 Subject: [PATCH] Improve code --- src/nzg_create.c | 31 +++++++++++++++++++++++++- src/nzg_global.h | 3 +++ src/nzg_iface.h | 3 ++- src/nzg_show.c | 9 -------- src/types.h | 0 src/nzg_main.c => test/create_delete.c | 0 6 files changed, 35 insertions(+), 11 deletions(-) create mode 100644 src/nzg_global.h delete mode 100644 src/nzg_show.c delete mode 100644 src/types.h rename src/nzg_main.c => test/create_delete.c (100%) diff --git a/src/nzg_create.c b/src/nzg_create.c index 3413207..de2a9c7 100644 --- a/src/nzg_create.c +++ b/src/nzg_create.c @@ -1,4 +1,10 @@ +#include /* POSIX et al */ +#include #include +#include +#include /* pour O_RDWR */ +#include +#include #include "nzg_iface.h" #include "nzg_proto.h" @@ -16,7 +22,20 @@ msgSpace * msgSpaceCreate( msgPool * queueNbCar // tableau de caracteristiques des different pool ){ + printf("PAGESIZE : %d\n",(int)PAGESIZE); // on créee + char * nzgId; + int slen; + int shmId; + slen=strlen(spaceId); + nzgId = (char *)malloc(sizeof(char)*(slen+4)); + sprintf(nzgId,"/NZG%s",spaceId); + if ((shmId=shm_open(nzgId,O_RDWR,MSGSPACE_DEFAULT_MODE)) < 0){ + perror("shm_open"); + return NULL; + } + + // on ajoute spaceId a la liste des msgSpace connus // on crée queueNb files de messages @@ -32,7 +51,17 @@ msgSpace * msgSpaceCreate( } -void msgSpaceOpen(msgSpaceId){ +msgSpace * msgSpaceOpen(msgSpaceId spaceId){ + char * nzgId; + int slen; + int shmId; + slen=strlen(spaceId); + nzgId = (char *)malloc(sizeof(char)*(slen+4)); + sprintf(nzgId,"/NZG%s",spaceId); + if ((shmId=shm_open(nzgId,O_RDWR,MSGSPACE_DEFAULT_MODE)) < 0){ + perror("shm_open"); + return NULL; + } return NULL; } diff --git a/src/nzg_global.h b/src/nzg_global.h new file mode 100644 index 0000000..2a5f0e4 --- /dev/null +++ b/src/nzg_global.h @@ -0,0 +1,3 @@ +#include + +#define PAGESIZE sysconf(_SC_PAGESIZE) diff --git a/src/nzg_iface.h b/src/nzg_iface.h index 0737813..c8fb611 100644 --- a/src/nzg_iface.h +++ b/src/nzg_iface.h @@ -1,4 +1,5 @@ -#include "types.h" +#include "nzg_global.h" +#define MSGSPACE_DEFAULT_MODE 0600 typedef char * msgSpaceId; diff --git a/src/nzg_show.c b/src/nzg_show.c deleted file mode 100644 index 991f6b0..0000000 --- a/src/nzg_show.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "nzg_iface.h" -#include "nzg_proto.h" - -int main(void) { - //show existing MsgSpaces - char ** msID=msgSpaceIdList(); //renvoie un msgSpaceId - msID=msID; - return 0; -} diff --git a/src/types.h b/src/types.h deleted file mode 100644 index e69de29..0000000 diff --git a/src/nzg_main.c b/test/create_delete.c similarity index 100% rename from src/nzg_main.c rename to test/create_delete.c