Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision a518b8d3

Von aquamaniac vor mehr als 21 Jahren hinzugefügt

  • ID a518b8d3281f42515245cd05df3e642693b93ec8
  • Vorgänger d0476f06
  • Nachfolger bd9c59ae

- should now work with OpenSSL 0.9.6 as well...
- again more work on IPC
- fixed some bugs

git-svn-id: https://devel.aqbanking.de/svn/gwenhywfar/trunk@77 70169cfe-8b10-0410-8925-dcb4b91034d8

Unterschiede anzeigen:

src/ipc/msglayer.c
#include <gwenhyfwar/misc.h>
static unsigned int GWEN_IPCMsgLayer_LastMsgId=0;
static unsigned int GWEN_IPCMsgLayer_LastMsgLayerId=0;
......
GWEN_IPCMSG *m;
GWEN_NEW_OBJECT(GWEN_IPCMSG, m);
m->msgId=++GWEN_IPCMsgLayer_LastMsgId;
return m;
}
......
/* --------------------------------------------------------------- FUNCTION */
void GWEN_Msg_free(GWEN_IPCMSG *m){
if (m) {
if (m->freeDataFn)
m->freeDataFn(m);
GWEN_Buffer_free(m->buffer);
free(m);
}
......
/* --------------------------------------------------------------- FUNCTION */
void GWEN_Msg_SetMsgLayerId(GWEN_IPCMSG *m, unsigned int id){
GWEN_BUFFER *GWEN_Msg_GetBuffer(GWEN_IPCMSG *m){
assert(m);
m->msgLayerId=id;
return m->buffer;
}
/* --------------------------------------------------------------- FUNCTION */
GWEN_BUFFER *GWEN_Msg_GetBuffer(GWEN_IPCMSG *m){
GWEN_BUFFER *GWEN_Msg_TakeBuffer(GWEN_IPCMSG *m){
GWEN_BUFFER *bf;
assert(m);
bf=m->buffer;
m->buffer=0;
return m->buffer;
}
......
/* --------------------------------------------------------------- FUNCTION */
unsigned int GWEN_Msg_GetMsgId(GWEN_IPCMSG *m){
assert(m);
return m->msgId;
}
/* --------------------------------------------------------------- FUNCTION */
unsigned int GWEN_Msg_GetReferenceId(GWEN_IPCMSG *m){
assert(m);
return m->refId;
}
/* --------------------------------------------------------------- FUNCTION */
void GWEN_Msg_SetReferenceId(GWEN_IPCMSG *m, unsigned int i){
assert(m);
m->refId=i;
}
/* --------------------------------------------------------------- FUNCTION */
void *GWEN_Msg_GetData(GWEN_IPCMSG *m){
assert(m);
return m->data;
}
/* --------------------------------------------------------------- FUNCTION */
void GWEN_Msg_SetData(GWEN_IPCMSG *m, void *d){
assert(m);
if (m->freeDataFn)
m->freeDataFn(m);
m->data=d;
}
/* --------------------------------------------------------------- FUNCTION */
void GWEN_Msg_SetFreeFn(GWEN_IPCMSG *m, GWEN_IPCMSG_FREE f){
void GWEN_Msg_SetMsgLayerId(GWEN_IPCMSG *m,
unsigned int i){
assert(m);
m->freeDataFn=f;
m->msgLayerId=i;
}

Auch abrufbar als: Unified diff