Fix pointer display
This commit is contained in:
parent
3dc81d8cf8
commit
e2692e8547
6 changed files with 25 additions and 17 deletions
|
@ -204,8 +204,9 @@ if (mSPoolDataTabAddr==NULL){
|
||||||
msgPoolDataTabClose(space,mSPoolDataTabAddr);
|
msgPoolDataTabClose(space,mSPoolDataTabAddr);
|
||||||
msgPoolDataTabUnlock(space);
|
msgPoolDataTabUnlock(space);
|
||||||
|
|
||||||
printf( "alloc de 0x%08x\n", (int)resultAddr);
|
printf( "alloc de %p\n", (void *)resultAddr);
|
||||||
return resultAddr;
|
return resultAddr;
|
||||||
|
|
||||||
ERROR:
|
ERROR:
|
||||||
NZG_ERROR("msgAllocate","error processing");
|
NZG_ERROR("msgAllocate","error processing");
|
||||||
msgPoolDataTabUnlock(space);
|
msgPoolDataTabUnlock(space);
|
||||||
|
|
|
@ -9,8 +9,11 @@ void * msgBufferMap(msgPoolData * poolDataTab, int poolIndex, int bufferIndex) {
|
||||||
printf("Mapping buffer (%d,%d)\n",poolIndex,bufferIndex);
|
printf("Mapping buffer (%d,%d)\n",poolIndex,bufferIndex);
|
||||||
// TODO: récuperer l'ID du BufferInfoTab;
|
// TODO: récuperer l'ID du BufferInfoTab;
|
||||||
strcpy(poolBufferTabId, poolDataTab[poolIndex].poolId);
|
strcpy(poolBufferTabId, poolDataTab[poolIndex].poolId);
|
||||||
bufferSize=poolDataTab[poolIndex].bufferSize;
|
bufferSize = poolDataTab[poolIndex].bufferSize;
|
||||||
bufferNb=poolDataTab[poolIndex].bufferNb;
|
bufferNb = poolDataTab[poolIndex].bufferNb;
|
||||||
|
if (bufferNb < 0) {
|
||||||
|
// do something with bufferNb
|
||||||
|
}
|
||||||
|
|
||||||
poolBufferTabFd=shm_open(poolBufferTabId,O_RDWR,SHM_DEFAULT_MODE);
|
poolBufferTabFd=shm_open(poolBufferTabId,O_RDWR,SHM_DEFAULT_MODE);
|
||||||
if (poolBufferTabFd<0){
|
if (poolBufferTabFd<0){
|
||||||
|
@ -30,13 +33,13 @@ void * msgBufferMap(msgPoolData * poolDataTab, int poolIndex, int bufferIndex) {
|
||||||
NZG_ERROR("mmap", poolBufferTabId);
|
NZG_ERROR("mmap", poolBufferTabId);
|
||||||
goto ERROR;
|
goto ERROR;
|
||||||
}
|
}
|
||||||
printf( "Mapped from 0x%08x to 0x%08x\n",
|
printf( "Mapped from %p to %p\n",
|
||||||
(int)resultAddr,
|
(void *)resultAddr,
|
||||||
(int)resultAddr+ bufferSize*(bufferIndex+1)
|
(void *)(resultAddr+ bufferSize*(bufferIndex+1))
|
||||||
);
|
);
|
||||||
|
|
||||||
resultAddr=resultAddr +( bufferSize*bufferIndex);
|
resultAddr=resultAddr +( bufferSize*bufferIndex);
|
||||||
printf( "Moved to 0x%08x\n",(int)resultAddr );
|
printf( "Moved to %p\n",(void *)resultAddr );
|
||||||
|
|
||||||
/* mprotect(
|
/* mprotect(
|
||||||
resultAddr,
|
resultAddr,
|
||||||
|
|
|
@ -11,7 +11,7 @@ int msgFree(msgSpace * space, void * addr){
|
||||||
int bufferNb;
|
int bufferNb;
|
||||||
int bufferSize;
|
int bufferSize;
|
||||||
void * realAddr;
|
void * realAddr;
|
||||||
printf("[ FREE 0x%08x ]\n",(int)addr);
|
printf("[ FREE %p ]\n",(void *)addr);
|
||||||
/* on acquiert le droit de modifier les infos sur la ressource */
|
/* on acquiert le droit de modifier les infos sur la ressource */
|
||||||
/* on protege le tableau des associations */
|
/* on protege le tableau des associations */
|
||||||
if (msgPoolDataTabLock(space) <0){
|
if (msgPoolDataTabLock(space) <0){
|
||||||
|
|
|
@ -17,13 +17,16 @@ int msgPut(msgSpace * space,int queueIndex, void * addr){
|
||||||
NZG_ERROR("msgPoolDataTabOpen",space->poolDataTabId);
|
NZG_ERROR("msgPoolDataTabOpen",space->poolDataTabId);
|
||||||
goto ERROR;
|
goto ERROR;
|
||||||
}
|
}
|
||||||
err=msgBufferGetProcAttach(
|
err = msgBufferGetProcAttach(
|
||||||
poolDataTabAddr,
|
poolDataTabAddr,
|
||||||
space->poolNb,
|
space->poolNb,
|
||||||
&poolIndex,
|
&poolIndex,
|
||||||
&bufferIndex,
|
&bufferIndex,
|
||||||
addr
|
addr
|
||||||
);
|
);
|
||||||
|
if (err) {
|
||||||
|
//FIXME
|
||||||
|
}
|
||||||
|
|
||||||
// ouvrir la queue avec le bon index
|
// ouvrir la queue avec le bon index
|
||||||
msgQueueIdIntern(queueId,space->externId,queueIndex);
|
msgQueueIdIntern(queueId,space->externId,queueIndex);
|
||||||
|
@ -63,6 +66,7 @@ int msgPut(msgSpace * space,int queueIndex, void * addr){
|
||||||
// on laisse une nouvelle ressource de la liste au get
|
// on laisse une nouvelle ressource de la liste au get
|
||||||
msgQueueReadUnlock(space->externId,queueIndex);
|
msgQueueReadUnlock(space->externId,queueIndex);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ERROR:
|
ERROR:
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,7 +97,7 @@ msgSpace * msgSpaceCreate(
|
||||||
goto ERROR;
|
goto ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
printf( "CREAT: msgSpace mapped to 0x%08x in %d\n", (int)space,(int)getpid());
|
printf( "CREAT: msgSpace mapped to 0x%08lx in %d\n", (long)space,(int)getpid());
|
||||||
|
|
||||||
/* on ferme le descripteur du fichier */
|
/* on ferme le descripteur du fichier */
|
||||||
close(mSFd);
|
close(mSFd);
|
||||||
|
|
|
@ -19,7 +19,7 @@ msgSpace * msgSpaceOpen(msgSpaceId externId){
|
||||||
}
|
}
|
||||||
mSAddr=mmap(NULL,sizeof(msgSpace),PROT_READ|PROT_WRITE,MAP_SHARED,shmFd,(off_t)0);
|
mSAddr=mmap(NULL,sizeof(msgSpace),PROT_READ|PROT_WRITE,MAP_SHARED,shmFd,(off_t)0);
|
||||||
|
|
||||||
printf( "OPEN: msgSpace mapped to 0x%08x in %d\n", (int)mSAddr,(int)getpid());
|
printf( "OPEN: msgSpace mapped to %p in %d\n", (void *)mSAddr,(int)getpid());
|
||||||
return mSAddr;
|
return mSAddr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue