E1AP: Use specific MNC/MCC fields for NR-CGI

Use E212_NRCGI for the NR-CGI IE, continue to use E212_NONE by default
otherwise.
This commit is contained in:
John Thacker 2021-05-08 19:38:39 -04:00
parent 7f4c33d634
commit 0b8051db67
3 changed files with 86 additions and 67 deletions

View File

@ -504,12 +504,20 @@ EarlyForwardingSNTransfer N e1ap.proc.imsg id-earlyForwardingSNTr
#.FN_BODY PLMN-Identity VAL_PTR = &param_tvb
tvbuff_t *param_tvb = NULL;
e1ap_private_data_t *e1ap_data = e1ap_get_private_data(actx->pinfo);
e212_number_type_t number_type = e1ap_data->number_type;
e1ap_data->number_type = E212_NONE;
%(DEFAULT_BODY)s
if (param_tvb) {
proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_e1ap_PLMN_Identity);
dissect_e212_mcc_mnc(param_tvb, actx->pinfo, subtree, 0, E212_NONE, FALSE);
dissect_e212_mcc_mnc(param_tvb, actx->pinfo, subtree, 0, number_type, FALSE);
}
#.FN_BODY NR-CGI
e1ap_private_data_t *e1ap_data = e1ap_get_private_data(actx->pinfo);
e1ap_data->number_type = E212_NRCGI;
%(DEFAULT_BODY)s
#.TYPE_ATTR
PortNumber TYPE = FT_UINT16 DISPLAY = BASE_DEC

View File

@ -80,6 +80,7 @@ typedef struct {
guint32 procedure_code;
guint32 protocol_ie_id;
const char *obj_id;
e212_number_type_t number_type;
} e1ap_private_data_t;
/* Global variables */

View File

@ -1163,6 +1163,7 @@ typedef struct {
guint32 procedure_code;
guint32 protocol_ie_id;
const char *obj_id;
e212_number_type_t number_type;
} e1ap_private_data_t;
/* Global variables */
@ -2304,7 +2305,7 @@ dissect_e1ap_ConfidentialityProtectionResult(tvbuff_t *tvb _U_, int offset _U_,
static int
dissect_e1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 566 "./asn1/e1ap/e1ap.cnf"
#line 574 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *param_tvb = NULL;
offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
1, 160, TRUE, NULL, 0, &param_tvb, NULL);
@ -2694,7 +2695,7 @@ dissect_e1ap_T_secondaryRATType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a
static int
dissect_e1ap_T_startTimeStamp_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 589 "./asn1/e1ap/e1ap.cnf"
#line 597 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *timestamp_tvb = NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
4, 4, FALSE, &timestamp_tvb);
@ -2702,7 +2703,7 @@ dissect_e1ap_T_startTimeStamp_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
#line 593 "./asn1/e1ap/e1ap.cnf"
#line 601 "./asn1/e1ap/e1ap.cnf"
if (timestamp_tvb) {
proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0));
}
@ -2715,7 +2716,7 @@ dissect_e1ap_T_startTimeStamp_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
static int
dissect_e1ap_T_endTimeStamp_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 598 "./asn1/e1ap/e1ap.cnf"
#line 606 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *timestamp_tvb = NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
4, 4, FALSE, &timestamp_tvb);
@ -2723,7 +2724,7 @@ dissect_e1ap_T_endTimeStamp_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
#line 602 "./asn1/e1ap/e1ap.cnf"
#line 610 "./asn1/e1ap/e1ap.cnf"
if (timestamp_tvb) {
proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0));
}
@ -2841,7 +2842,7 @@ dissect_e1ap_Data_Usage_per_QoS_Flow_List(tvbuff_t *tvb _U_, int offset _U_, asn
static int
dissect_e1ap_T_startTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 527 "./asn1/e1ap/e1ap.cnf"
#line 535 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *timestamp_tvb = NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
4, 4, FALSE, &timestamp_tvb);
@ -2849,7 +2850,7 @@ dissect_e1ap_T_startTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
#line 531 "./asn1/e1ap/e1ap.cnf"
#line 539 "./asn1/e1ap/e1ap.cnf"
if (timestamp_tvb) {
proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0));
}
@ -2862,7 +2863,7 @@ dissect_e1ap_T_startTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act
static int
dissect_e1ap_T_endTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 536 "./asn1/e1ap/e1ap.cnf"
#line 544 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *timestamp_tvb = NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
4, 4, FALSE, &timestamp_tvb);
@ -2870,7 +2871,7 @@ dissect_e1ap_T_endTimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
#line 540 "./asn1/e1ap/e1ap.cnf"
#line 548 "./asn1/e1ap/e1ap.cnf"
if (timestamp_tvb) {
proto_item_append_text(actx->created_item, " (%s)", tvb_ntp_fmt_ts_sec(timestamp_tvb, 0));
}
@ -5299,7 +5300,7 @@ dissect_e1ap_EncryptionKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
static int
dissect_e1ap_PortNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 517 "./asn1/e1ap/e1ap.cnf"
#line 525 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *parameter_tvb = NULL;
offset = dissect_per_bit_string(tvb, offset, actx, tree, -1,
16, 16, FALSE, NULL, 0, &parameter_tvb, NULL);
@ -5832,7 +5833,7 @@ dissect_e1ap_IntegrityProtectionResult(tvbuff_t *tvb _U_, int offset _U_, asn1_c
static int
dissect_e1ap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 619 "./asn1/e1ap/e1ap.cnf"
#line 627 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *param_tvb = NULL;
offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
8, 8, FALSE, NULL, 0, &param_tvb, NULL);
@ -5860,7 +5861,7 @@ dissect_e1ap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
static int
dissect_e1ap_MeasurementsToActivate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 639 "./asn1/e1ap/e1ap.cnf"
#line 647 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *param_tvb = NULL;
offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
8, 8, FALSE, NULL, 0, &param_tvb, NULL);
@ -6130,12 +6131,15 @@ static int
dissect_e1ap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 506 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *param_tvb = NULL;
e1ap_private_data_t *e1ap_data = e1ap_get_private_data(actx->pinfo);
e212_number_type_t number_type = e1ap_data->number_type;
e1ap_data->number_type = E212_NONE;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
3, 3, FALSE, &param_tvb);
if (param_tvb) {
proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_e1ap_PLMN_Identity);
dissect_e212_mcc_mnc(param_tvb, actx->pinfo, subtree, 0, E212_NONE, FALSE);
dissect_e212_mcc_mnc(param_tvb, actx->pinfo, subtree, 0, number_type, FALSE);
}
@ -6315,9 +6319,15 @@ static const per_sequence_t NR_CGI_sequence[] = {
static int
dissect_e1ap_NR_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 517 "./asn1/e1ap/e1ap.cnf"
e1ap_private_data_t *e1ap_data = e1ap_get_private_data(actx->pinfo);
e1ap_data->number_type = E212_NRCGI;
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
ett_e1ap_NR_CGI, NR_CGI_sequence);
return offset;
}
@ -7105,7 +7115,7 @@ dissect_e1ap_RegistrationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
static int
dissect_e1ap_ReportCharacteristics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 655 "./asn1/e1ap/e1ap.cnf"
#line 663 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *parameter_tvb = NULL;
offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
36, 36, FALSE, NULL, 0, &parameter_tvb, NULL);
@ -7290,7 +7300,7 @@ dissect_e1ap_Periodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
static int
dissect_e1ap_BurstArrivalTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 672 "./asn1/e1ap/e1ap.cnf"
#line 680 "./asn1/e1ap/e1ap.cnf"
tvbuff_t *param_tvb = NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
NO_BOUND, NO_BOUND, FALSE, &param_tvb);
@ -7511,7 +7521,7 @@ static const per_sequence_t Reset_sequence[] = {
static int
dissect_e1ap_Reset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 686 "./asn1/e1ap/e1ap.cnf"
#line 694 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Reset");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7581,7 +7591,7 @@ static const per_sequence_t ResetAcknowledge_sequence[] = {
static int
dissect_e1ap_ResetAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 688 "./asn1/e1ap/e1ap.cnf"
#line 696 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResetAcknowledge");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7612,7 +7622,7 @@ static const per_sequence_t ErrorIndication_sequence[] = {
static int
dissect_e1ap_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 690 "./asn1/e1ap/e1ap.cnf"
#line 698 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ErrorIndication");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7629,7 +7639,7 @@ static const per_sequence_t GNB_CU_UP_E1SetupRequest_sequence[] = {
static int
dissect_e1ap_GNB_CU_UP_E1SetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 692 "./asn1/e1ap/e1ap.cnf"
#line 700 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-E1SetupRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7678,7 +7688,7 @@ static const per_sequence_t GNB_CU_UP_E1SetupResponse_sequence[] = {
static int
dissect_e1ap_GNB_CU_UP_E1SetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 694 "./asn1/e1ap/e1ap.cnf"
#line 702 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-E1SetupResponse");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7695,7 +7705,7 @@ static const per_sequence_t GNB_CU_UP_E1SetupFailure_sequence[] = {
static int
dissect_e1ap_GNB_CU_UP_E1SetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 696 "./asn1/e1ap/e1ap.cnf"
#line 704 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-E1SetupFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7712,7 +7722,7 @@ static const per_sequence_t GNB_CU_CP_E1SetupRequest_sequence[] = {
static int
dissect_e1ap_GNB_CU_CP_E1SetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 698 "./asn1/e1ap/e1ap.cnf"
#line 706 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-CP-E1SetupRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7729,7 +7739,7 @@ static const per_sequence_t GNB_CU_CP_E1SetupResponse_sequence[] = {
static int
dissect_e1ap_GNB_CU_CP_E1SetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 700 "./asn1/e1ap/e1ap.cnf"
#line 708 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-CP-E1SetupResponse");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7746,7 +7756,7 @@ static const per_sequence_t GNB_CU_CP_E1SetupFailure_sequence[] = {
static int
dissect_e1ap_GNB_CU_CP_E1SetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 702 "./asn1/e1ap/e1ap.cnf"
#line 710 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-CP-E1SetupFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7763,7 +7773,7 @@ static const per_sequence_t GNB_CU_UP_ConfigurationUpdate_sequence[] = {
static int
dissect_e1ap_GNB_CU_UP_ConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 704 "./asn1/e1ap/e1ap.cnf"
#line 712 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-ConfigurationUpdate");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7794,7 +7804,7 @@ static const per_sequence_t GNB_CU_UP_ConfigurationUpdateAcknowledge_sequence[]
static int
dissect_e1ap_GNB_CU_UP_ConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 706 "./asn1/e1ap/e1ap.cnf"
#line 714 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-ConfigurationUpdateAcknowledge");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7811,7 +7821,7 @@ static const per_sequence_t GNB_CU_UP_ConfigurationUpdateFailure_sequence[] = {
static int
dissect_e1ap_GNB_CU_UP_ConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 708 "./asn1/e1ap/e1ap.cnf"
#line 716 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-ConfigurationUpdateFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7828,7 +7838,7 @@ static const per_sequence_t GNB_CU_CP_ConfigurationUpdate_sequence[] = {
static int
dissect_e1ap_GNB_CU_CP_ConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 710 "./asn1/e1ap/e1ap.cnf"
#line 718 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-CP-ConfigurationUpdate");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7887,7 +7897,7 @@ static const per_sequence_t GNB_CU_CP_ConfigurationUpdateAcknowledge_sequence[]
static int
dissect_e1ap_GNB_CU_CP_ConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 712 "./asn1/e1ap/e1ap.cnf"
#line 720 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-CP-ConfigurationUpdateAcknowledge");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7932,7 +7942,7 @@ static const per_sequence_t GNB_CU_CP_ConfigurationUpdateFailure_sequence[] = {
static int
dissect_e1ap_GNB_CU_CP_ConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 714 "./asn1/e1ap/e1ap.cnf"
#line 722 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-CP-ConfigurationUpdateFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7949,7 +7959,7 @@ static const per_sequence_t E1ReleaseRequest_sequence[] = {
static int
dissect_e1ap_E1ReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 716 "./asn1/e1ap/e1ap.cnf"
#line 724 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E1ReleaseRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7966,7 +7976,7 @@ static const per_sequence_t E1ReleaseResponse_sequence[] = {
static int
dissect_e1ap_E1ReleaseResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 718 "./asn1/e1ap/e1ap.cnf"
#line 726 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "E1ReleaseResponse");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -7983,7 +7993,7 @@ static const per_sequence_t BearerContextSetupRequest_sequence[] = {
static int
dissect_e1ap_BearerContextSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 720 "./asn1/e1ap/e1ap.cnf"
#line 728 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextSetupRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8024,7 +8034,7 @@ static const per_sequence_t BearerContextSetupResponse_sequence[] = {
static int
dissect_e1ap_BearerContextSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 722 "./asn1/e1ap/e1ap.cnf"
#line 730 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextSetupResponse");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8065,7 +8075,7 @@ static const per_sequence_t BearerContextSetupFailure_sequence[] = {
static int
dissect_e1ap_BearerContextSetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 724 "./asn1/e1ap/e1ap.cnf"
#line 732 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextSetupFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8082,7 +8092,7 @@ static const per_sequence_t BearerContextModificationRequest_sequence[] = {
static int
dissect_e1ap_BearerContextModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 726 "./asn1/e1ap/e1ap.cnf"
#line 734 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextModificationRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8123,7 +8133,7 @@ static const per_sequence_t BearerContextModificationResponse_sequence[] = {
static int
dissect_e1ap_BearerContextModificationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 728 "./asn1/e1ap/e1ap.cnf"
#line 736 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextModificationResponse");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8164,7 +8174,7 @@ static const per_sequence_t BearerContextModificationFailure_sequence[] = {
static int
dissect_e1ap_BearerContextModificationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 730 "./asn1/e1ap/e1ap.cnf"
#line 738 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextModificationFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8181,7 +8191,7 @@ static const per_sequence_t BearerContextModificationRequired_sequence[] = {
static int
dissect_e1ap_BearerContextModificationRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 732 "./asn1/e1ap/e1ap.cnf"
#line 740 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextModificationRequired");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8222,7 +8232,7 @@ static const per_sequence_t BearerContextModificationConfirm_sequence[] = {
static int
dissect_e1ap_BearerContextModificationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 734 "./asn1/e1ap/e1ap.cnf"
#line 742 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextModificationConfirm");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8263,7 +8273,7 @@ static const per_sequence_t BearerContextReleaseCommand_sequence[] = {
static int
dissect_e1ap_BearerContextReleaseCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 736 "./asn1/e1ap/e1ap.cnf"
#line 744 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextReleaseCommand");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8280,7 +8290,7 @@ static const per_sequence_t BearerContextReleaseComplete_sequence[] = {
static int
dissect_e1ap_BearerContextReleaseComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 738 "./asn1/e1ap/e1ap.cnf"
#line 746 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextReleaseComplete");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8297,7 +8307,7 @@ static const per_sequence_t BearerContextReleaseRequest_sequence[] = {
static int
dissect_e1ap_BearerContextReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 740 "./asn1/e1ap/e1ap.cnf"
#line 748 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextReleaseRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8328,7 +8338,7 @@ static const per_sequence_t BearerContextInactivityNotification_sequence[] = {
static int
dissect_e1ap_BearerContextInactivityNotification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 742 "./asn1/e1ap/e1ap.cnf"
#line 750 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "BearerContextInactivityNotification");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8345,7 +8355,7 @@ static const per_sequence_t DLDataNotification_sequence[] = {
static int
dissect_e1ap_DLDataNotification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 744 "./asn1/e1ap/e1ap.cnf"
#line 752 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DLDataNotification");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8362,7 +8372,7 @@ static const per_sequence_t ULDataNotification_sequence[] = {
static int
dissect_e1ap_ULDataNotification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 746 "./asn1/e1ap/e1ap.cnf"
#line 754 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ULDataNotification");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8379,7 +8389,7 @@ static const per_sequence_t DataUsageReport_sequence[] = {
static int
dissect_e1ap_DataUsageReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 748 "./asn1/e1ap/e1ap.cnf"
#line 756 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DataUsageReport");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8396,7 +8406,7 @@ static const per_sequence_t GNB_CU_UP_CounterCheckRequest_sequence[] = {
static int
dissect_e1ap_GNB_CU_UP_CounterCheckRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 750 "./asn1/e1ap/e1ap.cnf"
#line 758 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-CounterCheckRequest");
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-UP-CounterCheckRequest");
@ -8452,7 +8462,7 @@ static const per_sequence_t GNB_CU_CPMeasurementResultsInformation_sequence[] =
static int
dissect_e1ap_GNB_CU_CPMeasurementResultsInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 756 "./asn1/e1ap/e1ap.cnf"
#line 764 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "GNB-CU-CPMeasurementResultsInformation");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8469,7 +8479,7 @@ static const per_sequence_t MRDC_DataUsageReport_sequence[] = {
static int
dissect_e1ap_MRDC_DataUsageReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 758 "./asn1/e1ap/e1ap.cnf"
#line 766 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MRDC-DataUsageReport");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8486,7 +8496,7 @@ static const per_sequence_t TraceStart_sequence[] = {
static int
dissect_e1ap_TraceStart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 762 "./asn1/e1ap/e1ap.cnf"
#line 770 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "TraceStart");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8503,7 +8513,7 @@ static const per_sequence_t DeactivateTrace_sequence[] = {
static int
dissect_e1ap_DeactivateTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 760 "./asn1/e1ap/e1ap.cnf"
#line 768 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DeactivateTrace");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8520,7 +8530,7 @@ static const per_sequence_t CellTrafficTrace_sequence[] = {
static int
dissect_e1ap_CellTrafficTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 778 "./asn1/e1ap/e1ap.cnf"
#line 786 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CellTrafficTrace");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8537,7 +8547,7 @@ static const per_sequence_t PrivateMessage_sequence[] = {
static int
dissect_e1ap_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 754 "./asn1/e1ap/e1ap.cnf"
#line 762 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "PrivateMessage");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8554,7 +8564,7 @@ static const per_sequence_t ResourceStatusRequest_sequence[] = {
static int
dissect_e1ap_ResourceStatusRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 764 "./asn1/e1ap/e1ap.cnf"
#line 772 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusRequest");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8581,7 +8591,7 @@ static const per_sequence_t ResourceStatusResponse_sequence[] = {
static int
dissect_e1ap_ResourceStatusResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 766 "./asn1/e1ap/e1ap.cnf"
#line 774 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusResponse");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8598,7 +8608,7 @@ static const per_sequence_t ResourceStatusFailure_sequence[] = {
static int
dissect_e1ap_ResourceStatusFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 768 "./asn1/e1ap/e1ap.cnf"
#line 776 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8615,7 +8625,7 @@ static const per_sequence_t ResourceStatusUpdate_sequence[] = {
static int
dissect_e1ap_ResourceStatusUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 770 "./asn1/e1ap/e1ap.cnf"
#line 778 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ResourceStatusUpdate");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8632,7 +8642,7 @@ static const per_sequence_t IAB_UPTNLAddressUpdate_sequence[] = {
static int
dissect_e1ap_IAB_UPTNLAddressUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 772 "./asn1/e1ap/e1ap.cnf"
#line 780 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IAB-UPTNLAddressUpdate");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8663,7 +8673,7 @@ static const per_sequence_t IAB_UPTNLAddressUpdateAcknowledge_sequence[] = {
static int
dissect_e1ap_IAB_UPTNLAddressUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 774 "./asn1/e1ap/e1ap.cnf"
#line 782 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IAB-UPTNLAddressUpdateAcknowledge");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8694,7 +8704,7 @@ static const per_sequence_t IAB_UPTNLAddressUpdateFailure_sequence[] = {
static int
dissect_e1ap_IAB_UPTNLAddressUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 776 "./asn1/e1ap/e1ap.cnf"
#line 784 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "IAB-UPTNLAddressUpdateFailure");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -8711,7 +8721,7 @@ static const per_sequence_t EarlyForwardingSNTransfer_sequence[] = {
static int
dissect_e1ap_EarlyForwardingSNTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 780 "./asn1/e1ap/e1ap.cnf"
#line 788 "./asn1/e1ap/e1ap.cnf"
col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "EarlyForwardingSNTransfer");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@ -10236,7 +10246,7 @@ static int dissect_E1AP_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto
/*--- End of included file: packet-e1ap-fn.c ---*/
#line 137 "./asn1/e1ap/packet-e1ap-template.c"
#line 138 "./asn1/e1ap/packet-e1ap-template.c"
static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
@ -12682,7 +12692,7 @@ void proto_register_e1ap(void) {
"UnsuccessfulOutcome_value", HFILL }},
/*--- End of included file: packet-e1ap-hfarr.c ---*/
#line 302 "./asn1/e1ap/packet-e1ap-template.c"
#line 303 "./asn1/e1ap/packet-e1ap-template.c"
};
/* List of subtrees */
@ -12998,7 +13008,7 @@ void proto_register_e1ap(void) {
&ett_e1ap_UnsuccessfulOutcome,
/*--- End of included file: packet-e1ap-ettarr.c ---*/
#line 314 "./asn1/e1ap/packet-e1ap-template.c"
#line 315 "./asn1/e1ap/packet-e1ap-template.c"
};
/* Register protocol */
@ -13213,7 +13223,7 @@ proto_reg_handoff_e1ap(void)
/*--- End of included file: packet-e1ap-dis-tab.c ---*/
#line 341 "./asn1/e1ap/packet-e1ap-template.c"
#line 342 "./asn1/e1ap/packet-e1ap-template.c"
}
/*