how to use the MACROs?
"ww" <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <003901c22dfa$8f7db790$e306a8c0@ww> |
i am puzzled by the macros used in the source code of kannel
just like the difinition of the MSG and the State-machine
here is the source code in the wtls_state-decl.h
ROW(CREATING,
SEC_Exception_Req,
1,
{
info(0,"----------------begin a new 12 machine-----------");
/* Send off a T_Unitdata_Req containing an exception as specified */
send_alert(event->u.SEC_Exception_Req.alert_level,
event->u.SEC_Exception_Req.alert_desc, wtls_machine);
},
CREATING)
the source code in the wtls.c
if(event->type == T_Unitdata_Ind)
{
if( wtls_machine->encrypted )
{
info(0, "lyl: start pdu list ");
wtls_decrypt_pdu_list(wtls_machine, event->u.T_Unitdata_Ind.pdu_list);
}
info(0, "lyl: end pdu list ");
du_list);
}
#define STATE_NAME(state)
#define ROW(wtls_state, event_type, condition, action, next_state) \
if (wtls_machine->state == wtls_state && \
event->type == event_type && \
(condition)) { \
action \
wtls_machine->state = next_state; \
debug("wap.wtls", 0, "WTLS %ld: New state %s", wtls_machine->mid
, #next_state); \
} else
#include "wtls_state-decl.h"
{
error(0, "WTLS: handle_event: unhandled event!");
debug("wap.wtls",0, "lyl: event->type = %d", event->type);
wap_event_destroy(event);
return;
}
i want to know how to use and run it ,please help me :)