# HG changeset patch # User Sebastien Decugis # Date 1368583498 -28800 # Node ID 98d1ad9bf85a99706b3e095b030bcfb798de479a # Parent 769b867c863760e3e355e41a29b816b19f6498d5 Fix initialization of random number; Cleanup the dump message display diff -r 769b867c8637 -r 98d1ad9bf85a libfdproto/messages.c --- a/libfdproto/messages.c Tue May 14 18:43:08 2013 +0800 +++ b/libfdproto/messages.c Wed May 15 10:04:58 2013 +0800 @@ -775,11 +775,10 @@ static DECLARE_FD_DUMP_PROTOTYPE( msg_format_treeview, struct msg * msg ) { if (!CHECK_MSG(msg)) { - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "{message}(@%p): INVALID", msg), return NULL); + CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "INVALID MESSAGE"), return NULL); return *buf; } - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "{message}(@%p): ", msg), return NULL); if (!msg->msg_model) { if (msg->msg_model_not_found.mnf_code) { CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "(not found in dictionary)\n"), return NULL); @@ -805,7 +804,7 @@ CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, " ApplicationId: %d\n", msg->msg_public.msg_appl), return NULL); CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, " Hop-by-Hop Identifier: 0x%08X\n", msg->msg_public.msg_hbhid), return NULL); CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, " End-to-End Identifier: 0x%08X\n", msg->msg_public.msg_eteid), return NULL); - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, " {debug data}: src:%s(%zd) rwb:%p rt:%d cb:%p,%p(%p) qry:%p asso:%d sess:%p", msg->msg_src_id?:"(nil)", msg->msg_src_id_len, msg->msg_rawbuffer, msg->msg_routable, msg->msg_cb.anscb, msg->msg_cb.expirecb, msg->msg_cb.data, msg->msg_query, msg->msg_associated, msg->msg_sess), return NULL); + CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, " {internal data}: src:%s(%zd) rwb:%p rt:%d cb:%p,%p(%p) qry:%p asso:%d sess:%p", msg->msg_src_id?:"(nil)", msg->msg_src_id_len, msg->msg_rawbuffer, msg->msg_routable, msg->msg_cb.anscb, msg->msg_cb.expirecb, msg->msg_cb.data, msg->msg_query, msg->msg_associated, msg->msg_sess), return NULL); return *buf; } @@ -823,13 +822,11 @@ } if (!CHECK_AVP(avp)) { - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "{avp}(@%p): INVALID", avp), return NULL); + CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "INVALID AVP"), return NULL); return *buf; } - if (!level) { - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "{avp}(@%p): ", avp), return NULL); - } else { + if (level) { CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "%*sAVP: ", level * 3, ""), return NULL); } @@ -1035,11 +1032,10 @@ static DECLARE_FD_DUMP_PROTOTYPE( msg_format_summary, struct msg * msg ) { if (!CHECK_MSG(msg)) { - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "{message}(@%p): INVALID", msg), return NULL); + CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "INVALID MESSAGE"), return NULL); return *buf; } - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "{message}(@%p): ", msg), return NULL); if (!msg->msg_model) { CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "(no model)"), return NULL); } else { @@ -1074,7 +1070,7 @@ } if (!CHECK_AVP(avp)) { - CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "INVALID"), return NULL); + CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "INVALID AVP"), return NULL); goto end; } @@ -1512,7 +1508,9 @@ void fd_msg_eteid_init(void) { - fd_eteid = ((uint32_t)time(NULL) << 20) | ((uint32_t)lrand48() & ( (1 << 20) - 1 )); + uint32_t t = (uint32_t)time(NULL); + srand48(t); + fd_eteid = (t << 20) | ((uint32_t)lrand48() & ( (1 << 20) - 1 )); } uint32_t fd_msg_eteid_get ( void )