diff options
author | Anders Broman <anders.broman@ericsson.com> | 2010-03-12 19:34:07 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2010-03-12 19:34:07 +0000 |
commit | 8ccdb36c7569c1d89c5b787c933abac75ed599b5 (patch) | |
tree | 7723eb1acca55418cba044937857264e1510395f /asn1/rua | |
parent | 27efebc70c4ddc35a38ea53391f35ec6aac180dc (diff) |
From Mark Wallis:
Fix up proto and info columns.
svn path=/trunk/; revision=32175
Diffstat (limited to 'asn1/rua')
-rw-r--r-- | asn1/rua/packet-rua-template.c | 6 | ||||
-rw-r--r-- | asn1/rua/rua.cnf | 66 |
2 files changed, 31 insertions, 41 deletions
diff --git a/asn1/rua/packet-rua-template.c b/asn1/rua/packet-rua-template.c index 5a875bb29d..af669e2a37 100644 --- a/asn1/rua/packet-rua-template.c +++ b/asn1/rua/packet-rua-template.c @@ -61,8 +61,8 @@ static int proto_rua = -1; /* Initialize the subtree pointers */ static int ett_rua = -1; -/* initialise sub-dissector handles */ -static dissector_handle_t rua_ranap_handle = NULL; + /* initialise sub-dissector handles */ + static dissector_handle_t ranap_handle = NULL; #include "packet-rua-ett.c" @@ -179,7 +179,7 @@ proto_reg_handoff_rua(void) if (!initialized) { rua_handle = find_dissector("rua"); - rua_ranap_handle = find_dissector("ranap"); + ranap_handle = find_dissector("ranap"); dissector_add("sctp.ppi", RUA_PAYLOAD_PROTOCOL_ID, rua_handle); initialized = TRUE; #include "packet-rua-dis-tab.c" diff --git a/asn1/rua/rua.cnf b/asn1/rua/rua.cnf index ccf6d04116..47abd9d7f1 100644 --- a/asn1/rua/rua.cnf +++ b/asn1/rua/rua.cnf @@ -50,10 +50,10 @@ ProtocolIE-Single-Container #.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode #.FN_FTR ProcedureCode - col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ", - val_to_str(ProcedureCode, rua_ProcedureCode_vals, - "Unknown Message")); - col_set_fence(actx->pinfo->cinfo, COL_INFO); /* Protect the Procedure Code COL_INFO from subdissector overwrites */ + if (strcmp(val_to_str(ProcedureCode, rua_ProcedureCode_vals, "Unknown"), "Unknown") == 0) { + col_set_str(actx->pinfo->cinfo, COL_INFO, + "Unknown Message "); + } /* Known Procedures should be included below and broken out as ELEMENTARY names to avoid confusion */ #.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue @@ -61,55 +61,45 @@ ProtocolIE-Single-Container #.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue -#.FN_BODY Connect /* Set COL_INFO to Connect */ - col_append_str(actx->pinfo->cinfo, COL_INFO, "CONNECT" ); - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " "); - +#.FN_BODY Connect + col_set_str(actx->pinfo->cinfo, COL_INFO, + "CONNECT "); %(DEFAULT_BODY)s -#.FN_BODY DirectTransfer /* Set COL_INFO to DirectTransfer */ - col_append_str(actx->pinfo->cinfo, COL_INFO, "DIRECT_TRANSFER" ); - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " "); - +#.FN_BODY DirectTransfer + col_set_str(actx->pinfo->cinfo, COL_INFO, + "DIRECT_TRANSFER "); %(DEFAULT_BODY)s -#.FN_BODY Disconnect /* Set COL_INFO to Disconnect */ - col_append_str(actx->pinfo->cinfo, COL_INFO, "DISCONNECT" ); - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " "); - +#.FN_BODY Disconnect + col_set_str(actx->pinfo->cinfo, COL_INFO, + "DISCONNECT "); %(DEFAULT_BODY)s -#.FN_BODY ConnectionlessTransfer /* Set COL_INFO to ConnectionlessTransfer */ - col_append_str(actx->pinfo->cinfo, COL_INFO, "CONNECTIONLESS_TRANSFER" ); - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " "); - +#.FN_BODY ConnectionlessTransfer + col_set_str(actx->pinfo->cinfo, COL_INFO, + "CONNECTIONLESS_TRANSFER "); %(DEFAULT_BODY)s -#.FN_BODY ErrorIndication /* Set COL_INFO to Error Indication and protect it */ - col_append_str(actx->pinfo->cinfo, COL_INFO, "ERROR_INDICATION" ); - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " "); - col_set_fence(actx->pinfo->cinfo, COL_INFO); - +#.FN_BODY ErrorIndication + col_set_str(actx->pinfo->cinfo, COL_INFO, + "ERROR_INDICATION "); + col_set_fence(actx->pinfo->cinfo, COL_INFO); /* Protect info from CriticalityDiagnostics decodes */ %(DEFAULT_BODY)s -#.FN_BODY PrivateMessage /* Set COL_INFO to Private Message */ - col_append_str(actx->pinfo->cinfo, COL_INFO, "PRIVATE_MESSAGE" ); - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " "); - +#.FN_BODY PrivateMessage + col_set_str(actx->pinfo->cinfo, COL_INFO, + "PRIVATE_MESSAGE "); %(DEFAULT_BODY)s #.FN_BODY RANAP-Message VAL_PTR = &ranap_message_tvb tvbuff_t *ranap_message_tvb=NULL; %(DEFAULT_BODY)s - if ((tvb_length(ranap_message_tvb)>0)&&(rua_ranap_handle)) { /* RUA has a RANAP-PDU, let RANAP append to COL_PROTOCOL i.e. RUA/RANAP */ - if (check_col(actx->pinfo->cinfo, COL_PROTOCOL)) { - /* Protect RUA entries in the protocol and info columns from subdissector overwrites*/ - col_append_str(actx->pinfo->cinfo, COL_PROTOCOL, "/"); - col_set_fence(actx->pinfo->cinfo, COL_PROTOCOL); - } - call_dissector(rua_ranap_handle,ranap_message_tvb,%(ACTX)s->pinfo, tree); - } else { /* RUA does not have a RANAP-PDU so protect existing RUA Elementary Procedure as COL_INFO */ - col_set_fence(actx->pinfo->cinfo, COL_INFO); + if ((tvb_length(ranap_message_tvb)>0)&&(ranap_handle)) { /* RUA has a RANAP-PDU */ + col_set_str(actx->pinfo->cinfo, COL_INFO, + "(RUA) "); /* Set info to (RUA) to make room for RANAP */ + col_set_fence(actx->pinfo->cinfo, COL_INFO); + call_dissector(ranap_handle,ranap_message_tvb,%(ACTX)s->pinfo, proto_tree_get_root(tree)); } #.END |