forked from osmocom/wireshark
From Mark Wallis:
Fix up proto and info columns. svn path=/trunk/; revision=32175
This commit is contained in:
parent
27efebc70c
commit
8ccdb36c75
|
@ -55,10 +55,11 @@ CN-DomainIndicator
|
|||
#.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue
|
||||
|
||||
#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
|
||||
#.FN_FTR ProcedureCode
|
||||
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
|
||||
val_to_str(ProcedureCode, hnbap_ProcedureCode_vals,
|
||||
"Unknown Message"));
|
||||
#.FN_FTR ProcedureCode
|
||||
if (strcmp(val_to_str(ProcedureCode, hnbap_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
|
||||
|
||||
|
@ -68,73 +69,54 @@ CN-DomainIndicator
|
|||
|
||||
# There is no protocol inside HNBAP so fill col info with HNBAP elementary procedure name
|
||||
#.FN_BODY HNBRegisterRequest
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_REGISTER_REQUEST" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_REGISTER_REQUEST ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY HNBRegisterAccept
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_REGISTER_ACCEPT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_REGISTER_ACCEPT ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY HNBRegisterReject
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_REGISTER_REJECT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_REGISTER_REJECT ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY UERegisterRequest
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_REGISTER_REQUEST" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_REGISTER_REQUEST ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY UERegisterAccept
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_REGISTER_ACCEPT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_REGISTER_ACCEPT ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY UERegisterReject
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_REGISTER_REJECT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_REGISTER_REJECT ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY UEDe-Register
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_DE-REGISTER" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_DE-REGISTER ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY HNBDe-Register
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_DE-REGISTER" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_DE-REGISTER ");
|
||||
%(DEFAULT_BODY)s
|
||||
|
||||
#.FN_BODY ErrorIndication
|
||||
|
||||
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);
|
||||
|
||||
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
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "PRIVATE_MESSAGE" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"PRIVATE_MESSAGE ");
|
||||
%(DEFAULT_BODY)s
|
||||
#.END
|
||||
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -366,9 +366,10 @@ dissect_hnbap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
|
|||
0U, 255U, &ProcedureCode, FALSE);
|
||||
|
||||
#line 59 "hnbap.cnf"
|
||||
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
|
||||
val_to_str(ProcedureCode, hnbap_ProcedureCode_vals,
|
||||
"Unknown Message"));
|
||||
if (strcmp(val_to_str(ProcedureCode, hnbap_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 */
|
||||
|
||||
|
||||
return offset;
|
||||
|
@ -1401,11 +1402,9 @@ static const per_sequence_t HNBRegisterRequest_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_HNBRegisterRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 71 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_REGISTER_REQUEST" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 72 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_REGISTER_REQUEST ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_HNBRegisterRequest, HNBRegisterRequest_sequence);
|
||||
|
||||
|
@ -1424,11 +1423,9 @@ static const per_sequence_t HNBRegisterAccept_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_HNBRegisterAccept(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 78 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_REGISTER_ACCEPT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 77 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_REGISTER_ACCEPT ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_HNBRegisterAccept, HNBRegisterAccept_sequence);
|
||||
|
||||
|
@ -1447,11 +1444,9 @@ static const per_sequence_t HNBRegisterReject_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_HNBRegisterReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 85 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_REGISTER_REJECT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 82 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_REGISTER_REJECT ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_HNBRegisterReject, HNBRegisterReject_sequence);
|
||||
|
||||
|
@ -1470,11 +1465,9 @@ static const per_sequence_t HNBDe_Register_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_HNBDe_Register(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 119 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "HNB_DE-REGISTER" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 107 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"HNB_DE-REGISTER ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_HNBDe_Register, HNBDe_Register_sequence);
|
||||
|
||||
|
@ -1493,11 +1486,9 @@ static const per_sequence_t UERegisterRequest_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_UERegisterRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 92 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_REGISTER_REQUEST" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 87 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_REGISTER_REQUEST ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_UERegisterRequest, UERegisterRequest_sequence);
|
||||
|
||||
|
@ -1516,11 +1507,9 @@ static const per_sequence_t UERegisterAccept_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_UERegisterAccept(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 99 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_REGISTER_ACCEPT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 92 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_REGISTER_ACCEPT ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_UERegisterAccept, UERegisterAccept_sequence);
|
||||
|
||||
|
@ -1539,10 +1528,9 @@ static const per_sequence_t UERegisterReject_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_UERegisterReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 106 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_REGISTER_REJECT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
#line 97 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_REGISTER_REJECT ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_UERegisterReject, UERegisterReject_sequence);
|
||||
|
||||
|
@ -1561,11 +1549,9 @@ static const per_sequence_t UEDe_Register_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_UEDe_Register(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 112 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "UE_DE-REGISTER" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 102 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"UE_DE-REGISTER ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_UEDe_Register, UEDe_Register_sequence);
|
||||
|
||||
|
@ -1584,12 +1570,10 @@ static const per_sequence_t ErrorIndication_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 126 "hnbap.cnf"
|
||||
|
||||
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);
|
||||
|
||||
#line 112 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"ERROR_INDICATION ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO); /* Protect info from CriticalityDiagnostics decodes */
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_ErrorIndication, ErrorIndication_sequence);
|
||||
|
||||
|
@ -1607,11 +1591,9 @@ static const per_sequence_t PrivateMessage_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_hnbap_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 134 "hnbap.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "PRIVATE_MESSAGE" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO);
|
||||
|
||||
#line 118 "hnbap.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"PRIVATE_MESSAGE ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_hnbap_PrivateMessage, PrivateMessage_sequence);
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
* Routines for UMTS Home Node B RANAP User Adaptation (RUA) packet dissection
|
||||
* Copyright 2010 Neil Piercy, ip.access Limited <Neil.Piercy@ipaccess.com>
|
||||
*
|
||||
* $Id: packet-rua-template.c 32108 2010-03-04 05:56:59Z etxrab $
|
||||
* $Id: packet-rua-template.c 32142 2010-03-08 09:30:22Z stig $
|
||||
*
|
||||
* Wireshark - Network traffic analyzer
|
||||
* By Gerald Combs <gerald@wireshark.org>
|
||||
|
@ -171,8 +171,8 @@ static int hf_rua_unsuccessfulOutcome_value = -1; /* UnsuccessfulOutcome_value
|
|||
/* 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;
|
||||
|
||||
|
||||
/*--- Included file: packet-rua-ett.c ---*/
|
||||
|
@ -275,10 +275,10 @@ dissect_rua_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
|
|||
0U, 255U, &ProcedureCode, FALSE);
|
||||
|
||||
#line 53 "rua.cnf"
|
||||
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 */
|
||||
|
||||
|
||||
return offset;
|
||||
|
@ -834,20 +834,16 @@ dissect_rua_IntraDomainNasNodeSelector(tvbuff_t *tvb _U_, int offset _U_, asn1_c
|
|||
|
||||
static int
|
||||
dissect_rua_RANAP_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 102 "rua.cnf"
|
||||
#line 96 "rua.cnf"
|
||||
tvbuff_t *ranap_message_tvb=NULL;
|
||||
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
||||
NO_BOUND, NO_BOUND, FALSE, &ranap_message_tvb);
|
||||
|
||||
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->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->pinfo, proto_tree_get_root(tree));
|
||||
}
|
||||
|
||||
|
||||
|
@ -1028,9 +1024,8 @@ static const per_sequence_t Connect_sequence[] = {
|
|||
static int
|
||||
dissect_rua_Connect(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 65 "rua.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "CONNECT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"CONNECT ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_rua_Connect, Connect_sequence);
|
||||
|
||||
|
@ -1049,10 +1044,9 @@ static const per_sequence_t DirectTransfer_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_rua_DirectTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 71 "rua.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "DIRECT_TRANSFER" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
|
||||
#line 70 "rua.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"DIRECT_TRANSFER ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_rua_DirectTransfer, DirectTransfer_sequence);
|
||||
|
||||
|
@ -1071,10 +1065,9 @@ static const per_sequence_t Disconnect_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_rua_Disconnect(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 77 "rua.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "DISCONNECT" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
|
||||
#line 75 "rua.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"DISCONNECT ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_rua_Disconnect, Disconnect_sequence);
|
||||
|
||||
|
@ -1093,10 +1086,9 @@ static const per_sequence_t ConnectionlessTransfer_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_rua_ConnectionlessTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 83 "rua.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "CONNECTIONLESS_TRANSFER" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
|
||||
#line 80 "rua.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"CONNECTIONLESS_TRANSFER ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_rua_ConnectionlessTransfer, ConnectionlessTransfer_sequence);
|
||||
|
||||
|
@ -1115,11 +1107,10 @@ static const per_sequence_t ErrorIndication_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_rua_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 89 "rua.cnf"
|
||||
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);
|
||||
|
||||
#line 85 "rua.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"ERROR_INDICATION ");
|
||||
col_set_fence(actx->pinfo->cinfo, COL_INFO); /* Protect info from CriticalityDiagnostics decodes */
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_rua_ErrorIndication, ErrorIndication_sequence);
|
||||
|
||||
|
@ -1137,10 +1128,9 @@ static const per_sequence_t PrivateMessage_sequence[] = {
|
|||
|
||||
static int
|
||||
dissect_rua_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
|
||||
#line 96 "rua.cnf"
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "PRIVATE_MESSAGE" );
|
||||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " ");
|
||||
|
||||
#line 91 "rua.cnf"
|
||||
col_set_str(actx->pinfo->cinfo, COL_INFO,
|
||||
"PRIVATE_MESSAGE ");
|
||||
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
|
||||
ett_rua_PrivateMessage, PrivateMessage_sequence);
|
||||
|
||||
|
@ -1778,7 +1768,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;
|
||||
|
||||
|
|
Loading…
Reference in New Issue