wireshark/asn1/tcap/ansi_tcap.cnf

141 lines
3.7 KiB
INI

# tcap.cnf
# $Id$
# tcap conformation file
#--- OperationCode ---
#.FN_PARS
OperationCode VAL_PTR = &ansi_tcap_private.d.OperationCode
OperationCode/national VAL_PTR = &ansi_tcap_private.d.OperationCode_national
OperationCode/private FN_VARIANT = _str VAL_PTR = &ansi_tcap_private.d.OperationCode_private
#.FN_FTR OperationCode
ansi_tcap_private.d.OperationCode_item = actx->created_item;
#.END
#--- INVOKE ---
#.FIELD_ATTR
Invoke/parameter TYPE = FT_BYTES DISPLAY = BASE_HEX
#.FN_BODY Invoke/parameter
tvbuff_t *parameter_tvb;
offset = dissect_ber_octet_string(TRUE, actx, tree, tvb, offset, hf_index,
&parameter_tvb);
if(!parameter_tvb)
return offset;
find_tcap_subdisector(parameter_tvb, actx, tcap_top_tree);
#.FN_FTR Invoke
ansi_tcap_private.d.pdu = 1;
#--- RETURN RESULT ---
#.FIELD_ATTR
ReturnResult/parameter TYPE = FT_BYTES DISPLAY = BASE_HEX
#.FN_BODY ReturnResult/parameter
tvbuff_t *parameter_tvb;
offset = dissect_ber_octet_string(TRUE, actx, tree, tvb, offset, hf_index,
&parameter_tvb);
if(!parameter_tvb)
return offset;
find_tcap_subdisector(parameter_tvb, actx, tcap_top_tree);
#.FN_FTR ReturnResult
ansi_tcap_private.d.pdu = 2;
#--- RETURN ERROR ---
#.FIELD_ATTR
ReturnError/parameter TYPE = FT_BYTES DISPLAY = BASE_HEX
#.FN_BODY ReturnError/parameter
tvbuff_t *parameter_tvb;
offset = dissect_ber_octet_string(TRUE, actx, tree, tvb, offset, hf_index,
&parameter_tvb);
if(!parameter_tvb)
return offset;
find_tcap_subdisector(parameter_tvb, actx, tcap_top_tree);
#.FN_FTR ReturnError
ansi_tcap_private.d.pdu = 3;
#--- ObjectIDApplicationContext --
#.FN_BODY ObjectIDApplicationContext FN_VARIANT = _str VAL_PTR = &oid_str
static const char * oid_str;
%(DEFAULT_BODY)s
ansi_tcap_private.objectApplicationId_oid= (void*) cur_oid;
ansi_tcap_private.oid_is_present=TRUE;
#.FN_HDR PackageType/unidirectional
gp_tcapsrt_info->ope=TC_ANSI_ALL;
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_str(actx->pinfo->cinfo, COL_INFO, "unidirectional ");
#.FN_HDR PackageType/queryWithPerm
gp_tcapsrt_info->ope=TC_ANSI_ALL;
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_str(actx->pinfo->cinfo, COL_INFO, "queryWithPerm ");
#.FN_HDR PackageType/queryWithoutPerm
gp_tcapsrt_info->ope=TC_ANSI_ALL;
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_str(actx->pinfo->cinfo, COL_INFO, "queryWithoutPerm ");
#.FN_HDR PackageType/response
gp_tcapsrt_info->ope=TC_ANSI_ALL;
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_str(actx->pinfo->cinfo, COL_INFO, "response ");
#.FN_HDR PackageType/conversationWithPerm
gp_tcapsrt_info->ope=TC_ANSI_ALL;
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_str(actx->pinfo->cinfo, COL_INFO, "conversationWithPerm ");
#.FN_HDR PackageType/conversationWithoutPerm
gp_tcapsrt_info->ope=TC_ANSI_ALL;
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_str(actx->pinfo->cinfo, COL_INFO, "conversationWithoutPerm ");
#.FN_HDR PackageType/abort
gp_tcapsrt_info->ope=TC_ANSI_ABORT;
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_str(actx->pinfo->cinfo, COL_INFO, "Abort ");
#.FN_BODY TransactionID/_untag VAL_PTR = &next_tvb
tvbuff_t *next_tvb;
guint8 len;
%(DEFAULT_BODY)s
if(next_tvb) {
ansi_tcap_private.TransactionID_str = tvb_bytes_to_str(next_tvb, 0,tvb_length(next_tvb));
len = tvb_length_remaining(next_tvb, 0);
switch(len) {
case 1:
gp_tcapsrt_info->src_tid=tvb_get_guint8(next_tvb, 0);
break;
case 2:
gp_tcapsrt_info->src_tid=tvb_get_ntohs(next_tvb, 0);
break;
case 4:
gp_tcapsrt_info->src_tid=tvb_get_ntohl(next_tvb, 0);
break;
default:
gp_tcapsrt_info->src_tid=0;
break;
}
}
#.END