From ca694eb078ac710b9e9bd3d1b0f8dc80af185a31 Mon Sep 17 00:00:00 2001 From: Anders Broman Date: Thu, 4 Apr 2019 13:00:35 +0200 Subject: PER: Use proto_tree_add_bitmask... () for named bits. Change-Id: I2f4258e2f4fd11c26bdc101e1375d0b5708610b7 Reviewed-on: https://code.wireshark.org/review/32713 Petri-Dish: Anders Broman Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman --- epan/dissectors/asn1/atn-cpdlc/atn-cpdlc.cnf | 2 +- epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf | 4 + epan/dissectors/asn1/its/its.cnf | 496 -------------- epan/dissectors/asn1/its/packet-its-template.c | 1 + epan/dissectors/asn1/x2ap/x2ap.cnf | 2 +- epan/dissectors/packet-atn-cpdlc.c | 6 +- epan/dissectors/packet-atn-ulcs.c | 25 +- epan/dissectors/packet-e1ap.c | 6 +- epan/dissectors/packet-f1ap.c | 16 +- epan/dissectors/packet-h225.c | 4 +- epan/dissectors/packet-h235.c | 8 +- epan/dissectors/packet-h245.c | 2 +- epan/dissectors/packet-hnbap.c | 20 +- epan/dissectors/packet-ieee1609dot2.c | 7 +- epan/dissectors/packet-ilp.c | 59 +- epan/dissectors/packet-its.c | 871 +++++++++---------------- epan/dissectors/packet-lcsap.c | 6 +- epan/dissectors/packet-lpp.c | 318 +++++++-- epan/dissectors/packet-lppa.c | 32 +- epan/dissectors/packet-lppe.c | 516 +++++++++++++-- epan/dissectors/packet-lte-rrc.c | 196 +++--- epan/dissectors/packet-m2ap.c | 16 +- epan/dissectors/packet-m3ap.c | 4 +- epan/dissectors/packet-mpeg-audio.c | 2 +- epan/dissectors/packet-mpeg-pes.c | 12 +- epan/dissectors/packet-nbap.c | 140 ++-- epan/dissectors/packet-ngap.c | 52 +- epan/dissectors/packet-nr-rrc.c | 114 ++-- epan/dissectors/packet-oer.c | 2 +- epan/dissectors/packet-oer.h | 3 +- epan/dissectors/packet-pcap.c | 120 ++-- epan/dissectors/packet-per.c | 23 +- epan/dissectors/packet-per.h | 3 +- epan/dissectors/packet-ranap.c | 50 +- epan/dissectors/packet-rnsap.c | 132 ++-- epan/dissectors/packet-rrc.c | 505 ++++++++++---- epan/dissectors/packet-rrlp.c | 142 +++- epan/dissectors/packet-rua.c | 8 +- epan/dissectors/packet-s1ap.c | 64 +- epan/dissectors/packet-sabp.c | 8 +- epan/dissectors/packet-sbc-ap.c | 16 +- epan/dissectors/packet-t124.c | 7 +- epan/dissectors/packet-tetra.c | 24 +- epan/dissectors/packet-ulp.c | 109 ++-- epan/dissectors/packet-x2ap.c | 92 +-- epan/dissectors/packet-xnap.c | 99 ++- 46 files changed, 2367 insertions(+), 1977 deletions(-) (limited to 'epan/dissectors') diff --git a/epan/dissectors/asn1/atn-cpdlc/atn-cpdlc.cnf b/epan/dissectors/asn1/atn-cpdlc/atn-cpdlc.cnf index ac10fbcf6a..e5ee38f513 100644 --- a/epan/dissectors/asn1/atn-cpdlc/atn-cpdlc.cnf +++ b/epan/dissectors/asn1/atn-cpdlc/atn-cpdlc.cnf @@ -52,7 +52,7 @@ ProtectedAircraftPDUs/startdown protectedstartDownmessage #.FN_BODY CPDLCMessage tvbuff_t *tvb_usr = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &tvb_usr, NULL); + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, NULL, 0, &tvb_usr, NULL); if (tvb_usr) { switch(check_heur_msg_type(actx->pinfo)){ diff --git a/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf b/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf index a25be95f3e..3ec51110a0 100644 --- a/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf +++ b/epan/dissectors/asn1/atn-ulcs/atn-ulcs.cnf @@ -56,6 +56,8 @@ PDV-list/presentation-data-values/arbitrary pdv-list_presentation-data-values_ar NO_BOUND, NO_BOUND, FALSE, + NULL, + 0, &tvb_usr, NULL); @@ -463,6 +465,8 @@ PDV-list/presentation-data-values/arbitrary pdv-list_presentation-data-values_ar NO_BOUND, NO_BOUND, FALSE, + NULL, + 0, &tvb_usr, NULL); diff --git a/epan/dissectors/asn1/its/its.cnf b/epan/dissectors/asn1/its/its.cnf index ef3e8fcfe3..219adda3e6 100644 --- a/epan/dissectors/asn1/its/its.cnf +++ b/epan/dissectors/asn1/its/its.cnf @@ -614,502 +614,6 @@ addGrpC RegionId #.FN_PARS RegionalExtension/regExtValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_regextval_pdu -#.FN_BODY ChargingSpotType VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_evcsn_ChargingSpotType_standardChargeMode1, - &hf_evcsn_ChargingSpotType_standardChargeMode2, - &hf_evcsn_ChargingSpotType_standardOrFastChargeMode3, - &hf_evcsn_ChargingSpotType_fastChargeWithExternalCharger, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_evcsn_ChargingSpotType_quickDrop, - &hf_evcsn_ChargingSpotType_inductiveChargeWhileStationary, - &hf_evcsn_ChargingSpotType_inductiveChargeWhileDriving, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_evcsn_ChargingSpotType); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - -#.FN_BODY SupportedPaymentTypes VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_evrsr_SupportedPaymentTypes_contract, - &hf_evrsr_SupportedPaymentTypes_externalIdentification, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_evrsr_SupportedPaymentTypes); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY PMD VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { - &hf_ivi_PMD_national_holiday, - &hf_ivi_PMD_even_days, - &hf_ivi_PMD_odd_days, - &hf_ivi_PMD_market_day, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ivi_PMD); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 2, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY TpgAutomation VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_tistpg_TpgAutomation_fullAutomated, - &hf_tistpg_TpgAutomation_semiAutomated, - &hf_tistpg_TpgAutomation_manual, - &hf_tistpg_TpgAutomation_reserved, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_tistpg_TpgAutomation); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY AccelerationControl VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_AccelerationControl_brakePedalEngaged, - &hf_its_AccelerationControl_gasPedalEngaged, - &hf_its_AccelerationControl_emergencyBrakeEngaged, - &hf_its_AccelerationControl_collisionWarningEngaged, - &hf_its_AccelerationControl_accEngaged, - &hf_its_AccelerationControl_cruiseControlEngaged, - &hf_its_AccelerationControl_speedLimiterEngaged, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_AccelerationControl); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-Barrier VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_LaneAttributes_Barrier_median_RevocableLane, - &hf_dsrc_LaneAttributes_Barrier_median, - &hf_dsrc_LaneAttributes_Barrier_whiteLineHashing, - &hf_dsrc_LaneAttributes_Barrier_stripedLines, - &hf_dsrc_LaneAttributes_Barrier_doubleStripedLines, - &hf_dsrc_LaneAttributes_Barrier_trafficCones, - &hf_dsrc_LaneAttributes_Barrier_constructionBarrier, - &hf_dsrc_LaneAttributes_Barrier_trafficChannels, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_LaneAttributes_Barrier_lowCurbs, - &hf_dsrc_LaneAttributes_Barrier_highCurbs, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Barrier); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - -#.FN_BODY TisProfile VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_tistpg_TisProfile_reserved, - &hf_tistpg_TisProfile_profileOne, - &hf_tistpg_TisProfile_profileTwo, - &hf_tistpg_TisProfile_profileThree, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_tistpg_TisProfile); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-Vehicle VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Vehicle_isVehicleRevocableLane, - &hf_dsrc_LaneAttributes_Vehicle_isVehicleFlyOverLane, - &hf_dsrc_LaneAttributes_Vehicle_hovLaneUseOnly, - &hf_dsrc_LaneAttributes_Vehicle_restrictedToBusUse, - &hf_dsrc_LaneAttributes_Vehicle_restrictedToTaxiUse, - &hf_dsrc_LaneAttributes_Vehicle_restrictedFromPublicUse, - &hf_dsrc_LaneAttributes_Vehicle_hasIRbeaconCoverage, - &hf_dsrc_LaneAttributes_Vehicle_permissionOnRequest, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Vehicle); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LightBarSirenInUse VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_LightBarSirenInUse_lightBarActivated, - &hf_its_LightBarSirenInUse_sirenActivated, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_LightBarSirenInUse); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-TrackedVehicle VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_RevocableLane, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_otherRailType, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_TrackedVehicle); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY DayOfWeek VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_ivi_DayOfWeek_unused, - &hf_ivi_DayOfWeek_monday, - &hf_ivi_DayOfWeek_tuesday, - &hf_ivi_DayOfWeek_wednesday, - &hf_ivi_DayOfWeek_thursday, - &hf_ivi_DayOfWeek_friday, - &hf_ivi_DayOfWeek_saturday, - &hf_ivi_DayOfWeek_sunday, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ivi_DayOfWeek); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY EnergyStorageType VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_EnergyStorageType_hydrogenStorage, - &hf_its_EnergyStorageType_electricEnergyStorage, - &hf_its_EnergyStorageType_liquidPropaneGas, - &hf_its_EnergyStorageType_compressedNaturalGas, - &hf_its_EnergyStorageType_diesel, - &hf_its_EnergyStorageType_gasoline, - &hf_its_EnergyStorageType_ammonia, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_EnergyStorageType); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY EmergencyPriority VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_EmergencyPriority_requestForRightOfWay, - &hf_its_EmergencyPriority_requestForFreeCrossingAtATrafficLight, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_EmergencyPriority); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY IntersectionStatusObject VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_IntersectionStatusObject_manualControlIsEnabled, - &hf_dsrc_IntersectionStatusObject_stopTimeIsActivated, - &hf_dsrc_IntersectionStatusObject_failureFlash, - &hf_dsrc_IntersectionStatusObject_preemptIsActive, - &hf_dsrc_IntersectionStatusObject_signalPriorityIsActive, - &hf_dsrc_IntersectionStatusObject_fixedTimeOperation, - &hf_dsrc_IntersectionStatusObject_trafficDependentOperation, - &hf_dsrc_IntersectionStatusObject_standbyOperation, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_IntersectionStatusObject_failureMode, - &hf_dsrc_IntersectionStatusObject_off, - &hf_dsrc_IntersectionStatusObject_recentMAPmessageUpdate, - &hf_dsrc_IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed, - &hf_dsrc_IntersectionStatusObject_noValidMAPisAvailableAtThisTime, - &hf_dsrc_IntersectionStatusObject_noValidSPATisAvailableAtThisTime, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_IntersectionStatusObject); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - -#.FN_BODY AllowedManeuvers VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_AllowedManeuvers_maneuverStraightAllowed, - &hf_dsrc_AllowedManeuvers_maneuverLeftAllowed, - &hf_dsrc_AllowedManeuvers_maneuverRightAllowed, - &hf_dsrc_AllowedManeuvers_maneuverUTurnAllowed, - &hf_dsrc_AllowedManeuvers_maneuverLeftTurnOnRedAllowed, - &hf_dsrc_AllowedManeuvers_maneuverRightTurnOnRedAllowed, - &hf_dsrc_AllowedManeuvers_maneuverLaneChangeAllowed, - &hf_dsrc_AllowedManeuvers_maneuverNoStoppingAllowed, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_AllowedManeuvers_yieldAllwaysRequired, - &hf_dsrc_AllowedManeuvers_goWithHalt, - &hf_dsrc_AllowedManeuvers_caution, - &hf_dsrc_AllowedManeuvers_reserved1, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_AllowedManeuvers); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-Crosswalk VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_LaneAttributes_Crosswalk_crosswalkRevocableLane, - &hf_dsrc_LaneAttributes_Crosswalk_bicyleUseAllowed, - &hf_dsrc_LaneAttributes_Crosswalk_isXwalkFlyOverLane, - &hf_dsrc_LaneAttributes_Crosswalk_fixedCycleTime, - &hf_dsrc_LaneAttributes_Crosswalk_biDirectionalCycleTimes, - &hf_dsrc_LaneAttributes_Crosswalk_hasPushToWalkButton, - &hf_dsrc_LaneAttributes_Crosswalk_audioSupport, - &hf_dsrc_LaneAttributes_Crosswalk_rfSignalRequestPresent, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_LaneAttributes_Crosswalk_unsignalizedSegmentsPresent, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Crosswalk); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneDirection VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneDirection_ingressPath, - &hf_dsrc_LaneDirection_egressPath, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneDirection); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-Bike VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Bike_bikeRevocableLane, - &hf_dsrc_LaneAttributes_Bike_pedestrianUseAllowed, - &hf_dsrc_LaneAttributes_Bike_isBikeFlyOverLane, - &hf_dsrc_LaneAttributes_Bike_fixedCycleTime, - &hf_dsrc_LaneAttributes_Bike_biDirectionalCycleTimes, - &hf_dsrc_LaneAttributes_Bike_isolatedByBarrier, - &hf_dsrc_LaneAttributes_Bike_unsignalizedSegmentsPresent, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Bike); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-Parking VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Parking_parkingRevocableLane, - &hf_dsrc_LaneAttributes_Parking_parallelParkingInUse, - &hf_dsrc_LaneAttributes_Parking_headInParkingInUse, - &hf_dsrc_LaneAttributes_Parking_doNotParkZone, - &hf_dsrc_LaneAttributes_Parking_parkingForBusUse, - &hf_dsrc_LaneAttributes_Parking_parkingForTaxiUse, - &hf_dsrc_LaneAttributes_Parking_noPublicParkingUse, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Parking); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY ExteriorLights VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_ExteriorLights_lowBeamHeadlightsOn, - &hf_its_ExteriorLights_highBeamHeadlightsOn, - &hf_its_ExteriorLights_leftTurnSignalOn, - &hf_its_ExteriorLights_rightTurnSignalOn, - &hf_its_ExteriorLights_daytimeRunningLightsOn, - &hf_its_ExteriorLights_reverseLightOn, - &hf_its_ExteriorLights_fogLightOn, - &hf_its_ExteriorLights_parkingLightsOn, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_ExteriorLights); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-Striping VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesRevocableLane, - &hf_dsrc_LaneAttributes_Striping_stripeDrawOnLeft, - &hf_dsrc_LaneAttributes_Striping_stripeDrawOnRight, - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesLeft, - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesRight, - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesAhead, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Striping); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneSharing VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_LaneSharing_overlappingLaneDescriptionProvided, - &hf_dsrc_LaneSharing_multipleLanesTreatedAsOneLane, - &hf_dsrc_LaneSharing_otherNonMotorizedTrafficTypes, - &hf_dsrc_LaneSharing_individualMotorizedVehicleTraffic, - &hf_dsrc_LaneSharing_busVehicleTraffic, - &hf_dsrc_LaneSharing_taxiVehicleTraffic, - &hf_dsrc_LaneSharing_pedestriansTraffic, - &hf_dsrc_LaneSharing_cyclistVehicleTraffic, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_LaneSharing_trackedVehicleTraffic, - &hf_dsrc_LaneSharing_pedestrianTraffic, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneSharing); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - -#.FN_BODY TransitVehicleStatus VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_TransitVehicleStatus_loading, - &hf_dsrc_TransitVehicleStatus_anADAuse, - &hf_dsrc_TransitVehicleStatus_aBikeLoad, - &hf_dsrc_TransitVehicleStatus_doorOpen, - &hf_dsrc_TransitVehicleStatus_charging, - &hf_dsrc_TransitVehicleStatus_atStopLine, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_TransitVehicleStatus); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY LaneAttributes-Sidewalk VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Sidewalk_sidewalk_RevocableLane, - &hf_dsrc_LaneAttributes_Sidewalk_bicyleUseAllowed, - &hf_dsrc_LaneAttributes_Sidewalk_isSidewalkFlyOverLane, - &hf_dsrc_LaneAttributes_Sidewalk_walkBikes, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Sidewalk); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - -#.FN_BODY PositionOfOccupants VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_its_PositionOfOccupants_row1LeftOccupied, - &hf_its_PositionOfOccupants_row1RightOccupied, - &hf_its_PositionOfOccupants_row1MidOccupied, - &hf_its_PositionOfOccupants_row1NotDetectable, - &hf_its_PositionOfOccupants_row1NotPresent, - &hf_its_PositionOfOccupants_row2LeftOccupied, - &hf_its_PositionOfOccupants_row2RightOccupied, - &hf_its_PositionOfOccupants_row2MidOccupied, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_its_PositionOfOccupants_row2NotDetectable, - &hf_its_PositionOfOccupants_row2NotPresent, - &hf_its_PositionOfOccupants_row3LeftOccupied, - &hf_its_PositionOfOccupants_row3RightOccupied, - &hf_its_PositionOfOccupants_row3MidOccupied, - &hf_its_PositionOfOccupants_row3NotDetectable, - &hf_its_PositionOfOccupants_row3NotPresent, - &hf_its_PositionOfOccupants_row4LeftOccupied, - NULL - }; - const gint *fields2[] = { // CHECKED - &hf_its_PositionOfOccupants_row4RightOccupied, - &hf_its_PositionOfOccupants_row4MidOccupied, - &hf_its_PositionOfOccupants_row4NotDetectable, - &hf_its_PositionOfOccupants_row4NotPresent, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_PositionOfOccupants); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 2, 1, fields2, ENC_BIG_ENDIAN); - } - -#.FN_BODY SpecialTransportType VAL_PTR=¶meter_tvb - tvbuff_t *parameter_tvb = NULL; -%(DEFAULT_BODY)s - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_SpecialTransportType_heavyLoad, - &hf_its_SpecialTransportType_excessWidth, - &hf_its_SpecialTransportType_excessLength, - &hf_its_SpecialTransportType_excessHeight, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_SpecialTransportType); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } #.FN_BODY TypeOfReceptacle VAL_PTR=¶meter_tvb LEN_PTR=&len tvbuff_t *parameter_tvb = NULL; diff --git a/epan/dissectors/asn1/its/packet-its-template.c b/epan/dissectors/asn1/its/packet-its-template.c index 56fc8c3559..8d14535c8e 100644 --- a/epan/dissectors/asn1/its/packet-its-template.c +++ b/epan/dissectors/asn1/its/packet-its-template.c @@ -10,6 +10,7 @@ * SPDX-License-Identifier: GPL-2.0-or-later */ + /* * Implemented: * CA (CAM) ETSI EN 302 637-2 V1.4.1 (2019-01) diff --git a/epan/dissectors/asn1/x2ap/x2ap.cnf b/epan/dissectors/asn1/x2ap/x2ap.cnf index 367b972add..b8fed23f02 100644 --- a/epan/dissectors/asn1/x2ap/x2ap.cnf +++ b/epan/dissectors/asn1/x2ap/x2ap.cnf @@ -188,7 +188,7 @@ Port-Number TYPE = FT_UINT16 DISPLAY = BASE_DEC tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, ¶meter_tvb, NULL); + 32, 32, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { diff --git a/epan/dissectors/packet-atn-cpdlc.c b/epan/dissectors/packet-atn-cpdlc.c index 26fe9613c1..9f7874652d 100644 --- a/epan/dissectors/packet-atn-cpdlc.c +++ b/epan/dissectors/packet-atn-cpdlc.c @@ -4235,7 +4235,7 @@ dissect_atn_cpdlc_UplinkMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_atn_cpdlc_AircraftAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4261,7 +4261,7 @@ dissect_atn_cpdlc_ForwardHeader(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_atn_cpdlc_BIT_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5120,7 +5120,7 @@ static int dissect_atn_cpdlc_CPDLCMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *tvb_usr = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &tvb_usr, NULL); + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, NULL, 0, &tvb_usr, NULL); if (tvb_usr) { switch(check_heur_msg_type(actx->pinfo)){ diff --git a/epan/dissectors/packet-atn-ulcs.c b/epan/dissectors/packet-atn-ulcs.c index c77c4521b4..eec6965c1c 100644 --- a/epan/dissectors/packet-atn-ulcs.c +++ b/epan/dissectors/packet-atn-ulcs.c @@ -375,6 +375,8 @@ dissect_atn_ulcs_T_pdv_list_presentation_data_values_arbitrary(tvbuff_t *tvb _U_ NO_BOUND, NO_BOUND, FALSE, + NULL, + 0, &tvb_usr, NULL); @@ -584,6 +586,8 @@ dissect_atn_ulcs_T_externalt_encoding_arbitrary(tvbuff_t *tvb _U_, int offset _U NO_BOUND, NO_BOUND, FALSE, + NULL, + 0, &tvb_usr, NULL); @@ -705,11 +709,15 @@ dissect_atn_ulcs_EXTERNALt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const int * T_aarq_apdu_protocol_version_bits[] = { + &hf_atn_ulcs_T_aarq_apdu_protocol_version_version1, + NULL +}; static int dissect_atn_ulcs_T_aarq_apdu_protocol_version(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, T_aarq_apdu_protocol_version_bits, 1, NULL, NULL); return offset; } @@ -927,11 +935,16 @@ dissect_atn_ulcs_AE_invocation_identifier(tvbuff_t *tvb _U_, int offset _U_, asn } +static const int * ACSE_requirements_bits[] = { + &hf_atn_ulcs_ACSE_requirements_authentication, + &hf_atn_ulcs_ACSE_requirements_application_context_negotiation, + NULL +}; static int dissect_atn_ulcs_ACSE_requirements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, ACSE_requirements_bits, 2, NULL, NULL); return offset; } @@ -967,7 +980,7 @@ dissect_atn_ulcs_Mechanism_name(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_atn_ulcs_BIT_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1199,11 +1212,15 @@ dissect_atn_ulcs_AARQ_apdu(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const int * T_aare_apdu_protocol_version_bits[] = { + &hf_atn_ulcs_T_aare_apdu_protocol_version_version1, + NULL +}; static int dissect_atn_ulcs_T_aare_apdu_protocol_version(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, T_aare_apdu_protocol_version_bits, 1, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-e1ap.c b/epan/dissectors/packet-e1ap.c index 8286bbc3b1..e9949da116 100644 --- a/epan/dissectors/packet-e1ap.c +++ b/epan/dissectors/packet-e1ap.c @@ -1715,7 +1715,7 @@ dissect_e1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 394 "./asn1/e1ap/e1ap.cnf" tvbuff_t *param_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶m_tvb, NULL); + 1, 160, TRUE, NULL, 0, ¶m_tvb, NULL); if (param_tvb) { proto_tree *subtree; @@ -2399,7 +2399,7 @@ dissect_e1ap_DRB_Failed_To_Modify_List_NG_RAN(tvbuff_t *tvb _U_, int offset _U_, static int dissect_e1ap_BIT_STRING_SIZE_1_131072(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 131072, FALSE, NULL, NULL); + 1, 131072, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4499,7 +4499,7 @@ dissect_e1ap_NG_RAN_QoS_Support_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_e1ap_NR_Cell_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-f1ap.c b/epan/dissectors/packet-f1ap.c index 1865761694..902d1b5bec 100644 --- a/epan/dissectors/packet-f1ap.c +++ b/epan/dissectors/packet-f1ap.c @@ -1752,7 +1752,7 @@ dissect_f1ap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_f1ap_NRCellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2289,7 +2289,7 @@ dissect_f1ap_CellULConfigured(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_f1ap_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2323,7 +2323,7 @@ dissect_f1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 900 "./asn1/f1ap/f1ap.cnf" tvbuff_t *param_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶m_tvb, NULL); + 1, 160, TRUE, NULL, 0, ¶m_tvb, NULL); if (param_tvb) { proto_tree *subtree; @@ -3788,7 +3788,7 @@ dissect_f1ap_ExtendedServedPLMNs_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_f1ap_EUTRA_Cell_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4975,7 +4975,7 @@ dissect_f1ap_InactivityMonitoringResponse(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_f1ap_MaskedIMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5062,7 +5062,7 @@ dissect_f1ap_PagingDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_f1ap_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5593,7 +5593,7 @@ dissect_f1ap_RRCReconfigurationCompleteIndicator(tvbuff_t *tvb _U_, int offset _ static int dissect_f1ap_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6027,7 +6027,7 @@ dissect_f1ap_UE_associatedLogicalF1_ConnectionItem(tvbuff_t *tvb _U_, int offset static int dissect_f1ap_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-h225.c b/epan/dissectors/packet-h225.c index 5a8d49228f..78cb54684d 100644 --- a/epan/dissectors/packet-h225.c +++ b/epan/dissectors/packet-h225.c @@ -2764,7 +2764,7 @@ dissect_h225_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_h225_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5558,7 +5558,7 @@ dissect_h225_IntegrityMechanism(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_h225_BIT_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-h235.c b/epan/dissectors/packet-h235.c index 0e4fdf47e9..a33753b61c 100644 --- a/epan/dissectors/packet-h235.c +++ b/epan/dissectors/packet-h235.c @@ -256,7 +256,7 @@ dissect_h235_Identifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_h235_KeyMaterial(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 2048, FALSE, NULL, NULL); + 1, 2048, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -300,7 +300,7 @@ dissect_h235_NonStandardParameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_h235_BIT_STRING_SIZE_0_2048(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 0, 2048, FALSE, NULL, NULL); + 0, 2048, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -326,7 +326,7 @@ dissect_h235_DHset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int dissect_h235_BIT_STRING_SIZE_0_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 0, 511, FALSE, NULL, NULL); + 0, 511, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -559,7 +559,7 @@ dissect_h235_ENCRYPTED(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_h235_BIT_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-h245.c b/epan/dissectors/packet-h245.c index 3edcac78bc..bd8e61667c 100644 --- a/epan/dissectors/packet-h245.c +++ b/epan/dissectors/packet-h245.c @@ -8659,7 +8659,7 @@ dissect_h245_OCTET_STRING_SIZE_1_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_h245_BIT_STRING_SIZE_1_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 65535, FALSE, NULL, NULL); + 1, 65535, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-hnbap.c b/epan/dissectors/packet-hnbap.c index 267159ac1e..5f01560640 100644 --- a/epan/dissectors/packet-hnbap.c +++ b/epan/dissectors/packet-hnbap.c @@ -813,7 +813,7 @@ dissect_hnbap_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_hnbap_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -823,7 +823,7 @@ dissect_hnbap_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_hnbap_Context_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -898,7 +898,7 @@ dissect_hnbap_CriticalityDiagnostics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_hnbap_CSG_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1003,7 +1003,7 @@ dissect_hnbap_CN_DomainIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_hnbap_ESN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1145,7 +1145,7 @@ dissect_hnbap_HNB_RNL_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_hnbap_PSC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1403,7 +1403,7 @@ dissect_hnbap_HNB_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_hnbap_IMEI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 60, 60, FALSE, NULL, NULL); + 60, 60, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1516,7 +1516,7 @@ dissect_hnbap_NeighbourInfoRequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_hnbap_PTMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1556,7 +1556,7 @@ dissect_hnbap_PTMSIRAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_hnbap_RAB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1566,7 +1566,7 @@ dissect_hnbap_RAB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_hnbap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, NULL, NULL); + 1, 160, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -1683,7 +1683,7 @@ dissect_hnbap_SAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_hnbap_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-ieee1609dot2.c b/epan/dissectors/packet-ieee1609dot2.c index d6cefb654a..7318227115 100644 --- a/epan/dissectors/packet-ieee1609dot2.c +++ b/epan/dissectors/packet-ieee1609dot2.c @@ -1533,11 +1533,16 @@ dissect_ieee1609dot2_INTEGER(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * EndEntityType_bits[] = { + &hf_ieee1609dot2_EndEntityType_app, + &hf_ieee1609dot2_EndEntityType_enrol, + NULL +}; static int dissect_ieee1609dot2_EndEntityType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_oer_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, EndEntityType_bits, 2, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-ilp.c b/epan/dissectors/packet-ilp.c index c5c9b9c39e..9a90638f69 100644 --- a/epan/dissectors/packet-ilp.c +++ b/epan/dissectors/packet-ilp.c @@ -861,7 +861,7 @@ dissect_ilp_T_mdn(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_ilp_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 34, 34, FALSE, NULL, NULL); + 34, 34, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1025,7 +1025,7 @@ dissect_ilp_INTEGER_0_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_ilp_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1047,11 +1047,22 @@ dissect_ilp_GANSSPositioningMethodTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static const int * GANSSSignals_bits[] = { + &hf_ilp_GANSSSignals_signal1, + &hf_ilp_GANSSSignals_signal2, + &hf_ilp_GANSSSignals_signal3, + &hf_ilp_GANSSSignals_signal4, + &hf_ilp_GANSSSignals_signal5, + &hf_ilp_GANSSSignals_signal6, + &hf_ilp_GANSSSignals_signal7, + &hf_ilp_GANSSSignals_signal8, + NULL +}; static int dissect_ilp_GANSSSignals(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, GANSSSignals_bits, 8, NULL, NULL); return offset; } @@ -1103,11 +1114,17 @@ dissect_ilp_T_addPosID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_addPosMode_bits[] = { + &hf_ilp_T_addPosMode_standalone, + &hf_ilp_T_addPosMode_setBased, + &hf_ilp_T_addPosMode_setAssisted, + NULL +}; static int dissect_ilp_T_addPosMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_addPosMode_bits, 3, NULL, NULL); return offset; } @@ -1708,7 +1725,7 @@ dissect_ilp_CdmaCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_ilp_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1809,7 +1826,7 @@ dissect_ilp_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ilp_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1844,7 +1861,7 @@ dissect_ilp_PhysCellId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ilp_TrackingAreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1939,7 +1956,7 @@ dissect_ilp_RS_SINR_Range(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ilp_TrackingAreaCodeNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2054,7 +2071,7 @@ dissect_ilp_LteCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ilp_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2215,7 +2232,7 @@ dissect_ilp_ReportedLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_ilp_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2225,7 +2242,7 @@ dissect_ilp_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_ilp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2235,7 +2252,7 @@ dissect_ilp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_ilp_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2245,7 +2262,7 @@ dissect_ilp_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ilp_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2389,7 +2406,7 @@ dissect_ilp_WlanAPInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_ilp_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2511,7 +2528,7 @@ dissect_ilp_ARFCN_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_ilp_CellIdentityNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2875,7 +2892,7 @@ dissect_ilp_PositionEstimate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_ilp_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2885,7 +2902,7 @@ dissect_ilp_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_ilp_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2910,7 +2927,7 @@ dissect_ilp_Horvel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int dissect_ilp_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3081,7 +3098,7 @@ dissect_ilp_TriggerParams(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ilp_SPCSETKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3627,7 +3644,7 @@ dissect_ilp_GanssRequestedCommonAssistanceDataList(tvbuff_t *tvb _U_, int offset static int dissect_ilp_DGANSS_Sig_Id_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3829,7 +3846,7 @@ dissect_ilp_GanssExtendedEphCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ilp_BDS_Sig_Id_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-its.c b/epan/dissectors/packet-its.c index 043ec3c4e4..91c844d8d9 100644 --- a/epan/dissectors/packet-its.c +++ b/epan/dissectors/packet-its.c @@ -18,6 +18,7 @@ * SPDX-License-Identifier: GPL-2.0-or-later */ + /* * Implemented: * CA (CAM) ETSI EN 302 637-2 V1.4.1 (2019-01) @@ -1395,7 +1396,7 @@ static int hf_evrsr_SupportedPaymentTypes_contract = -1; static int hf_evrsr_SupportedPaymentTypes_externalIdentification = -1; /*--- End of included file: packet-its-hf.c ---*/ -#line 273 "./asn1/its/packet-its-template.c" +#line 274 "./asn1/its/packet-its-template.c" // CauseCode/SubCauseCode management static int hf_its_trafficConditionSubCauseCode = -1; @@ -1840,7 +1841,7 @@ static gint ett_evrsr_RechargingType = -1; static gint ett_evrsr_SupportedPaymentTypes = -1; /*--- End of included file: packet-its-ett.c ---*/ -#line 303 "./asn1/its/packet-its-template.c" +#line 304 "./asn1/its/packet-its-template.c" // Deal with cause/subcause code management struct { CauseCodeType_enum cause; int* hf; } cause_to_subcause[] = { @@ -2272,30 +2273,21 @@ dissect_its_PtActivation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } +static const int * its_AccelerationControl_bits[] = { + &hf_its_AccelerationControl_brakePedalEngaged, + &hf_its_AccelerationControl_gasPedalEngaged, + &hf_its_AccelerationControl_emergencyBrakeEngaged, + &hf_its_AccelerationControl_collisionWarningEngaged, + &hf_its_AccelerationControl_accEngaged, + &hf_its_AccelerationControl_cruiseControlEngaged, + &hf_its_AccelerationControl_speedLimiterEngaged, + NULL +}; static int dissect_its_AccelerationControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 683 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_AccelerationControl_brakePedalEngaged, - &hf_its_AccelerationControl_gasPedalEngaged, - &hf_its_AccelerationControl_emergencyBrakeEngaged, - &hf_its_AccelerationControl_collisionWarningEngaged, - &hf_its_AccelerationControl_accEngaged, - &hf_its_AccelerationControl_cruiseControlEngaged, - &hf_its_AccelerationControl_speedLimiterEngaged, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_AccelerationControl); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 7, 7, FALSE, its_AccelerationControl_bits, 7, NULL, NULL); return offset; } @@ -2345,7 +2337,7 @@ dissect_its_CauseCodeType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_its_SubCauseCodeType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1182 "./asn1/its/its.cnf" +#line 686 "./asn1/its/its.cnf" // Overwrite hf_index hf_index = *find_subcause_from_cause((CauseCodeType_enum) ((its_private_data_t*)actx->private_data)->cause_code); offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, @@ -2800,7 +2792,7 @@ dissect_its_HardShoulderStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_its_DrivingLaneStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 13, FALSE, NULL, NULL); + 1, 13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3071,31 +3063,22 @@ dissect_its_StationType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * its_ExteriorLights_bits[] = { + &hf_its_ExteriorLights_lowBeamHeadlightsOn, + &hf_its_ExteriorLights_highBeamHeadlightsOn, + &hf_its_ExteriorLights_leftTurnSignalOn, + &hf_its_ExteriorLights_rightTurnSignalOn, + &hf_its_ExteriorLights_daytimeRunningLightsOn, + &hf_its_ExteriorLights_reverseLightOn, + &hf_its_ExteriorLights_fogLightOn, + &hf_its_ExteriorLights_parkingLightsOn, + NULL +}; static int dissect_its_ExteriorLights(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 968 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_ExteriorLights_lowBeamHeadlightsOn, - &hf_its_ExteriorLights_highBeamHeadlightsOn, - &hf_its_ExteriorLights_leftTurnSignalOn, - &hf_its_ExteriorLights_rightTurnSignalOn, - &hf_its_ExteriorLights_daytimeRunningLightsOn, - &hf_its_ExteriorLights_reverseLightOn, - &hf_its_ExteriorLights_fogLightOn, - &hf_its_ExteriorLights_parkingLightsOn, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_ExteriorLights); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 8, 8, FALSE, its_ExteriorLights_bits, 8, NULL, NULL); return offset; } @@ -3205,51 +3188,33 @@ dissect_its_DangerousGoodsExtended(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const int * its_SpecialTransportType_bits[] = { + &hf_its_SpecialTransportType_heavyLoad, + &hf_its_SpecialTransportType_excessWidth, + &hf_its_SpecialTransportType_excessLength, + &hf_its_SpecialTransportType_excessHeight, + NULL +}; static int dissect_its_SpecialTransportType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1100 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_SpecialTransportType_heavyLoad, - &hf_its_SpecialTransportType_excessWidth, - &hf_its_SpecialTransportType_excessLength, - &hf_its_SpecialTransportType_excessHeight, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_SpecialTransportType); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 4, 4, FALSE, its_SpecialTransportType_bits, 4, NULL, NULL); return offset; } +static const int * its_LightBarSirenInUse_bits[] = { + &hf_its_LightBarSirenInUse_lightBarActivated, + &hf_its_LightBarSirenInUse_sirenActivated, + NULL +}; static int dissect_its_LightBarSirenInUse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 760 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_LightBarSirenInUse_lightBarActivated, - &hf_its_LightBarSirenInUse_sirenActivated, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_LightBarSirenInUse); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 2, 2, FALSE, its_LightBarSirenInUse_bits, 2, NULL, NULL); return offset; } @@ -3451,51 +3416,34 @@ dissect_its_PosFrontAx(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * its_PositionOfOccupants_bits[] = { + &hf_its_PositionOfOccupants_row1LeftOccupied, + &hf_its_PositionOfOccupants_row1RightOccupied, + &hf_its_PositionOfOccupants_row1MidOccupied, + &hf_its_PositionOfOccupants_row1NotDetectable, + &hf_its_PositionOfOccupants_row1NotPresent, + &hf_its_PositionOfOccupants_row2LeftOccupied, + &hf_its_PositionOfOccupants_row2RightOccupied, + &hf_its_PositionOfOccupants_row2MidOccupied, + &hf_its_PositionOfOccupants_row2NotDetectable, + &hf_its_PositionOfOccupants_row2NotPresent, + &hf_its_PositionOfOccupants_row3LeftOccupied, + &hf_its_PositionOfOccupants_row3RightOccupied, + &hf_its_PositionOfOccupants_row3MidOccupied, + &hf_its_PositionOfOccupants_row3NotDetectable, + &hf_its_PositionOfOccupants_row3NotPresent, + &hf_its_PositionOfOccupants_row4LeftOccupied, + &hf_its_PositionOfOccupants_row4RightOccupied, + &hf_its_PositionOfOccupants_row4MidOccupied, + &hf_its_PositionOfOccupants_row4NotDetectable, + &hf_its_PositionOfOccupants_row4NotPresent, + NULL +}; static int dissect_its_PositionOfOccupants(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1061 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_its_PositionOfOccupants_row1LeftOccupied, - &hf_its_PositionOfOccupants_row1RightOccupied, - &hf_its_PositionOfOccupants_row1MidOccupied, - &hf_its_PositionOfOccupants_row1NotDetectable, - &hf_its_PositionOfOccupants_row1NotPresent, - &hf_its_PositionOfOccupants_row2LeftOccupied, - &hf_its_PositionOfOccupants_row2RightOccupied, - &hf_its_PositionOfOccupants_row2MidOccupied, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_its_PositionOfOccupants_row2NotDetectable, - &hf_its_PositionOfOccupants_row2NotPresent, - &hf_its_PositionOfOccupants_row3LeftOccupied, - &hf_its_PositionOfOccupants_row3RightOccupied, - &hf_its_PositionOfOccupants_row3MidOccupied, - &hf_its_PositionOfOccupants_row3NotDetectable, - &hf_its_PositionOfOccupants_row3NotPresent, - &hf_its_PositionOfOccupants_row4LeftOccupied, - NULL - }; - const gint *fields2[] = { // CHECKED - &hf_its_PositionOfOccupants_row4RightOccupied, - &hf_its_PositionOfOccupants_row4MidOccupied, - &hf_its_PositionOfOccupants_row4NotDetectable, - &hf_its_PositionOfOccupants_row4NotPresent, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_PositionOfOccupants); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 2, 1, fields2, ENC_BIG_ENDIAN); - } - - + 20, 20, FALSE, its_PositionOfOccupants_bits, 20, NULL, NULL); return offset; } @@ -3556,30 +3504,21 @@ dissect_its_VehicleIdentification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const int * its_EnergyStorageType_bits[] = { + &hf_its_EnergyStorageType_hydrogenStorage, + &hf_its_EnergyStorageType_electricEnergyStorage, + &hf_its_EnergyStorageType_liquidPropaneGas, + &hf_its_EnergyStorageType_compressedNaturalGas, + &hf_its_EnergyStorageType_diesel, + &hf_its_EnergyStorageType_gasoline, + &hf_its_EnergyStorageType_ammonia, + NULL +}; static int dissect_its_EnergyStorageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 808 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_EnergyStorageType_hydrogenStorage, - &hf_its_EnergyStorageType_electricEnergyStorage, - &hf_its_EnergyStorageType_liquidPropaneGas, - &hf_its_EnergyStorageType_compressedNaturalGas, - &hf_its_EnergyStorageType_diesel, - &hf_its_EnergyStorageType_gasoline, - &hf_its_EnergyStorageType_ammonia, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_EnergyStorageType); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 7, 7, FALSE, its_EnergyStorageType_bits, 7, NULL, NULL); return offset; } @@ -3667,25 +3606,16 @@ dissect_its_PathHistory(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * its_EmergencyPriority_bits[] = { + &hf_its_EmergencyPriority_requestForRightOfWay, + &hf_its_EmergencyPriority_requestForFreeCrossingAtATrafficLight, + NULL +}; static int dissect_its_EmergencyPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 826 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_its_EmergencyPriority_requestForRightOfWay, - &hf_its_EmergencyPriority_requestForFreeCrossingAtATrafficLight, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_its_EmergencyPriority); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 2, 2, FALSE, its_EmergencyPriority_bits, 2, NULL, NULL); return offset; } @@ -4212,7 +4142,7 @@ static int dissect_its_ItsPduHeader_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U static int dissect_anads_CountryCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5743,27 +5673,18 @@ dissect_ivi_T_month_day(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * ivi_PMD_bits[] = { + &hf_ivi_PMD_national_holiday, + &hf_ivi_PMD_even_days, + &hf_ivi_PMD_odd_days, + &hf_ivi_PMD_market_day, + NULL +}; static int dissect_ivi_PMD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 653 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { - &hf_ivi_PMD_national_holiday, - &hf_ivi_PMD_even_days, - &hf_ivi_PMD_odd_days, - &hf_ivi_PMD_market_day, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ivi_PMD); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 2, fields, ENC_BIG_ENDIAN); - } - - + 4, 4, FALSE, ivi_PMD_bits, 4, NULL, NULL); return offset; } @@ -5819,31 +5740,22 @@ dissect_ivi_T_hourMinutes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } +static const int * ivi_DayOfWeek_bits[] = { + &hf_ivi_DayOfWeek_unused, + &hf_ivi_DayOfWeek_monday, + &hf_ivi_DayOfWeek_tuesday, + &hf_ivi_DayOfWeek_wednesday, + &hf_ivi_DayOfWeek_thursday, + &hf_ivi_DayOfWeek_friday, + &hf_ivi_DayOfWeek_saturday, + &hf_ivi_DayOfWeek_sunday, + NULL +}; static int dissect_ivi_DayOfWeek(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 789 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_ivi_DayOfWeek_unused, - &hf_ivi_DayOfWeek_monday, - &hf_ivi_DayOfWeek_tuesday, - &hf_ivi_DayOfWeek_wednesday, - &hf_ivi_DayOfWeek_thursday, - &hf_ivi_DayOfWeek_friday, - &hf_ivi_DayOfWeek_saturday, - &hf_ivi_DayOfWeek_sunday, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ivi_DayOfWeek); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 8, 8, FALSE, ivi_DayOfWeek_bits, 8, NULL, NULL); return offset; } @@ -6575,7 +6487,7 @@ dissect_ivi_SEQUENCE_SIZE_1_4__OF_RSCode(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_ivi_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7138,41 +7050,28 @@ dissect_dsrc_MsgCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p } +static const int * dsrc_IntersectionStatusObject_bits[] = { + &hf_dsrc_IntersectionStatusObject_manualControlIsEnabled, + &hf_dsrc_IntersectionStatusObject_stopTimeIsActivated, + &hf_dsrc_IntersectionStatusObject_failureFlash, + &hf_dsrc_IntersectionStatusObject_preemptIsActive, + &hf_dsrc_IntersectionStatusObject_signalPriorityIsActive, + &hf_dsrc_IntersectionStatusObject_fixedTimeOperation, + &hf_dsrc_IntersectionStatusObject_trafficDependentOperation, + &hf_dsrc_IntersectionStatusObject_standbyOperation, + &hf_dsrc_IntersectionStatusObject_failureMode, + &hf_dsrc_IntersectionStatusObject_off, + &hf_dsrc_IntersectionStatusObject_recentMAPmessageUpdate, + &hf_dsrc_IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed, + &hf_dsrc_IntersectionStatusObject_noValidMAPisAvailableAtThisTime, + &hf_dsrc_IntersectionStatusObject_noValidSPATisAvailableAtThisTime, + NULL +}; static int dissect_dsrc_IntersectionStatusObject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 839 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_IntersectionStatusObject_manualControlIsEnabled, - &hf_dsrc_IntersectionStatusObject_stopTimeIsActivated, - &hf_dsrc_IntersectionStatusObject_failureFlash, - &hf_dsrc_IntersectionStatusObject_preemptIsActive, - &hf_dsrc_IntersectionStatusObject_signalPriorityIsActive, - &hf_dsrc_IntersectionStatusObject_fixedTimeOperation, - &hf_dsrc_IntersectionStatusObject_trafficDependentOperation, - &hf_dsrc_IntersectionStatusObject_standbyOperation, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_IntersectionStatusObject_failureMode, - &hf_dsrc_IntersectionStatusObject_off, - &hf_dsrc_IntersectionStatusObject_recentMAPmessageUpdate, - &hf_dsrc_IntersectionStatusObject_recentChangeInMAPassignedLanesIDsUsed, - &hf_dsrc_IntersectionStatusObject_noValidMAPisAvailableAtThisTime, - &hf_dsrc_IntersectionStatusObject_noValidSPATisAvailableAtThisTime, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_IntersectionStatusObject); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_IntersectionStatusObject_bits, 14, NULL, NULL); return offset; } @@ -8131,29 +8030,20 @@ dissect_dsrc_RequestorPositionVector(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const int * dsrc_TransitVehicleStatus_bits[] = { + &hf_dsrc_TransitVehicleStatus_loading, + &hf_dsrc_TransitVehicleStatus_anADAuse, + &hf_dsrc_TransitVehicleStatus_aBikeLoad, + &hf_dsrc_TransitVehicleStatus_doorOpen, + &hf_dsrc_TransitVehicleStatus_charging, + &hf_dsrc_TransitVehicleStatus_atStopLine, + NULL +}; static int dissect_dsrc_TransitVehicleStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1029 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_TransitVehicleStatus_loading, - &hf_dsrc_TransitVehicleStatus_anADAuse, - &hf_dsrc_TransitVehicleStatus_aBikeLoad, - &hf_dsrc_TransitVehicleStatus_doorOpen, - &hf_dsrc_TransitVehicleStatus_charging, - &hf_dsrc_TransitVehicleStatus_atStopLine, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_TransitVehicleStatus); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 8, 8, FALSE, dsrc_TransitVehicleStatus_bits, 6, NULL, NULL); return offset; } @@ -8559,301 +8449,199 @@ dissect_dsrc_SpeedLimitList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * dsrc_LaneDirection_bits[] = { + &hf_dsrc_LaneDirection_ingressPath, + &hf_dsrc_LaneDirection_egressPath, + NULL +}; static int dissect_dsrc_LaneDirection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 919 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneDirection_ingressPath, - &hf_dsrc_LaneDirection_egressPath, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneDirection); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 2, 2, FALSE, dsrc_LaneDirection_bits, 2, NULL, NULL); return offset; } +static const int * dsrc_LaneSharing_bits[] = { + &hf_dsrc_LaneSharing_overlappingLaneDescriptionProvided, + &hf_dsrc_LaneSharing_multipleLanesTreatedAsOneLane, + &hf_dsrc_LaneSharing_otherNonMotorizedTrafficTypes, + &hf_dsrc_LaneSharing_individualMotorizedVehicleTraffic, + &hf_dsrc_LaneSharing_busVehicleTraffic, + &hf_dsrc_LaneSharing_taxiVehicleTraffic, + &hf_dsrc_LaneSharing_pedestriansTraffic, + &hf_dsrc_LaneSharing_cyclistVehicleTraffic, + &hf_dsrc_LaneSharing_trackedVehicleTraffic, + &hf_dsrc_LaneSharing_pedestrianTraffic, + NULL +}; static int dissect_dsrc_LaneSharing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1004 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_LaneSharing_overlappingLaneDescriptionProvided, - &hf_dsrc_LaneSharing_multipleLanesTreatedAsOneLane, - &hf_dsrc_LaneSharing_otherNonMotorizedTrafficTypes, - &hf_dsrc_LaneSharing_individualMotorizedVehicleTraffic, - &hf_dsrc_LaneSharing_busVehicleTraffic, - &hf_dsrc_LaneSharing_taxiVehicleTraffic, - &hf_dsrc_LaneSharing_pedestriansTraffic, - &hf_dsrc_LaneSharing_cyclistVehicleTraffic, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_LaneSharing_trackedVehicleTraffic, - &hf_dsrc_LaneSharing_pedestrianTraffic, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneSharing); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - - + 10, 10, FALSE, dsrc_LaneSharing_bits, 10, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_Vehicle_bits[] = { + &hf_dsrc_LaneAttributes_Vehicle_isVehicleRevocableLane, + &hf_dsrc_LaneAttributes_Vehicle_isVehicleFlyOverLane, + &hf_dsrc_LaneAttributes_Vehicle_hovLaneUseOnly, + &hf_dsrc_LaneAttributes_Vehicle_restrictedToBusUse, + &hf_dsrc_LaneAttributes_Vehicle_restrictedToTaxiUse, + &hf_dsrc_LaneAttributes_Vehicle_restrictedFromPublicUse, + &hf_dsrc_LaneAttributes_Vehicle_hasIRbeaconCoverage, + &hf_dsrc_LaneAttributes_Vehicle_permissionOnRequest, + NULL +}; static int dissect_dsrc_LaneAttributes_Vehicle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 741 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, TRUE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Vehicle_isVehicleRevocableLane, - &hf_dsrc_LaneAttributes_Vehicle_isVehicleFlyOverLane, - &hf_dsrc_LaneAttributes_Vehicle_hovLaneUseOnly, - &hf_dsrc_LaneAttributes_Vehicle_restrictedToBusUse, - &hf_dsrc_LaneAttributes_Vehicle_restrictedToTaxiUse, - &hf_dsrc_LaneAttributes_Vehicle_restrictedFromPublicUse, - &hf_dsrc_LaneAttributes_Vehicle_hasIRbeaconCoverage, - &hf_dsrc_LaneAttributes_Vehicle_permissionOnRequest, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Vehicle); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 8, 8, TRUE, dsrc_LaneAttributes_Vehicle_bits, 8, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_Crosswalk_bits[] = { + &hf_dsrc_LaneAttributes_Crosswalk_crosswalkRevocableLane, + &hf_dsrc_LaneAttributes_Crosswalk_bicyleUseAllowed, + &hf_dsrc_LaneAttributes_Crosswalk_isXwalkFlyOverLane, + &hf_dsrc_LaneAttributes_Crosswalk_fixedCycleTime, + &hf_dsrc_LaneAttributes_Crosswalk_biDirectionalCycleTimes, + &hf_dsrc_LaneAttributes_Crosswalk_hasPushToWalkButton, + &hf_dsrc_LaneAttributes_Crosswalk_audioSupport, + &hf_dsrc_LaneAttributes_Crosswalk_rfSignalRequestPresent, + &hf_dsrc_LaneAttributes_Crosswalk_unsignalizedSegmentsPresent, + NULL +}; static int dissect_dsrc_LaneAttributes_Crosswalk(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 895 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_LaneAttributes_Crosswalk_crosswalkRevocableLane, - &hf_dsrc_LaneAttributes_Crosswalk_bicyleUseAllowed, - &hf_dsrc_LaneAttributes_Crosswalk_isXwalkFlyOverLane, - &hf_dsrc_LaneAttributes_Crosswalk_fixedCycleTime, - &hf_dsrc_LaneAttributes_Crosswalk_biDirectionalCycleTimes, - &hf_dsrc_LaneAttributes_Crosswalk_hasPushToWalkButton, - &hf_dsrc_LaneAttributes_Crosswalk_audioSupport, - &hf_dsrc_LaneAttributes_Crosswalk_rfSignalRequestPresent, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_LaneAttributes_Crosswalk_unsignalizedSegmentsPresent, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Crosswalk); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_LaneAttributes_Crosswalk_bits, 9, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_Bike_bits[] = { + &hf_dsrc_LaneAttributes_Bike_bikeRevocableLane, + &hf_dsrc_LaneAttributes_Bike_pedestrianUseAllowed, + &hf_dsrc_LaneAttributes_Bike_isBikeFlyOverLane, + &hf_dsrc_LaneAttributes_Bike_fixedCycleTime, + &hf_dsrc_LaneAttributes_Bike_biDirectionalCycleTimes, + &hf_dsrc_LaneAttributes_Bike_isolatedByBarrier, + &hf_dsrc_LaneAttributes_Bike_unsignalizedSegmentsPresent, + NULL +}; static int dissect_dsrc_LaneAttributes_Bike(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 932 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Bike_bikeRevocableLane, - &hf_dsrc_LaneAttributes_Bike_pedestrianUseAllowed, - &hf_dsrc_LaneAttributes_Bike_isBikeFlyOverLane, - &hf_dsrc_LaneAttributes_Bike_fixedCycleTime, - &hf_dsrc_LaneAttributes_Bike_biDirectionalCycleTimes, - &hf_dsrc_LaneAttributes_Bike_isolatedByBarrier, - &hf_dsrc_LaneAttributes_Bike_unsignalizedSegmentsPresent, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Bike); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_LaneAttributes_Bike_bits, 7, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_Sidewalk_bits[] = { + &hf_dsrc_LaneAttributes_Sidewalk_sidewalk_RevocableLane, + &hf_dsrc_LaneAttributes_Sidewalk_bicyleUseAllowed, + &hf_dsrc_LaneAttributes_Sidewalk_isSidewalkFlyOverLane, + &hf_dsrc_LaneAttributes_Sidewalk_walkBikes, + NULL +}; static int dissect_dsrc_LaneAttributes_Sidewalk(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1046 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Sidewalk_sidewalk_RevocableLane, - &hf_dsrc_LaneAttributes_Sidewalk_bicyleUseAllowed, - &hf_dsrc_LaneAttributes_Sidewalk_isSidewalkFlyOverLane, - &hf_dsrc_LaneAttributes_Sidewalk_walkBikes, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Sidewalk); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_LaneAttributes_Sidewalk_bits, 4, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_Barrier_bits[] = { + &hf_dsrc_LaneAttributes_Barrier_median_RevocableLane, + &hf_dsrc_LaneAttributes_Barrier_median, + &hf_dsrc_LaneAttributes_Barrier_whiteLineHashing, + &hf_dsrc_LaneAttributes_Barrier_stripedLines, + &hf_dsrc_LaneAttributes_Barrier_doubleStripedLines, + &hf_dsrc_LaneAttributes_Barrier_trafficCones, + &hf_dsrc_LaneAttributes_Barrier_constructionBarrier, + &hf_dsrc_LaneAttributes_Barrier_trafficChannels, + &hf_dsrc_LaneAttributes_Barrier_lowCurbs, + &hf_dsrc_LaneAttributes_Barrier_highCurbs, + NULL +}; static int dissect_dsrc_LaneAttributes_Barrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 701 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_LaneAttributes_Barrier_median_RevocableLane, - &hf_dsrc_LaneAttributes_Barrier_median, - &hf_dsrc_LaneAttributes_Barrier_whiteLineHashing, - &hf_dsrc_LaneAttributes_Barrier_stripedLines, - &hf_dsrc_LaneAttributes_Barrier_doubleStripedLines, - &hf_dsrc_LaneAttributes_Barrier_trafficCones, - &hf_dsrc_LaneAttributes_Barrier_constructionBarrier, - &hf_dsrc_LaneAttributes_Barrier_trafficChannels, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_LaneAttributes_Barrier_lowCurbs, - &hf_dsrc_LaneAttributes_Barrier_highCurbs, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Barrier); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_LaneAttributes_Barrier_bits, 10, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_Striping_bits[] = { + &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesRevocableLane, + &hf_dsrc_LaneAttributes_Striping_stripeDrawOnLeft, + &hf_dsrc_LaneAttributes_Striping_stripeDrawOnRight, + &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesLeft, + &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesRight, + &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesAhead, + NULL +}; static int dissect_dsrc_LaneAttributes_Striping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 987 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesRevocableLane, - &hf_dsrc_LaneAttributes_Striping_stripeDrawOnLeft, - &hf_dsrc_LaneAttributes_Striping_stripeDrawOnRight, - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesLeft, - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesRight, - &hf_dsrc_LaneAttributes_Striping_stripeToConnectingLanesAhead, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Striping); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_LaneAttributes_Striping_bits, 6, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_TrackedVehicle_bits[] = { + &hf_dsrc_LaneAttributes_TrackedVehicle_spec_RevocableLane, + &hf_dsrc_LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack, + &hf_dsrc_LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack, + &hf_dsrc_LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack, + &hf_dsrc_LaneAttributes_TrackedVehicle_spec_otherRailType, + NULL +}; static int dissect_dsrc_LaneAttributes_TrackedVehicle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 773 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_RevocableLane, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_commuterRailRoadTrack, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_lightRailRoadTrack, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_heavyRailRoadTrack, - &hf_dsrc_LaneAttributes_TrackedVehicle_spec_otherRailType, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_TrackedVehicle); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_LaneAttributes_TrackedVehicle_bits, 5, NULL, NULL); return offset; } +static const int * dsrc_LaneAttributes_Parking_bits[] = { + &hf_dsrc_LaneAttributes_Parking_parkingRevocableLane, + &hf_dsrc_LaneAttributes_Parking_parallelParkingInUse, + &hf_dsrc_LaneAttributes_Parking_headInParkingInUse, + &hf_dsrc_LaneAttributes_Parking_doNotParkZone, + &hf_dsrc_LaneAttributes_Parking_parkingForBusUse, + &hf_dsrc_LaneAttributes_Parking_parkingForTaxiUse, + &hf_dsrc_LaneAttributes_Parking_noPublicParkingUse, + NULL +}; static int dissect_dsrc_LaneAttributes_Parking(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 950 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_dsrc_LaneAttributes_Parking_parkingRevocableLane, - &hf_dsrc_LaneAttributes_Parking_parallelParkingInUse, - &hf_dsrc_LaneAttributes_Parking_headInParkingInUse, - &hf_dsrc_LaneAttributes_Parking_doNotParkZone, - &hf_dsrc_LaneAttributes_Parking_parkingForBusUse, - &hf_dsrc_LaneAttributes_Parking_parkingForTaxiUse, - &hf_dsrc_LaneAttributes_Parking_noPublicParkingUse, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_LaneAttributes_Parking); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 16, 16, FALSE, dsrc_LaneAttributes_Parking_bits, 7, NULL, NULL); return offset; } @@ -8917,39 +8705,26 @@ dissect_dsrc_LaneAttributes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * dsrc_AllowedManeuvers_bits[] = { + &hf_dsrc_AllowedManeuvers_maneuverStraightAllowed, + &hf_dsrc_AllowedManeuvers_maneuverLeftAllowed, + &hf_dsrc_AllowedManeuvers_maneuverRightAllowed, + &hf_dsrc_AllowedManeuvers_maneuverUTurnAllowed, + &hf_dsrc_AllowedManeuvers_maneuverLeftTurnOnRedAllowed, + &hf_dsrc_AllowedManeuvers_maneuverRightTurnOnRedAllowed, + &hf_dsrc_AllowedManeuvers_maneuverLaneChangeAllowed, + &hf_dsrc_AllowedManeuvers_maneuverNoStoppingAllowed, + &hf_dsrc_AllowedManeuvers_yieldAllwaysRequired, + &hf_dsrc_AllowedManeuvers_goWithHalt, + &hf_dsrc_AllowedManeuvers_caution, + &hf_dsrc_AllowedManeuvers_reserved1, + NULL +}; static int dissect_dsrc_AllowedManeuvers(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 868 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_dsrc_AllowedManeuvers_maneuverStraightAllowed, - &hf_dsrc_AllowedManeuvers_maneuverLeftAllowed, - &hf_dsrc_AllowedManeuvers_maneuverRightAllowed, - &hf_dsrc_AllowedManeuvers_maneuverUTurnAllowed, - &hf_dsrc_AllowedManeuvers_maneuverLeftTurnOnRedAllowed, - &hf_dsrc_AllowedManeuvers_maneuverRightTurnOnRedAllowed, - &hf_dsrc_AllowedManeuvers_maneuverLaneChangeAllowed, - &hf_dsrc_AllowedManeuvers_maneuverNoStoppingAllowed, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_dsrc_AllowedManeuvers_yieldAllwaysRequired, - &hf_dsrc_AllowedManeuvers_goWithHalt, - &hf_dsrc_AllowedManeuvers_caution, - &hf_dsrc_AllowedManeuvers_reserved1, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_dsrc_AllowedManeuvers); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - - + 12, 12, FALSE, dsrc_AllowedManeuvers_bits, 12, NULL, NULL); return offset; } @@ -11034,27 +10809,18 @@ dissect_tistpg_CustomerContract(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } +static const int * tistpg_TisProfile_bits[] = { + &hf_tistpg_TisProfile_reserved, + &hf_tistpg_TisProfile_profileOne, + &hf_tistpg_TisProfile_profileTwo, + &hf_tistpg_TisProfile_profileThree, + NULL +}; static int dissect_tistpg_TisProfile(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 726 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_tistpg_TisProfile_reserved, - &hf_tistpg_TisProfile_profileOne, - &hf_tistpg_TisProfile_profileTwo, - &hf_tistpg_TisProfile_profileThree, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_tistpg_TisProfile); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 8, 8, FALSE, tistpg_TisProfile_bits, 4, NULL, NULL); return offset; } @@ -11178,27 +10944,18 @@ dissect_tistpg_TisTpgSNM_Management(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } +static const int * tistpg_TpgAutomation_bits[] = { + &hf_tistpg_TpgAutomation_fullAutomated, + &hf_tistpg_TpgAutomation_semiAutomated, + &hf_tistpg_TpgAutomation_manual, + &hf_tistpg_TpgAutomation_reserved, + NULL +}; static int dissect_tistpg_TpgAutomation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 668 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_tistpg_TpgAutomation_fullAutomated, - &hf_tistpg_TpgAutomation_semiAutomated, - &hf_tistpg_TpgAutomation_manual, - &hf_tistpg_TpgAutomation_reserved, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_tistpg_TpgAutomation); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 4, 4, FALSE, tistpg_TpgAutomation_bits, 4, NULL, NULL); return offset; } @@ -11563,7 +11320,7 @@ dissect_tistpg_TisTpgVDRM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_tistpg_Language(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -11620,7 +11377,7 @@ dissect_tistpg_TyreSetVariantID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_tistpg_TyreSidewallInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 60, 60, FALSE, NULL, NULL); + 60, 60, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -11630,7 +11387,7 @@ dissect_tistpg_TyreSidewallInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_tistpg_PressureConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -11869,7 +11626,7 @@ dissect_tistpg_T_recommendedTyrePressure(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_tistpg_TIN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12199,34 +11956,29 @@ dissect_evcsn_NumericString_SIZE_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const int * evcsn_ChargingSpotType_bits[] = { + &hf_evcsn_ChargingSpotType_standardChargeMode1, + &hf_evcsn_ChargingSpotType_standardChargeMode2, + &hf_evcsn_ChargingSpotType_standardOrFastChargeMode3, + &hf_evcsn_ChargingSpotType_fastChargeWithExternalCharger, + &hf_evcsn_ChargingSpotType_spare_bit_4, + &hf_evcsn_ChargingSpotType_spare_bit_5, + &hf_evcsn_ChargingSpotType_spare_bit_6, + &hf_evcsn_ChargingSpotType_spare_bit_7, + &hf_evcsn_ChargingSpotType_quickDrop, + &hf_evcsn_ChargingSpotType_spare_bit_9, + &hf_evcsn_ChargingSpotType_spare_bit_10, + &hf_evcsn_ChargingSpotType_spare_bit_11, + &hf_evcsn_ChargingSpotType_inductiveChargeWhileStationary, + &hf_evcsn_ChargingSpotType_spare_bit_13, + &hf_evcsn_ChargingSpotType_inductiveChargeWhileDriving, + NULL +}; static int dissect_evcsn_ChargingSpotType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 618 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields0[] = { // CHECKED - &hf_evcsn_ChargingSpotType_standardChargeMode1, - &hf_evcsn_ChargingSpotType_standardChargeMode2, - &hf_evcsn_ChargingSpotType_standardOrFastChargeMode3, - &hf_evcsn_ChargingSpotType_fastChargeWithExternalCharger, - NULL - }; - const gint *fields1[] = { // CHECKED - &hf_evcsn_ChargingSpotType_quickDrop, - &hf_evcsn_ChargingSpotType_inductiveChargeWhileStationary, - &hf_evcsn_ChargingSpotType_inductiveChargeWhileDriving, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_evcsn_ChargingSpotType); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields0, ENC_BIG_ENDIAN); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 1, 1, fields1, ENC_BIG_ENDIAN); - } - - + NO_BOUND, NO_BOUND, FALSE, evcsn_ChargingSpotType_bits, 15, NULL, NULL); return offset; } @@ -12235,11 +11987,11 @@ dissect_evcsn_ChargingSpotType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_evcsn_TypeOfReceptacle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1115 "./asn1/its/its.cnf" +#line 619 "./asn1/its/its.cnf" tvbuff_t *parameter_tvb = NULL; int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb, &len); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, ¶meter_tvb, &len); /* TODO Provide values? * See ETSI TS 101 556-1 V1.1.1 Annex B Description for data elements @@ -12579,25 +12331,16 @@ dissect_evrsr_AvailabilityStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const int * evrsr_SupportedPaymentTypes_bits[] = { + &hf_evrsr_SupportedPaymentTypes_contract, + &hf_evrsr_SupportedPaymentTypes_externalIdentification, + NULL +}; static int dissect_evrsr_SupportedPaymentTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 640 "./asn1/its/its.cnf" - tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, ¶meter_tvb, NULL); - - if (parameter_tvb) { - const gint *fields[] = { // CHECKED - &hf_evrsr_SupportedPaymentTypes_contract, - &hf_evrsr_SupportedPaymentTypes_externalIdentification, - NULL - }; - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_evrsr_SupportedPaymentTypes); - proto_tree_add_bitmask_list(subtree, parameter_tvb, 0, 1, fields, ENC_BIG_ENDIAN); - } - - + 2, 2, FALSE, evrsr_SupportedPaymentTypes_bits, 2, NULL, NULL); return offset; } @@ -12947,7 +12690,7 @@ static int dissect_evrsr_EV_RSR_MessageBody_PDU(tvbuff_t *tvb _U_, packet_info * /*--- End of included file: packet-its-fn.c ---*/ -#line 345 "./asn1/its/packet-its-template.c" +#line 346 "./asn1/its/packet-its-template.c" static int dissect_its_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data) @@ -17308,7 +17051,7 @@ void proto_register_its(void) NULL, HFILL }}, /*--- End of included file: packet-its-hfarr.c ---*/ -#line 381 "./asn1/its/packet-its-template.c" +#line 382 "./asn1/its/packet-its-template.c" { &hf_its_roadworksSubCauseCode, { "roadworksSubCauseCode", "its.subCauseCode", @@ -17926,7 +17669,7 @@ void proto_register_its(void) &ett_evrsr_SupportedPaymentTypes, /*--- End of included file: packet-its-ettarr.c ---*/ -#line 584 "./asn1/its/packet-its-template.c" +#line 585 "./asn1/its/packet-its-template.c" }; static ei_register_info ei[] = { diff --git a/epan/dissectors/packet-lcsap.c b/epan/dissectors/packet-lcsap.c index edc6a69d5b..0c535a941b 100644 --- a/epan/dissectors/packet-lcsap.c +++ b/epan/dissectors/packet-lcsap.c @@ -740,7 +740,7 @@ dissect_lcsap_Barometric_Pressure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lcsap_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1049,7 +1049,7 @@ dissect_lcsap_Ellipsoid_Arc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lcsap_Macro_eNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1059,7 +1059,7 @@ dissect_lcsap_Macro_eNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_lcsap_Home_eNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-lpp.c b/epan/dissectors/packet-lpp.c index 839f7b9e48..7e5ee1af51 100644 --- a/epan/dissectors/packet-lpp.c +++ b/epan/dissectors/packet-lpp.c @@ -4207,6 +4207,11 @@ dissect_lpp_Acknowledgement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * T_lpp_message_segmentation_req_r14_bits[] = { + &hf_lpp_T_lpp_message_segmentation_req_r14_serverToTarget, + &hf_lpp_T_lpp_message_segmentation_req_r14_targetToServer, + NULL +}; static int dissect_lpp_T_lpp_message_segmentation_req_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4214,7 +4219,7 @@ dissect_lpp_T_lpp_message_segmentation_req_r14(tvbuff_t *tvb _U_, int offset _U_ tvbuff_t *segmentation_req_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &segmentation_req_tvb, NULL); + NO_BOUND, NO_BOUND, FALSE, T_lpp_message_segmentation_req_r14_bits, 2, &segmentation_req_tvb, NULL); if(segmentation_req_tvb){ proto_tree *subtree; @@ -4583,6 +4588,11 @@ dissect_lpp_SegmentationInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const int * T_lpp_message_segmentation_r14_bits[] = { + &hf_lpp_T_lpp_message_segmentation_r14_serverToTarget, + &hf_lpp_T_lpp_message_segmentation_r14_targetToServer, + NULL +}; static int dissect_lpp_T_lpp_message_segmentation_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4590,7 +4600,7 @@ dissect_lpp_T_lpp_message_segmentation_r14(tvbuff_t *tvb _U_, int offset _U_, as tvbuff_t *segmentation_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &segmentation_tvb, NULL); + NO_BOUND, NO_BOUND, FALSE, T_lpp_message_segmentation_r14_bits, 2, &segmentation_tvb, NULL); if(segmentation_tvb){ proto_tree *subtree; @@ -4674,6 +4684,13 @@ dissect_lpp_GNSS_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro } +static const int * T_sbas_IDs_bits[] = { + &hf_lpp_T_sbas_IDs_waas, + &hf_lpp_T_sbas_IDs_egnos, + &hf_lpp_T_sbas_IDs_msas, + &hf_lpp_T_sbas_IDs_gagan, + NULL +}; static int dissect_lpp_T_sbas_IDs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4682,7 +4699,7 @@ dissect_lpp_T_sbas_IDs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &sbas_IDs_tvb, &len); + 1, 8, FALSE, T_sbas_IDs_bits, 4, &sbas_IDs_tvb, &len); if(sbas_IDs_tvb){ proto_tree *subtree; @@ -4722,6 +4739,12 @@ dissect_lpp_SBAS_IDs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr } +static const int * T_posModes_bits[] = { + &hf_lpp_T_posModes_standalone, + &hf_lpp_T_posModes_ue_based, + &hf_lpp_T_posModes_ue_assisted, + NULL +}; static int dissect_lpp_T_posModes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4730,7 +4753,7 @@ dissect_lpp_T_posModes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &posModes_tvb, &len); + 1, 8, FALSE, T_posModes_bits, 3, &posModes_tvb, &len); if(posModes_tvb){ proto_tree *subtree; @@ -4771,7 +4794,7 @@ dissect_lpp_PositioningModes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lpp_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4781,7 +4804,7 @@ dissect_lpp_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_lpp_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4815,6 +4838,14 @@ dissect_lpp_GNSS_SignalIDs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const int * T_accessTypes_bits[] = { + &hf_lpp_T_accessTypes_eutra, + &hf_lpp_T_accessTypes_utra, + &hf_lpp_T_accessTypes_gsm, + &hf_lpp_T_accessTypes_nb_iot, + &hf_lpp_T_accessTypes_nr_v1510, + NULL +}; static int dissect_lpp_T_accessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4823,7 +4854,7 @@ dissect_lpp_T_accessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &accessTypes_tvb, &len); + 1, 8, FALSE, T_accessTypes_bits, 5, &accessTypes_tvb, &len); if(accessTypes_tvb){ proto_tree *subtree; @@ -4945,6 +4976,15 @@ dissect_lpp_GNSS_SupportList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * T_gnss_ids_bits[] = { + &hf_lpp_T_gnss_ids_gps, + &hf_lpp_T_gnss_ids_sbas, + &hf_lpp_T_gnss_ids_qzss, + &hf_lpp_T_gnss_ids_galileo, + &hf_lpp_T_gnss_ids_glonass, + &hf_lpp_T_gnss_ids_bds, + NULL +}; static int dissect_lpp_T_gnss_ids(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -4953,7 +4993,7 @@ dissect_lpp_T_gnss_ids(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, &gnss_ids_tvb, &len); + 1, 16, FALSE, T_gnss_ids_bits, 6, &gnss_ids_tvb, &len); if(gnss_ids_tvb){ proto_tree *subtree; @@ -5027,6 +5067,11 @@ dissect_lpp_GNSS_ReferenceLocationSupport(tvbuff_t *tvb _U_, int offset _U_, asn } +static const int * T_ionoModel_bits[] = { + &hf_lpp_T_ionoModel_klobuchar, + &hf_lpp_T_ionoModel_neQuick, + NULL +}; static int dissect_lpp_T_ionoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5035,7 +5080,7 @@ dissect_lpp_T_ionoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &ionoModel_tvb, &len); + 1, 8, FALSE, T_ionoModel_bits, 2, &ionoModel_tvb, &len); if(ionoModel_tvb){ proto_tree *subtree; @@ -5200,6 +5245,15 @@ dissect_lpp_GNSS_DifferentialCorrectionsSupport(tvbuff_t *tvb _U_, int offset _U } +static const int * T_clockModel_bits[] = { + &hf_lpp_T_clockModel_model_1, + &hf_lpp_T_clockModel_model_2, + &hf_lpp_T_clockModel_model_3, + &hf_lpp_T_clockModel_model_4, + &hf_lpp_T_clockModel_model_5, + &hf_lpp_T_clockModel_model_6, + NULL +}; static int dissect_lpp_T_clockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5208,7 +5262,7 @@ dissect_lpp_T_clockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &clockModel_tvb, &len); + 1, 8, FALSE, T_clockModel_bits, 6, &clockModel_tvb, &len); if(clockModel_tvb){ proto_tree *subtree; @@ -5240,6 +5294,15 @@ dissect_lpp_T_clockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } +static const int * T_orbitModel_bits[] = { + &hf_lpp_T_orbitModel_model_1, + &hf_lpp_T_orbitModel_model_2, + &hf_lpp_T_orbitModel_model_3, + &hf_lpp_T_orbitModel_model_4, + &hf_lpp_T_orbitModel_model_5, + &hf_lpp_T_orbitModel_model_6, + NULL +}; static int dissect_lpp_T_orbitModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5248,7 +5311,7 @@ dissect_lpp_T_orbitModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &orbitModel_tvb, &len); + 1, 8, FALSE, T_orbitModel_bits, 6, &orbitModel_tvb, &len); if(orbitModel_tvb){ proto_tree *subtree; @@ -5366,6 +5429,16 @@ dissect_lpp_GNSS_AcquisitionAssistanceSupport(tvbuff_t *tvb _U_, int offset _U_, } +static const int * T_almanacModel_bits[] = { + &hf_lpp_T_almanacModel_model_1, + &hf_lpp_T_almanacModel_model_2, + &hf_lpp_T_almanacModel_model_3, + &hf_lpp_T_almanacModel_model_4, + &hf_lpp_T_almanacModel_model_5, + &hf_lpp_T_almanacModel_model_6, + &hf_lpp_T_almanacModel_model_7, + NULL +}; static int dissect_lpp_T_almanacModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5374,7 +5447,7 @@ dissect_lpp_T_almanacModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &almanacModel_tvb, &len); + 1, 8, FALSE, T_almanacModel_bits, 7, &almanacModel_tvb, &len); if(almanacModel_tvb){ proto_tree *subtree; @@ -5423,6 +5496,14 @@ dissect_lpp_GNSS_AlmanacSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } +static const int * T_utc_Model_bits[] = { + &hf_lpp_T_utc_Model_model_1, + &hf_lpp_T_utc_Model_model_2, + &hf_lpp_T_utc_Model_model_3, + &hf_lpp_T_utc_Model_model_4, + &hf_lpp_T_utc_Model_model_5, + NULL +}; static int dissect_lpp_T_utc_Model(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5431,7 +5512,7 @@ dissect_lpp_T_utc_Model(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &utc_Model_tvb, &len); + 1, 8, FALSE, T_utc_Model_bits, 5, &utc_Model_tvb, &len); if(utc_Model_tvb){ proto_tree *subtree; @@ -5846,6 +5927,11 @@ dissect_lpp_A_GNSS_ProvideCapabilities_eag_1(tvbuff_t *tvb _U_, int offset _U_, } +static const int * T_periodicAssistanceData_r15_bits[] = { + &hf_lpp_T_periodicAssistanceData_r15_solicited, + &hf_lpp_T_periodicAssistanceData_r15_unsolicited, + NULL +}; static int dissect_lpp_T_periodicAssistanceData_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5854,7 +5940,7 @@ dissect_lpp_T_periodicAssistanceData_r15(tvbuff_t *tvb _U_, int offset _U_, asn1 int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &periodicAssistanceData_tvb, &len); + 1, 8, FALSE, T_periodicAssistanceData_r15_bits, 2, &periodicAssistanceData_tvb, &len); if(periodicAssistanceData_tvb){ proto_tree *subtree; @@ -5906,6 +5992,12 @@ dissect_lpp_A_GNSS_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const int * T_otdoa_Mode_bits[] = { + &hf_lpp_T_otdoa_Mode_ue_assisted, + &hf_lpp_T_otdoa_Mode_ue_assisted_NB_r14, + &hf_lpp_T_otdoa_Mode_ue_assisted_NB_TDD_r15, + NULL +}; static int dissect_lpp_T_otdoa_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -5914,7 +6006,7 @@ dissect_lpp_T_otdoa_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &otdoa_Mode_tvb, &len); + 1, 8, FALSE, T_otdoa_Mode_bits, 3, &otdoa_Mode_tvb, &len); if(otdoa_Mode_tvb){ proto_tree *subtree; @@ -6323,6 +6415,14 @@ dissect_lpp_OTDOA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const int * T_ecid_MeasSupported_bits[] = { + &hf_lpp_T_ecid_MeasSupported_rsrpSup, + &hf_lpp_T_ecid_MeasSupported_rsrqSup, + &hf_lpp_T_ecid_MeasSupported_ueRxTxSup, + &hf_lpp_T_ecid_MeasSupported_nrsrpSup_r14, + &hf_lpp_T_ecid_MeasSupported_nrsrqSup_r14, + NULL +}; static int dissect_lpp_T_ecid_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6331,7 +6431,7 @@ dissect_lpp_T_ecid_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &ecid_MeasSupported_tvb, &len); + 1, 8, FALSE, T_ecid_MeasSupported_bits, 5, &ecid_MeasSupported_tvb, &len); if(ecid_MeasSupported_tvb){ proto_tree *subtree; @@ -6464,6 +6564,12 @@ dissect_lpp_ECID_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const int * T_sensor_Modes_r13_bits[] = { + &hf_lpp_T_sensor_Modes_r13_standalone, + &hf_lpp_T_sensor_Modes_r13_ue_assisted, + &hf_lpp_T_sensor_Modes_r13_ue_based, + NULL +}; static int dissect_lpp_T_sensor_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6472,7 +6578,7 @@ dissect_lpp_T_sensor_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &sensor_Modes_tvb, &len); + 1, 8, FALSE, T_sensor_Modes_r13_bits, 3, &sensor_Modes_tvb, &len); if(sensor_Modes_tvb){ proto_tree *subtree; @@ -6627,6 +6733,12 @@ dissect_lpp_Sensor_ProvideCapabilities_r13(tvbuff_t *tvb _U_, int offset _U_, as } +static const int * T_tbs_Modes_r13_bits[] = { + &hf_lpp_T_tbs_Modes_r13_standalone, + &hf_lpp_T_tbs_Modes_r13_ue_assisted, + &hf_lpp_T_tbs_Modes_r13_ue_based, + NULL +}; static int dissect_lpp_T_tbs_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6635,7 +6747,7 @@ dissect_lpp_T_tbs_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &tbs_Modes_tvb, &len); + 1, 8, FALSE, T_tbs_Modes_r13_bits, 3, &tbs_Modes_tvb, &len); if(tbs_Modes_tvb){ proto_tree *subtree; @@ -6673,6 +6785,13 @@ dissect_lpp_MBS_AssistanceDataSupportList_r14(tvbuff_t *tvb _U_, int offset _U_, } +static const int * T_mbs_ConfigSupport_r14_bits[] = { + &hf_lpp_T_mbs_ConfigSupport_r14_tb1, + &hf_lpp_T_mbs_ConfigSupport_r14_tb2, + &hf_lpp_T_mbs_ConfigSupport_r14_tb3, + &hf_lpp_T_mbs_ConfigSupport_r14_tb4, + NULL +}; static int dissect_lpp_T_mbs_ConfigSupport_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6681,7 +6800,7 @@ dissect_lpp_T_mbs_ConfigSupport_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &mbs_ConfigSupport_tvb, &len); + 1, 8, FALSE, T_mbs_ConfigSupport_r14_bits, 4, &mbs_ConfigSupport_tvb, &len); if(mbs_ConfigSupport_tvb){ proto_tree *subtree; @@ -6753,6 +6872,12 @@ dissect_lpp_TBS_ProvideCapabilities_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static const int * T_wlan_Modes_r13_bits[] = { + &hf_lpp_T_wlan_Modes_r13_standalone, + &hf_lpp_T_wlan_Modes_r13_ue_assisted, + &hf_lpp_T_wlan_Modes_r13_ue_based, + NULL +}; static int dissect_lpp_T_wlan_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6761,7 +6886,7 @@ dissect_lpp_T_wlan_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &wlan_Modes_tvb, &len); + 1, 8, FALSE, T_wlan_Modes_r13_bits, 3, &wlan_Modes_tvb, &len); if(wlan_Modes_tvb){ proto_tree *subtree; @@ -6784,6 +6909,11 @@ dissect_lpp_T_wlan_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * T_wlan_MeasSupported_r13_bits[] = { + &hf_lpp_T_wlan_MeasSupported_r13_rssi_r13, + &hf_lpp_T_wlan_MeasSupported_r13_rtt_r13, + NULL +}; static int dissect_lpp_T_wlan_MeasSupported_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6792,7 +6922,7 @@ dissect_lpp_T_wlan_MeasSupported_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &wlan_MeasSupported_tvb, &len); + 1, 8, FALSE, T_wlan_MeasSupported_r13_bits, 2, &wlan_MeasSupported_tvb, &len); if(wlan_MeasSupported_tvb){ proto_tree *subtree; @@ -6812,6 +6942,11 @@ dissect_lpp_T_wlan_MeasSupported_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const int * T_wlan_AP_AD_Supported_r14_bits[] = { + &hf_lpp_T_wlan_AP_AD_Supported_r14_ap_identifier, + &hf_lpp_T_wlan_AP_AD_Supported_r14_ap_location, + NULL +}; static int dissect_lpp_T_wlan_AP_AD_Supported_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6820,7 +6955,7 @@ dissect_lpp_T_wlan_AP_AD_Supported_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_c int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &wlan_AP_AD_Supported_tvb, &len); + 1, 8, FALSE, T_wlan_AP_AD_Supported_r14_bits, 2, &wlan_AP_AD_Supported_tvb, &len); if(wlan_AP_AD_Supported_tvb){ proto_tree *subtree; @@ -6886,6 +7021,11 @@ dissect_lpp_WLAN_ProvideCapabilities_r13(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const int * T_bt_Modes_r13_bits[] = { + &hf_lpp_T_bt_Modes_r13_standalone, + &hf_lpp_T_bt_Modes_r13_ue_assisted, + NULL +}; static int dissect_lpp_T_bt_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6894,7 +7034,7 @@ dissect_lpp_T_bt_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &bt_Modes_tvb, &len); + 1, 8, FALSE, T_bt_Modes_r13_bits, 2, &bt_Modes_tvb, &len); if(bt_Modes_tvb){ proto_tree *subtree; @@ -6914,6 +7054,10 @@ dissect_lpp_T_bt_Modes_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const int * T_bt_MeasSupported_r13_bits[] = { + &hf_lpp_T_bt_MeasSupported_r13_rssi_r13, + NULL +}; static int dissect_lpp_T_bt_MeasSupported_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -6922,7 +7066,7 @@ dissect_lpp_T_bt_MeasSupported_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &bt_MeasSupported_tvb, &len); + 1, 8, FALSE, T_bt_MeasSupported_r13_bits, 1, &bt_MeasSupported_tvb, &len); if(bt_MeasSupported_tvb){ proto_tree *subtree; @@ -7139,7 +7283,7 @@ dissect_lpp_T_mnc_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_lpp_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7261,7 +7405,7 @@ dissect_lpp_T_mnc_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_lpp_BIT_STRING_SIZE_36(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7360,7 +7504,7 @@ dissect_lpp_GNSS_ReferenceLocationReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_lpp_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7616,7 +7760,7 @@ dissect_lpp_SV_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_lpp_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 11, 11, FALSE, NULL, NULL); + 11, 11, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7684,7 +7828,7 @@ dissect_lpp_StoredNavListInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_lpp_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8313,6 +8457,11 @@ dissect_lpp_INTEGER_0_503(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } +static const int * T_adType_r14_bits[] = { + &hf_lpp_T_adType_r14_prs, + &hf_lpp_T_adType_r14_nprs, + NULL +}; static int dissect_lpp_T_adType_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -8321,7 +8470,7 @@ dissect_lpp_T_adType_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &adType_tvb, &len); + 1, 8, FALSE, T_adType_r14_bits, 2, &adType_tvb, &len); if(adType_tvb){ proto_tree *subtree; @@ -8422,6 +8571,11 @@ dissect_lpp_TBS_RequestAssistanceData_r14(tvbuff_t *tvb _U_, int offset _U_, asn } +static const int * T_requestedAD_r14_bits[] = { + &hf_lpp_T_requestedAD_r14_ap_identifier, + &hf_lpp_T_requestedAD_r14_ap_location, + NULL +}; static int dissect_lpp_T_requestedAD_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -8430,7 +8584,7 @@ dissect_lpp_T_requestedAD_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &requestedAD_tvb, &len); + 1, 8, FALSE, T_requestedAD_r14_bits, 2, &requestedAD_tvb, &len); if(requestedAD_tvb){ proto_tree *subtree; @@ -8715,7 +8869,7 @@ dissect_lpp_T_notificationOfLeapSecond(tvbuff_t *tvb _U_, int offset _U_, asn1_c #line 480 "./asn1/lpp/lpp.cnf" tvbuff_t *notificationOfLeapSecond_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, ¬ificationOfLeapSecond_tvb, NULL); + 2, 2, FALSE, NULL, 0, ¬ificationOfLeapSecond_tvb, NULL); @@ -8899,7 +9053,7 @@ dissect_lpp_T_plmn_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lpp_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9488,7 +9642,7 @@ dissect_lpp_T_dataID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr #line 499 "./asn1/lpp/lpp.cnf" tvbuff_t *dataID_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &dataID_tvb, NULL); + 2, 2, FALSE, NULL, 0, &dataID_tvb, NULL); @@ -9793,7 +9947,7 @@ dissect_lpp_T_smoothingIndicator_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx #line 605 "./asn1/lpp/lpp.cnf" tvbuff_t *param_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 1, 1, FALSE, ¶m_tvb, NULL); + 1, 1, FALSE, NULL, 0, ¶m_tvb, NULL); @@ -9815,7 +9969,7 @@ dissect_lpp_T_smoothingInterval_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ #line 618 "./asn1/lpp/lpp.cnf" tvbuff_t *param_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 3, 3, FALSE, ¶m_tvb, NULL); + 3, 3, FALSE, NULL, 0, ¶m_tvb, NULL); @@ -10738,7 +10892,7 @@ dissect_lpp_T_gloP1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro #line 995 "./asn1/lpp/lpp.cnf" tvbuff_t *gloP1_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &gloP1_tvb, NULL); + 2, 2, FALSE, NULL, 0, &gloP1_tvb, NULL); @@ -10784,7 +10938,7 @@ dissect_lpp_NavModel_GLONASS_ECEF(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lpp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10902,7 +11056,7 @@ dissect_lpp_T_svHealthExt_v1240(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a tvbuff_t *svHealthExt_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, &svHealthExt_tvb, NULL); + 4, 4, FALSE, NULL, 0, &svHealthExt_tvb, NULL); @@ -11027,7 +11181,7 @@ dissect_lpp_GNSS_RealTimeIntegrity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lpp_BIT_STRING_SIZE_1_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1024, FALSE, NULL, NULL); + 1, 1024, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -11231,7 +11385,7 @@ dissect_lpp_T_kepSV_StatusINAV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac tvbuff_t *statusINAV_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, &statusINAV_tvb, NULL); + 4, 4, FALSE, NULL, 0, &statusINAV_tvb, NULL); @@ -11255,7 +11409,7 @@ dissect_lpp_T_kepSV_StatusFNAV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac tvbuff_t *statusFNAV_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &statusFNAV_tvb, NULL); + 2, 2, FALSE, NULL, 0, &statusFNAV_tvb, NULL); @@ -11482,7 +11636,7 @@ dissect_lpp_T_bdsSvHealth_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act tvbuff_t *bdsSvHealth_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, &bdsSvHealth_tvb, NULL); + 9, 9, FALSE, NULL, 0, &bdsSvHealth_tvb, NULL); @@ -11676,7 +11830,7 @@ dissect_lpp_T_utcDN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro #line 1433 "./asn1/lpp/lpp.cnf" tvbuff_t *utcDN_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 4, 4, FALSE, &utcDN_tvb, NULL); + 4, 4, FALSE, NULL, 0, &utcDN_tvb, NULL); @@ -11720,7 +11874,7 @@ dissect_lpp_T_kp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_ #line 1461 "./asn1/lpp/lpp.cnf" tvbuff_t *kp_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &kp_tvb, NULL); + 2, 2, FALSE, NULL, 0, &kp_tvb, NULL); @@ -12072,7 +12226,7 @@ dissect_lpp_INTEGER_0_254(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_lpp_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12844,7 +12998,7 @@ dissect_lpp_T_numDL_Frames(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_lpp_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12854,7 +13008,7 @@ dissect_lpp_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lpp_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12864,7 +13018,7 @@ dissect_lpp_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lpp_BIT_STRING_SIZE_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 512, 512, FALSE, NULL, NULL); + 512, 512, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12874,7 +13028,7 @@ dissect_lpp_BIT_STRING_SIZE_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lpp_BIT_STRING_SIZE_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1024, 1024, FALSE, NULL, NULL); + 1024, 1024, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13572,7 +13726,7 @@ dissect_lpp_INTEGER_0_174(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_lpp_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13582,7 +13736,7 @@ dissect_lpp_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lpp_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14389,7 +14543,7 @@ dissect_lpp_T_transmitterLatitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ct guint32 val; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 26, 26, FALSE, &transmitterLatitude_tvb, NULL); + 26, 26, FALSE, NULL, 0, &transmitterLatitude_tvb, NULL); val = tvb_get_bits32(transmitterLatitude_tvb, 0, 26, ENC_BIG_ENDIAN); actx->created_item = proto_tree_add_uint(tree, hf_index, transmitterLatitude_tvb, 0, 4, val); @@ -14408,7 +14562,7 @@ dissect_lpp_T_transmitterLongitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_c guint32 val; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 27, 27, FALSE, &transmitterLongitude_tvb, NULL); + 27, 27, FALSE, NULL, 0, &transmitterLongitude_tvb, NULL); val = tvb_get_bits32(transmitterLongitude_tvb, 0, 27, ENC_BIG_ENDIAN); actx->created_item = proto_tree_add_uint(tree, hf_index, transmitterLongitude_tvb, 0, 4, val); @@ -14427,7 +14581,7 @@ dissect_lpp_T_transmitterAltitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ct guint32 val; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 15, 15, FALSE, &transmitterAltitude_tvb, NULL); + 15, 15, FALSE, NULL, 0, &transmitterAltitude_tvb, NULL); val = tvb_get_bits16(transmitterAltitude_tvb, 0, 15, ENC_BIG_ENDIAN); actx->created_item = proto_tree_add_uint(tree, hf_index, transmitterAltitude_tvb, 0, 2, val); @@ -14657,7 +14811,7 @@ dissect_lpp_TBS_ProvideAssistanceData_r14(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_lpp_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14667,7 +14821,7 @@ dissect_lpp_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_lpp_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 34, 34, FALSE, NULL, NULL); + 34, 34, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14677,7 +14831,7 @@ dissect_lpp_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lpp_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -15634,6 +15788,14 @@ dissect_lpp_OTDOA_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, } +static const int * T_requestedMeasurements_bits[] = { + &hf_lpp_T_requestedMeasurements_rsrpReq, + &hf_lpp_T_requestedMeasurements_rsrqReq, + &hf_lpp_T_requestedMeasurements_ueRxTxReq, + &hf_lpp_T_requestedMeasurements_nrsrpReq_r14, + &hf_lpp_T_requestedMeasurements_nrsrqReq_r14, + NULL +}; static int dissect_lpp_T_requestedMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -15642,7 +15804,7 @@ dissect_lpp_T_requestedMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &requestedMeasurements_tvb, &len); + 1, 8, FALSE, T_requestedMeasurements_bits, 5, &requestedMeasurements_tvb, &len); if(requestedMeasurements_tvb){ proto_tree *subtree; @@ -15727,6 +15889,10 @@ dissect_lpp_Sensor_RequestLocationInformation_r13(tvbuff_t *tvb _U_, int offset } +static const int * T_mbsRequestedMeasurements_r14_bits[] = { + &hf_lpp_T_mbsRequestedMeasurements_r14_rssi, + NULL +}; static int dissect_lpp_T_mbsRequestedMeasurements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -15735,7 +15901,7 @@ dissect_lpp_T_mbsRequestedMeasurements_r14(tvbuff_t *tvb _U_, int offset _U_, as int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &mbsRequestedMeasurements_tvb, &len); + 1, 8, FALSE, T_mbsRequestedMeasurements_r14_bits, 1, &mbsRequestedMeasurements_tvb, &len); if(mbsRequestedMeasurements_tvb){ proto_tree *subtree; @@ -15781,6 +15947,11 @@ dissect_lpp_TBS_RequestLocationInformation_r13(tvbuff_t *tvb _U_, int offset _U_ } +static const int * T_requestedMeasurements_r13_bits[] = { + &hf_lpp_T_requestedMeasurements_r13_rssi, + &hf_lpp_T_requestedMeasurements_r13_rtt, + NULL +}; static int dissect_lpp_T_requestedMeasurements_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -15789,7 +15960,7 @@ dissect_lpp_T_requestedMeasurements_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &requestedMeasurements_tvb, &len); + 1, 8, FALSE, T_requestedMeasurements_r13_bits, 2, &requestedMeasurements_tvb, &len); if(requestedMeasurements_tvb){ proto_tree *subtree; @@ -15837,6 +16008,10 @@ dissect_lpp_WLAN_RequestLocationInformation_r13(tvbuff_t *tvb _U_, int offset _U } +static const int * T_requestedMeasurements_r13_01_bits[] = { + &hf_lpp_T_requestedMeasurements_r13_01_rssi, + NULL +}; static int dissect_lpp_T_requestedMeasurements_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -15845,7 +16020,7 @@ dissect_lpp_T_requestedMeasurements_r13_01(tvbuff_t *tvb _U_, int offset _U_, as int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &requestedMeasurements_tvb, &len); + 1, 8, FALSE, T_requestedMeasurements_r13_01_bits, 1, &requestedMeasurements_tvb, &len); if(requestedMeasurements_tvb){ proto_tree *subtree; @@ -16475,6 +16650,15 @@ dissect_lpp_CommonIEsProvideLocationInformation_eag_1(tvbuff_t *tvb _U_, int off } +static const int * LocationSource_r13_bits[] = { + &hf_lpp_LocationSource_r13_a_gnss, + &hf_lpp_LocationSource_r13_wlan, + &hf_lpp_LocationSource_r13_bt, + &hf_lpp_LocationSource_r13_tbs, + &hf_lpp_LocationSource_r13_sensor, + &hf_lpp_LocationSource_r13_ha_gnss_v1510, + NULL +}; static int dissect_lpp_LocationSource_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -16483,7 +16667,7 @@ dissect_lpp_LocationSource_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, &locSource_tvb, &len); + 1, 16, FALSE, LocationSource_r13_bits, 6, &locSource_tvb, &len); if(locSource_tvb){ proto_tree *subtree; @@ -16993,7 +17177,7 @@ dissect_lpp_T_error_Resolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 412 "./asn1/lpp/lpp.cnf" tvbuff_t *error_Resolution_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &error_Resolution_tvb, NULL); + 2, 2, FALSE, NULL, 0, &error_Resolution_tvb, NULL); @@ -17015,7 +17199,7 @@ dissect_lpp_T_error_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U #line 425 "./asn1/lpp/lpp.cnf" tvbuff_t *error_Value_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 5, 5, FALSE, &error_Value_tvb, NULL); + 5, 5, FALSE, NULL, 0, &error_Value_tvb, NULL); @@ -17037,7 +17221,7 @@ dissect_lpp_T_error_NumSamples(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 438 "./asn1/lpp/lpp.cnf" tvbuff_t *error_NumSamples_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 3, 3, FALSE, &error_NumSamples_tvb, NULL); + 3, 3, FALSE, NULL, 0, &error_NumSamples_tvb, NULL); @@ -18178,7 +18362,7 @@ dissect_lpp_T_btAddr_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ tvbuff_t *btAddr_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 48, 48, FALSE, &btAddr_tvb, NULL); + 48, 48, FALSE, NULL, 0, &btAddr_tvb, NULL); actx->created_item = proto_tree_add_item(tree, hf_index, btAddr_tvb, 0, 6, ENC_NA); diff --git a/epan/dissectors/packet-lppa.c b/epan/dissectors/packet-lppa.c index 553983a5bb..c8e9c40224 100644 --- a/epan/dissectors/packet-lppa.c +++ b/epan/dissectors/packet-lppa.c @@ -882,7 +882,7 @@ dissect_lppa_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_lppa_EUTRANCellIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1008,7 +1008,7 @@ dissect_lppa_NumberOfAntennaPorts(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lppa_SFNInitialisationTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1133,7 +1133,7 @@ dissect_lppa_E_UTRANAccessPointPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lppa_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1143,7 +1143,7 @@ dissect_lppa_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppa_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1153,7 +1153,7 @@ dissect_lppa_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppa_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1163,7 +1163,7 @@ dissect_lppa_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppa_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1173,7 +1173,7 @@ dissect_lppa_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lppa_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1183,7 +1183,7 @@ dissect_lppa_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lppa_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1193,7 +1193,7 @@ dissect_lppa_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lppa_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1203,7 +1203,7 @@ dissect_lppa_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lppa_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1213,7 +1213,7 @@ dissect_lppa_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lppa_BIT_STRING_SIZE_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 512, 512, FALSE, NULL, NULL); + 512, 512, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1223,7 +1223,7 @@ dissect_lppa_BIT_STRING_SIZE_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lppa_BIT_STRING_SIZE_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1024, 1024, FALSE, NULL, NULL); + 1024, 1024, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1346,7 +1346,7 @@ dissect_lppa_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_lppa_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1356,7 +1356,7 @@ dissect_lppa_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppa_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1418,7 +1418,7 @@ dissect_lppa_MBSFNsubframeConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lppa_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1428,7 +1428,7 @@ dissect_lppa_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lppa_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-lppe.c b/epan/dissectors/packet-lppe.c index 3c57100add..7b5d4959ee 100644 --- a/epan/dissectors/packet-lppe.c +++ b/epan/dissectors/packet-lppe.c @@ -2914,11 +2914,17 @@ dissect_lppe_OMA_LPPe_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn } +static const int * T_iP_Address_support_bits[] = { + &hf_lppe_T_iP_Address_support_iPv4, + &hf_lppe_T_iP_Address_support_iPv6, + &hf_lppe_T_iP_Address_support_nat, + NULL +}; static int dissect_lppe_T_iP_Address_support(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_iP_Address_support_bits, 3, NULL, NULL); return offset; } @@ -3076,11 +3082,16 @@ dissect_lppe_OMA_LPPe_RelativeLocationChange_Capabilities(tvbuff_t *tvb _U_, int } +static const int * OMA_LPPe_HighAccuracyFormatCapabilities_bits[] = { + &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAposition, + &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAvelocity, + NULL +}; static int dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, OMA_LPPe_HighAccuracyFormatCapabilities_bits, 2, NULL, NULL); return offset; } @@ -3123,11 +3134,17 @@ dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs(tvbuff_t *tvb _U_, i } +static const int * T_relativeLocationReportingSupport_bits[] = { + &hf_lppe_T_relativeLocationReportingSupport_geo, + &hf_lppe_T_relativeLocationReportingSupport_civic, + &hf_lppe_T_relativeLocationReportingSupport_otherProviders, + NULL +}; static int dissect_lppe_T_relativeLocationReportingSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_relativeLocationReportingSupport_bits, 3, NULL, NULL); return offset; } @@ -3223,21 +3240,38 @@ dissect_lppe_OMA_LPPe_ScheduledLocation_Capabilities(tvbuff_t *tvb _U_, int offs } +static const int * OMA_LPPe_FixedAccessTypes_bits[] = { + &hf_lppe_OMA_LPPe_FixedAccessTypes_cable, + &hf_lppe_OMA_LPPe_FixedAccessTypes_dsl, + &hf_lppe_OMA_LPPe_FixedAccessTypes_lan, + &hf_lppe_OMA_LPPe_FixedAccessTypes_pstn, + &hf_lppe_OMA_LPPe_FixedAccessTypes_other, + NULL +}; static int dissect_lppe_OMA_LPPe_FixedAccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, OMA_LPPe_FixedAccessTypes_bits, 5, NULL, NULL); return offset; } +static const int * OMA_LPPe_WirelessAccessTypes_bits[] = { + &hf_lppe_OMA_LPPe_WirelessAccessTypes_gsm, + &hf_lppe_OMA_LPPe_WirelessAccessTypes_utra, + &hf_lppe_OMA_LPPe_WirelessAccessTypes_lte, + &hf_lppe_OMA_LPPe_WirelessAccessTypes_wimax, + &hf_lppe_OMA_LPPe_WirelessAccessTypes_wifi, + &hf_lppe_OMA_LPPe_WirelessAccessTypes_other, + NULL +}; static int dissect_lppe_OMA_LPPe_WirelessAccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, OMA_LPPe_WirelessAccessTypes_bits, 6, NULL, NULL); return offset; } @@ -3299,11 +3333,17 @@ dissect_lppe_OMA_LPPe_CommonIEsProvideCapabilities(tvbuff_t *tvb _U_, int offset } +static const int * T_ionoModel_bits[] = { + &hf_lppe_T_ionoModel_localKlobuchar, + &hf_lppe_T_ionoModel_ionoStormWarning, + &hf_lppe_T_ionoModel_wideAreaIonoSurface, + NULL +}; static int dissect_lppe_T_ionoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_ionoModel_bits, 3, NULL, NULL); return offset; } @@ -3323,11 +3363,16 @@ dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport(tvbuff_t *tvb _U_, int offse } +static const int * T_tropoModel_bits[] = { + &hf_lppe_T_tropoModel_localTroposphereDelay, + &hf_lppe_T_tropoModel_surfaceParameters, + NULL +}; static int dissect_lppe_T_tropoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_tropoModel_bits, 2, NULL, NULL); return offset; } @@ -3541,11 +3586,16 @@ dissect_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList(tvbuff_t *tvb _U_, int off } +static const int * T_ionosphereMeasurementSupport_bits[] = { + &hf_lppe_T_ionosphereMeasurementSupport_tecPerSVsupport, + &hf_lppe_T_ionosphereMeasurementSupport_zenithTecSupport, + NULL +}; static int dissect_lppe_T_ionosphereMeasurementSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_ionosphereMeasurementSupport_bits, 2, NULL, NULL); return offset; } @@ -3567,21 +3617,31 @@ dissect_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList(tvbuff_t *tvb _U_, } +static const int * T_modeSupport_bits[] = { + &hf_lppe_T_modeSupport_ueBased, + &hf_lppe_T_modeSupport_ueAssisted, + NULL +}; static int dissect_lppe_T_modeSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, T_modeSupport_bits, 2, NULL, NULL); return offset; } +static const int * T_haGNSSantennaInformationSupport_bits[] = { + &hf_lppe_T_haGNSSantennaInformationSupport_antennaDescriptionSupported, + &hf_lppe_T_haGNSSantennaInformationSupport_antennaOrientationSupported, + NULL +}; static int dissect_lppe_T_haGNSSantennaInformationSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, T_haGNSSantennaInformationSupport_bits, 2, NULL, NULL); return offset; } @@ -3690,11 +3750,16 @@ dissect_lppe_OMA_LPPe_OTDOA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U } +static const int * T_eotdSupport_bits[] = { + &hf_lppe_T_eotdSupport_ueBased, + &hf_lppe_T_eotdSupport_ueAssisted, + NULL +}; static int dissect_lppe_T_eotdSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, T_eotdSupport_bits, 2, NULL, NULL); return offset; } @@ -3730,31 +3795,62 @@ dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities(tvbuff_t *tvb _U_, int offs } +static const int * T_ecid_lte_MeasSupported_bits[] = { + &hf_lppe_T_ecid_lte_MeasSupported_rsrp, + &hf_lppe_T_ecid_lte_MeasSupported_rsrq, + &hf_lppe_T_ecid_lte_MeasSupported_ueRxTx, + &hf_lppe_T_ecid_lte_MeasSupported_non_serving, + &hf_lppe_T_ecid_lte_MeasSupported_historic, + NULL +}; static int dissect_lppe_T_ecid_lte_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_ecid_lte_MeasSupported_bits, 5, NULL, NULL); return offset; } +static const int * T_ecid_lte_eNodeB_ADSupported_bits[] = { + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslist, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslocation, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_power, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antennaPortConfig, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antenna_gain, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_beam_width, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_direction, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_frequency_accuracy, + &hf_lppe_T_ecid_lte_eNodeB_ADSupported_non_serving, + NULL +}; static int dissect_lppe_T_ecid_lte_eNodeB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_ecid_lte_eNodeB_ADSupported_bits, 9, NULL, NULL); return offset; } +static const int * T_ecid_utra_HeNB_ADSupported_bits[] = { + &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslist, + &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslocation, + &hf_lppe_T_ecid_utra_HeNB_ADSupported_locationreliability, + &hf_lppe_T_ecid_utra_HeNB_ADSupported_transmit_power, + &hf_lppe_T_ecid_utra_HeNB_ADSupported_antennaPortConfig, + &hf_lppe_T_ecid_utra_HeNB_ADSupported_frequency_accuracy, + &hf_lppe_T_ecid_utra_HeNB_ADSupported_coveragearea, + &hf_lppe_T_ecid_utra_HeNB_ADSupported_non_serving, + NULL +}; static int dissect_lppe_T_ecid_utra_HeNB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_ecid_utra_HeNB_ADSupported_bits, 8, NULL, NULL); return offset; } @@ -3776,21 +3872,40 @@ dissect_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities(tvbuff_t *tvb _U_, int offset } +static const int * T_ecid_gsm_MeasSupported_bits[] = { + &hf_lppe_T_ecid_gsm_MeasSupported_rxLevel, + &hf_lppe_T_ecid_gsm_MeasSupported_tA, + &hf_lppe_T_ecid_gsm_MeasSupported_nMR_GERAN, + &hf_lppe_T_ecid_gsm_MeasSupported_non_serving, + &hf_lppe_T_ecid_gsm_MeasSupported_historic, + NULL +}; static int dissect_lppe_T_ecid_gsm_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_ecid_gsm_MeasSupported_bits, 5, NULL, NULL); return offset; } +static const int * T_ecid_gsm_ADSupported_bits[] = { + &hf_lppe_T_ecid_gsm_ADSupported_bslist, + &hf_lppe_T_ecid_gsm_ADSupported_bslocation, + &hf_lppe_T_ecid_gsm_ADSupported_transmit_power, + &hf_lppe_T_ecid_gsm_ADSupported_antenna_gain, + &hf_lppe_T_ecid_gsm_ADSupported_beam_width, + &hf_lppe_T_ecid_gsm_ADSupported_transmit_direction, + &hf_lppe_T_ecid_gsm_ADSupported_frequency_accuracy, + &hf_lppe_T_ecid_gsm_ADSupported_non_serving, + NULL +}; static int dissect_lppe_T_ecid_gsm_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_ecid_gsm_ADSupported_bits, 8, NULL, NULL); return offset; } @@ -3811,31 +3926,65 @@ dissect_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities(tvbuff_t *tvb _U_, int offset } +static const int * T_ecid_utra_MeasSupported_bits[] = { + &hf_lppe_T_ecid_utra_MeasSupported_measuredResultsList, + &hf_lppe_T_ecid_utra_MeasSupported_tdd_timingAdvance, + &hf_lppe_T_ecid_utra_MeasSupported_mRL_utra_CarrierRSSI, + &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_Ec_N0, + &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_RSCP, + &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_pathloss, + &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_primaryCCPCH_RSCP, + &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_pathloss, + &hf_lppe_T_ecid_utra_MeasSupported_non_serving, + &hf_lppe_T_ecid_utra_MeasSupported_historic, + NULL +}; static int dissect_lppe_T_ecid_utra_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_ecid_utra_MeasSupported_bits, 10, NULL, NULL); return offset; } +static const int * T_ecid_utra_nodeB_ADSupported_bits[] = { + &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslist, + &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslocation, + &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_power, + &hf_lppe_T_ecid_utra_nodeB_ADSupported_antenna_gain, + &hf_lppe_T_ecid_utra_nodeB_ADSupported_beam_width, + &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_direction, + &hf_lppe_T_ecid_utra_nodeB_ADSupported_frequency_accuracy, + &hf_lppe_T_ecid_utra_nodeB_ADSupported_non_serving, + NULL +}; static int dissect_lppe_T_ecid_utra_nodeB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_ecid_utra_nodeB_ADSupported_bits, 8, NULL, NULL); return offset; } +static const int * T_ecid_utra_HNB_ADSupported_bits[] = { + &hf_lppe_T_ecid_utra_HNB_ADSupported_bslist, + &hf_lppe_T_ecid_utra_HNB_ADSupported_bslocation, + &hf_lppe_T_ecid_utra_HNB_ADSupported_locationreliability, + &hf_lppe_T_ecid_utra_HNB_ADSupported_transmit_power, + &hf_lppe_T_ecid_utra_HNB_ADSupported_frequency_accuracy, + &hf_lppe_T_ecid_utra_HNB_ADSupported_coveragearea, + &hf_lppe_T_ecid_utra_HNB_ADSupported_non_serving, + NULL +}; static int dissect_lppe_T_ecid_utra_HNB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_ecid_utra_HNB_ADSupported_bits, 7, NULL, NULL); return offset; } @@ -3857,21 +4006,49 @@ dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities(tvbuff_t *tvb _U_, int offse } +static const int * T_wlan_ecid_MeasSupported_bits[] = { + &hf_lppe_T_wlan_ecid_MeasSupported_apSSID, + &hf_lppe_T_wlan_ecid_MeasSupported_apSN, + &hf_lppe_T_wlan_ecid_MeasSupported_apDevType, + &hf_lppe_T_wlan_ecid_MeasSupported_apPhyType, + &hf_lppe_T_wlan_ecid_MeasSupported_apRSSI, + &hf_lppe_T_wlan_ecid_MeasSupported_apChanFreq, + &hf_lppe_T_wlan_ecid_MeasSupported_apRTD, + &hf_lppe_T_wlan_ecid_MeasSupported_ueTP, + &hf_lppe_T_wlan_ecid_MeasSupported_ueAG, + &hf_lppe_T_wlan_ecid_MeasSupported_apRepLoc, + &hf_lppe_T_wlan_ecid_MeasSupported_non_serving, + &hf_lppe_T_wlan_ecid_MeasSupported_historic, + &hf_lppe_T_wlan_ecid_MeasSupported_apTP, + &hf_lppe_T_wlan_ecid_MeasSupported_apAG, + &hf_lppe_T_wlan_ecid_MeasSupported_ueSN, + &hf_lppe_T_wlan_ecid_MeasSupported_ueRSSI, + NULL +}; static int dissect_lppe_T_wlan_ecid_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_wlan_ecid_MeasSupported_bits, 16, NULL, NULL); return offset; } +static const int * OMA_LPPe_WLAN_AP_Type_List_bits[] = { + &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11a, + &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11b, + &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11g, + &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11n, + &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ac, + &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ad, + NULL +}; static int dissect_lppe_OMA_LPPe_WLAN_AP_Type_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, OMA_LPPe_WLAN_AP_Type_List_bits, 6, NULL, NULL); return offset; } @@ -3881,7 +4058,7 @@ dissect_lppe_OMA_LPPe_WLAN_AP_Type_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lppe_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3916,21 +4093,36 @@ dissect_lppe_OMA_LPPe_WLAN_AP_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const int * T_wlan_ap_ADSupported_bits[] = { + &hf_lppe_T_wlan_ap_ADSupported_aplist, + &hf_lppe_T_wlan_ap_ADSupported_aplocation, + &hf_lppe_T_wlan_ap_ADSupported_locationreliability, + &hf_lppe_T_wlan_ap_ADSupported_transmit_power, + &hf_lppe_T_wlan_ap_ADSupported_antenna_gain, + &hf_lppe_T_wlan_ap_ADSupported_coveragearea, + &hf_lppe_T_wlan_ap_ADSupported_non_serving, + NULL +}; static int dissect_lppe_T_wlan_ap_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_wlan_ap_ADSupported_bits, 7, NULL, NULL); return offset; } +static const int * T_additional_wlan_ecid_MeasSupported_bits[] = { + &hf_lppe_T_additional_wlan_ecid_MeasSupported_oc, + &hf_lppe_T_additional_wlan_ecid_MeasSupported_ueMacAddr, + NULL +}; static int dissect_lppe_T_additional_wlan_ecid_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_additional_wlan_ecid_MeasSupported_bits, 2, NULL, NULL); return offset; } @@ -3954,11 +4146,27 @@ dissect_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities(tvbuff_t *tvb _U_, int offset } +static const int * T_ecid_wimax_MeasSupported_bits[] = { + &hf_lppe_T_ecid_wimax_MeasSupported_rTD, + &hf_lppe_T_ecid_wimax_MeasSupported_rTDstd, + &hf_lppe_T_ecid_wimax_MeasSupported_nMR, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelay, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelaystd, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSI, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSIstd, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSTxPower, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINR, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINRstd, + &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSLocation, + &hf_lppe_T_ecid_wimax_MeasSupported_non_serving, + &hf_lppe_T_ecid_wimax_MeasSupported_historic, + NULL +}; static int dissect_lppe_T_ecid_wimax_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_ecid_wimax_MeasSupported_bits, 13, NULL, NULL); return offset; } @@ -3995,11 +4203,16 @@ dissect_lppe_OMA_LPPe_Sensor_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _ } +static const int * T_srnMeasurements_bits[] = { + &hf_lppe_T_srnMeasurements_rssi, + &hf_lppe_T_srnMeasurements_rtd, + NULL +}; static int dissect_lppe_T_srnMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_srnMeasurements_bits, 2, NULL, NULL); return offset; } @@ -4019,11 +4232,16 @@ dissect_lppe_OMA_LPPe_SRN_MeasurementMask(tvbuff_t *tvb _U_, int offset _U_, asn } +static const int * T_supportedAssistanceData_bits[] = { + &hf_lppe_T_supportedAssistanceData_srnGroup, + &hf_lppe_T_supportedAssistanceData_antennaPattern, + NULL +}; static int dissect_lppe_T_supportedAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_supportedAssistanceData_bits, 2, NULL, NULL); return offset; } @@ -4398,11 +4616,16 @@ dissect_lppe_OMA_LPPe_CommonIEsRequestAssistanceData(tvbuff_t *tvb _U_, int offs } +static const int * T_ionoreq_bits[] = { + &hf_lppe_T_ionoreq_klobucharModel, + &hf_lppe_T_ionoreq_ionoStormWarning, + NULL +}; static int dissect_lppe_T_ionoreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_ionoreq_bits, 2, NULL, NULL); return offset; } @@ -4520,11 +4743,16 @@ dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelReq(tvbuff_t *tvb _U_, int offset _U } +static const int * T_troposphereModelReq_bits[] = { + &hf_lppe_T_troposphereModelReq_delay, + &hf_lppe_T_troposphereModelReq_surface, + NULL +}; static int dissect_lppe_T_troposphereModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_troposphereModelReq_bits, 2, NULL, NULL); return offset; } @@ -4981,11 +5209,16 @@ dissect_lppe_T_lteCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_requestedCells_bits[] = { + &hf_lppe_T_requestedCells_eNBs, + &hf_lppe_T_requestedCells_heNBs, + NULL +}; static int dissect_lppe_T_requestedCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_requestedCells_bits, 2, NULL, NULL); return offset; } @@ -5006,11 +5239,16 @@ dissect_lppe_OMA_LPPe_OTDOA_RequestAssistanceData(tvbuff_t *tvb _U_, int offset } +static const int * T_eotdAssistanceReq_bits[] = { + &hf_lppe_T_eotdAssistanceReq_ueAssisted, + &hf_lppe_T_eotdAssistanceReq_ueBased, + NULL +}; static int dissect_lppe_T_eotdAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, T_eotdAssistanceReq_bits, 2, NULL, NULL); return offset; } @@ -5030,11 +5268,16 @@ dissect_lppe_OMA_LPPe_EOTD_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _ } +static const int * T_otdoaUtraAssistanceReq_bits[] = { + &hf_lppe_T_otdoaUtraAssistanceReq_ueAssisted, + &hf_lppe_T_otdoaUtraAssistanceReq_ueBased, + NULL +}; static int dissect_lppe_T_otdoaUtraAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_otdoaUtraAssistanceReq_bits, 2, NULL, NULL); return offset; } @@ -5054,21 +5297,44 @@ dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData(tvbuff_t *tvb _U_, int of } +static const int * T_eNBrequestedAD_bits[] = { + &hf_lppe_T_eNBrequestedAD_bslist, + &hf_lppe_T_eNBrequestedAD_bslocation, + &hf_lppe_T_eNBrequestedAD_transmit_power, + &hf_lppe_T_eNBrequestedAD_antennaPortConfig, + &hf_lppe_T_eNBrequestedAD_antenna_gain, + &hf_lppe_T_eNBrequestedAD_beam_width, + &hf_lppe_T_eNBrequestedAD_transmit_direction, + &hf_lppe_T_eNBrequestedAD_frequency_accuracy, + &hf_lppe_T_eNBrequestedAD_non_serving, + NULL +}; static int dissect_lppe_T_eNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_eNBrequestedAD_bits, 9, NULL, NULL); return offset; } +static const int * T_heNBrequestedAD_bits[] = { + &hf_lppe_T_heNBrequestedAD_bslist, + &hf_lppe_T_heNBrequestedAD_bslocation, + &hf_lppe_T_heNBrequestedAD_locationreliability, + &hf_lppe_T_heNBrequestedAD_transmit_power, + &hf_lppe_T_heNBrequestedAD_antennaPortConfig, + &hf_lppe_T_heNBrequestedAD_frequency_accuracy, + &hf_lppe_T_heNBrequestedAD_coveragearea, + &hf_lppe_T_heNBrequestedAD_non_serving, + NULL +}; static int dissect_lppe_T_heNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_heNBrequestedAD_bits, 8, NULL, NULL); return offset; } @@ -5089,11 +5355,22 @@ dissect_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData(tvbuff_t *tvb _U_, int offs } +static const int * T_requestedAD_bits[] = { + &hf_lppe_T_requestedAD_bslist, + &hf_lppe_T_requestedAD_bslocation, + &hf_lppe_T_requestedAD_transmit_power, + &hf_lppe_T_requestedAD_antenna_gain, + &hf_lppe_T_requestedAD_beam_width, + &hf_lppe_T_requestedAD_transmit_direction, + &hf_lppe_T_requestedAD_frequency_accuracy, + &hf_lppe_T_requestedAD_non_serving, + NULL +}; static int dissect_lppe_T_requestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_requestedAD_bits, 8, NULL, NULL); return offset; } @@ -5113,21 +5390,42 @@ dissect_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData(tvbuff_t *tvb _U_, int offs } +static const int * T_nBrequestedAD_bits[] = { + &hf_lppe_T_nBrequestedAD_bslist, + &hf_lppe_T_nBrequestedAD_bslocation, + &hf_lppe_T_nBrequestedAD_transmit_power, + &hf_lppe_T_nBrequestedAD_antenna_gain, + &hf_lppe_T_nBrequestedAD_beam_width, + &hf_lppe_T_nBrequestedAD_transmit_direction, + &hf_lppe_T_nBrequestedAD_frequency_accuracy, + &hf_lppe_T_nBrequestedAD_non_serving, + NULL +}; static int dissect_lppe_T_nBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_nBrequestedAD_bits, 8, NULL, NULL); return offset; } +static const int * T_hNBrequestedAD_bits[] = { + &hf_lppe_T_hNBrequestedAD_bslist, + &hf_lppe_T_hNBrequestedAD_bslocation, + &hf_lppe_T_hNBrequestedAD_locationreliability, + &hf_lppe_T_hNBrequestedAD_transmit_power, + &hf_lppe_T_hNBrequestedAD_frequency_accuracy, + &hf_lppe_T_hNBrequestedAD_coveragearea, + &hf_lppe_T_hNBrequestedAD_non_serving, + NULL +}; static int dissect_lppe_T_hNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_hNBrequestedAD_bits, 7, NULL, NULL); return offset; } @@ -5148,11 +5446,21 @@ dissect_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData(tvbuff_t *tvb _U_, int off } +static const int * T_requestedAD_01_bits[] = { + &hf_lppe_T_requestedAD_01_aplist, + &hf_lppe_T_requestedAD_01_aplocation, + &hf_lppe_T_requestedAD_01_locationreliability, + &hf_lppe_T_requestedAD_01_transmit_power, + &hf_lppe_T_requestedAD_01_antenna_gain, + &hf_lppe_T_requestedAD_01_coveragearea, + &hf_lppe_T_requestedAD_01_non_serving, + NULL +}; static int dissect_lppe_T_requestedAD_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_requestedAD_01_bits, 7, NULL, NULL); return offset; } @@ -5264,7 +5572,7 @@ dissect_lppe_OMA_LPPe_SRN_SRNgroupRequest(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_lppe_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5289,7 +5597,7 @@ dissect_lppe_T_nfc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int dissect_lppe_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8125,7 +8433,7 @@ dissect_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset static int dissect_lppe_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9739,7 +10047,7 @@ dissect_lppe_T_plmn_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lppe_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10211,7 +10519,7 @@ dissect_lppe_T_plmn_Identity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lppe_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10484,7 +10792,7 @@ dissect_lppe_T_plmn_Identity_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lppe_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12247,11 +12555,16 @@ dissect_lppe_OMA_LPPe_AGNSS_PositioningInstructions(tvbuff_t *tvb _U_, int offse } +static const int * T_ionosphereMeasurementsReq_bits[] = { + &hf_lppe_T_ionosphereMeasurementsReq_tecPerSV, + &hf_lppe_T_ionosphereMeasurementsReq_zenithTEC, + NULL +}; static int dissect_lppe_T_ionosphereMeasurementsReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_ionosphereMeasurementsReq_bits, 2, NULL, NULL); return offset; } @@ -12326,11 +12639,19 @@ dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation(tvbuff_t *tvb _U_, i } +static const int * T_requestedMeasurements_bits[] = { + &hf_lppe_T_requestedMeasurements_rsrp, + &hf_lppe_T_requestedMeasurements_rsrq, + &hf_lppe_T_requestedMeasurements_ueRxTx, + &hf_lppe_T_requestedMeasurements_non_serving, + &hf_lppe_T_requestedMeasurements_historic, + NULL +}; static int dissect_lppe_T_requestedMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_requestedMeasurements_bits, 5, NULL, NULL); return offset; } @@ -12350,11 +12671,19 @@ dissect_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation(tvbuff_t *tvb _U_, int } +static const int * T_requestedMeasurements_01_bits[] = { + &hf_lppe_T_requestedMeasurements_01_rxLevel, + &hf_lppe_T_requestedMeasurements_01_tA, + &hf_lppe_T_requestedMeasurements_01_nMR_GERAN, + &hf_lppe_T_requestedMeasurements_01_non_serving, + &hf_lppe_T_requestedMeasurements_01_historic, + NULL +}; static int dissect_lppe_T_requestedMeasurements_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, T_requestedMeasurements_01_bits, 5, NULL, NULL); return offset; } @@ -12374,11 +12703,24 @@ dissect_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation(tvbuff_t *tvb _U_, int } +static const int * T_requestedMeasurements_02_bits[] = { + &hf_lppe_T_requestedMeasurements_02_measuredResultsList, + &hf_lppe_T_requestedMeasurements_02_tdd_timingAdvance, + &hf_lppe_T_requestedMeasurements_02_mRL_utra_CarrierRSSI, + &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_Ec_N0, + &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_RSCP, + &hf_lppe_T_requestedMeasurements_02_mRL_FDD_pathloss, + &hf_lppe_T_requestedMeasurements_02_mRL_TDD_primaryCCPCH_RSCP, + &hf_lppe_T_requestedMeasurements_02_mRL_TDD_pathloss, + &hf_lppe_T_requestedMeasurements_02_non_serving, + &hf_lppe_T_requestedMeasurements_02_historic, + NULL +}; static int dissect_lppe_T_requestedMeasurements_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_requestedMeasurements_02_bits, 10, NULL, NULL); return offset; } @@ -12398,21 +12740,45 @@ dissect_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation(tvbuff_t *tvb _U_, in } +static const int * T_requestedMeasurements_03_bits[] = { + &hf_lppe_T_requestedMeasurements_03_apSSID, + &hf_lppe_T_requestedMeasurements_03_apSN, + &hf_lppe_T_requestedMeasurements_03_apDevType, + &hf_lppe_T_requestedMeasurements_03_apPhyType, + &hf_lppe_T_requestedMeasurements_03_apRSSI, + &hf_lppe_T_requestedMeasurements_03_apChanFreq, + &hf_lppe_T_requestedMeasurements_03_apRTD, + &hf_lppe_T_requestedMeasurements_03_ueTP, + &hf_lppe_T_requestedMeasurements_03_ueAG, + &hf_lppe_T_requestedMeasurements_03_apRepLoc, + &hf_lppe_T_requestedMeasurements_03_non_serving, + &hf_lppe_T_requestedMeasurements_03_historic, + &hf_lppe_T_requestedMeasurements_03_apTP, + &hf_lppe_T_requestedMeasurements_03_apAG, + &hf_lppe_T_requestedMeasurements_03_ueSN, + &hf_lppe_T_requestedMeasurements_03_ueRSSI, + NULL +}; static int dissect_lppe_T_requestedMeasurements_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_requestedMeasurements_03_bits, 16, NULL, NULL); return offset; } +static const int * T_additionalRequestedMeasurements_bits[] = { + &hf_lppe_T_additionalRequestedMeasurements_oc, + &hf_lppe_T_additionalRequestedMeasurements_ueMacAddr, + NULL +}; static int dissect_lppe_T_additionalRequestedMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_additionalRequestedMeasurements_bits, 2, NULL, NULL); return offset; } @@ -12433,11 +12799,27 @@ dissect_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation(tvbuff_t *tvb _U_, int } +static const int * T_requestedMeasurements_04_bits[] = { + &hf_lppe_T_requestedMeasurements_04_rTD, + &hf_lppe_T_requestedMeasurements_04_rTDstd, + &hf_lppe_T_requestedMeasurements_04_nMR, + &hf_lppe_T_requestedMeasurements_04_nMRrelDelay, + &hf_lppe_T_requestedMeasurements_04_nMRrelDelaystd, + &hf_lppe_T_requestedMeasurements_04_nMRrSSI, + &hf_lppe_T_requestedMeasurements_04_nMRrSSIstd, + &hf_lppe_T_requestedMeasurements_04_nMRbSTxPower, + &hf_lppe_T_requestedMeasurements_04_nMRcINR, + &hf_lppe_T_requestedMeasurements_04_nMRcINRstd, + &hf_lppe_T_requestedMeasurements_04_nMRbSLocation, + &hf_lppe_T_requestedMeasurements_04_non_serving, + &hf_lppe_T_requestedMeasurements_04_historic, + NULL +}; static int dissect_lppe_T_requestedMeasurements_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_requestedMeasurements_04_bits, 13, NULL, NULL); return offset; } @@ -12632,7 +13014,7 @@ dissect_lppe_OMA_LPPe_HighAccuracy3Dvelocity(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lppe_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13375,7 +13757,7 @@ dissect_lppe_OMA_LPPe_EOTD_ModuloTimeSlot(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_lppe_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13385,7 +13767,7 @@ dissect_lppe_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppe_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13410,7 +13792,7 @@ dissect_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef(tvbuff_t *tvb _U_, int offset _ static int dissect_lppe_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14392,7 +14774,7 @@ dissect_lppe_OMA_LPPe_WLAN_RTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppe_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14402,7 +14784,7 @@ dissect_lppe_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppe_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 34, 34, FALSE, NULL, NULL); + 34, 34, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14412,7 +14794,7 @@ dissect_lppe_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lppe_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14422,7 +14804,7 @@ dissect_lppe_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lppe_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14556,7 +14938,7 @@ dissect_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation(tvbuff_t *tvb _U_, int static int dissect_lppe_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14808,11 +15190,23 @@ dissect_lppe_T_primaryMotionState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const int * T_secondaryMotionState_bits[] = { + &hf_lppe_T_secondaryMotionState_stationary, + &hf_lppe_T_secondaryMotionState_pedestrian, + &hf_lppe_T_secondaryMotionState_running, + &hf_lppe_T_secondaryMotionState_cycling, + &hf_lppe_T_secondaryMotionState_car, + &hf_lppe_T_secondaryMotionState_train, + &hf_lppe_T_secondaryMotionState_aeroplane, + &hf_lppe_T_secondaryMotionState_boat, + &hf_lppe_T_secondaryMotionState_fidgeting, + NULL +}; static int dissect_lppe_T_secondaryMotionState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, T_secondaryMotionState_bits, 9, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-lte-rrc.c b/epan/dissectors/packet-lte-rrc.c index 95c20e19cd..826614b4e1 100644 --- a/epan/dissectors/packet-lte-rrc.c +++ b/epan/dissectors/packet-lte-rrc.c @@ -14248,7 +14248,7 @@ static int dissect_lte_rrc_NeighCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *neigh_cell_config_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &neigh_cell_config_tvb, NULL); + 2, 2, FALSE, NULL, 0, &neigh_cell_config_tvb, NULL); @@ -14482,7 +14482,7 @@ dissect_lte_rrc_MeasCycleSCell_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14492,7 +14492,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14502,7 +14502,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_70(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 70, 70, FALSE, NULL, NULL); + 70, 70, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14512,7 +14512,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_70(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_60(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 60, 60, FALSE, NULL, NULL); + 60, 60, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -15608,7 +15608,7 @@ dissect_lte_rrc_CarrierFreqsGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -15618,7 +15618,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -16275,7 +16275,7 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_maxCellSFTD_OF_PhysCellIdNR_r15(tvbuff_t *tvb _U static int dissect_lte_rrc_BIT_STRING_SIZE_1_80(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 80, FALSE, NULL, NULL); + 1, 80, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20508,7 +20508,7 @@ dissect_lte_rrc_T_channellAccessPriority_r15(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lte_rrc_BIT_STRING_SIZE_maxServCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxServCell_r13, maxServCell_r13, FALSE, NULL, NULL); + maxServCell_r13, maxServCell_r13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -24227,7 +24227,7 @@ dissect_lte_rrc_T_mac_MainConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_C_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -24649,7 +24649,7 @@ dissect_lte_rrc_T_rv_SPS_UL_Repetitions_r15(tvbuff_t *tvb _U_, int offset _U_, a static int dissect_lte_rrc_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -25303,7 +25303,7 @@ dissect_lte_rrc_T_transmissionMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -25313,7 +25313,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -25323,7 +25323,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -25333,7 +25333,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -25583,7 +25583,7 @@ dissect_lte_rrc_CQI_ReportConfig_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_lte_rrc_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -25673,7 +25673,7 @@ dissect_lte_rrc_T_transmissionMode_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_lte_rrc_BIT_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -27009,7 +27009,7 @@ dissect_lte_rrc_T_radioframeAllocationPeriod(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lte_rrc_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -27469,7 +27469,7 @@ dissect_lte_rrc_T_numberPRB_Pairs_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_lte_rrc_BIT_STRING_SIZE_4_38(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 38, FALSE, NULL, NULL); + 4, 38, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30256,7 +30256,7 @@ dissect_lte_rrc_T_eimta_CommandPeriodicity_r12(tvbuff_t *tvb _U_, int offset _U_ static int dissect_lte_rrc_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -33715,7 +33715,7 @@ dissect_lte_rrc_T_transmissionModeDL_nonMBSFN_r15(tvbuff_t *tvb _U_, int offset static int dissect_lte_rrc_BIT_STRING_SIZE_96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 96, 96, FALSE, NULL, NULL); + 96, 96, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -33725,7 +33725,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_109(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 109, 109, FALSE, NULL, NULL); + 109, 109, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34575,7 +34575,7 @@ dissect_lte_rrc_INTEGER_2_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_lte_rrc_BIT_STRING_SIZE_98(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 98, 98, FALSE, NULL, NULL); + 98, 98, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34600,7 +34600,7 @@ dissect_lte_rrc_T_resourceBlockAssignment_r15(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lte_rrc_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36063,7 +36063,7 @@ dissect_lte_rrc_T_transmissionModeList_r12(tvbuff_t *tvb _U_, int offset _U_, as tvbuff_t *tm_list_tvb=NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, &tm_list_tvb, NULL); + 8, 8, FALSE, NULL, 0, &tm_list_tvb, NULL); if (tm_list_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_transmissionModeList_r12); @@ -37350,7 +37350,7 @@ dissect_lte_rrc_T_systemFrameNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ tvbuff_t *value_tvb = NULL; guint32 sfn; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, &value_tvb, NULL); + 8, 8, FALSE, NULL, 0, &value_tvb, NULL); /* Show SFN in info column */ sfn = tvb_get_guint8(value_tvb, 0); @@ -37485,7 +37485,7 @@ dissect_lte_rrc_PLMN_IdentityList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_TrackingAreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -37495,7 +37495,7 @@ dissect_lte_rrc_TrackingAreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -37537,7 +37537,7 @@ dissect_lte_rrc_T_intraFreqReselection(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_lte_rrc_CSG_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -38986,7 +38986,7 @@ dissect_lte_rrc_RAN_AreaCode_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_TrackingAreaCode_5GC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -46334,7 +46334,7 @@ dissect_lte_rrc_T_transmissionModeUL_AUL_r15(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lte_rrc_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49056,7 +49056,7 @@ dissect_lte_rrc_PLMN_IdentityListNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lte_rrc_TrackingAreaCodeNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49066,7 +49066,7 @@ dissect_lte_rrc_TrackingAreaCodeNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_lte_rrc_CellIdentityNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49241,7 +49241,7 @@ dissect_lte_rrc_RRM_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_lte_rrc_ShortMAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49251,7 +49251,7 @@ dissect_lte_rrc_ShortMAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_lte_rrc_Key_eNodeB_Star(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49835,7 +49835,7 @@ dissect_lte_rrc_SL_OffsetIndicator_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_lte_rrc_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49845,7 +49845,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49855,7 +49855,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_42(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 42, 42, FALSE, NULL, NULL); + 42, 42, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -49968,7 +49968,7 @@ dissect_lte_rrc_SL_HoppingConfigComm_r12(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_lte_rrc_SL_TRPT_Subset_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 5, FALSE, NULL, NULL); + 3, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -51466,7 +51466,7 @@ dissect_lte_rrc_T_gapPeriod_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lte_rrc_BIT_STRING_SIZE_1_10240(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 10240, FALSE, NULL, NULL); + 1, 10240, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -51789,7 +51789,7 @@ dissect_lte_rrc_AS_Context_v1320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_BIT_STRING_SIZE_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 50, 50, FALSE, NULL, NULL); + 50, 50, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -51799,7 +51799,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 100, 100, FALSE, NULL, NULL); + 100, 100, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -52803,7 +52803,7 @@ dissect_lte_rrc_RSRP_RangeSL_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_BIT_STRING_SIZE_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 19, 19, FALSE, NULL, NULL); + 19, 19, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -53441,7 +53441,7 @@ dissect_lte_rrc_T_commTxResources_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lte_rrc_SL_DestinationIdentity_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -55433,7 +55433,7 @@ dissect_lte_rrc_T_dl_Bandwidth_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lte_rrc_BIT_STRING_SIZE_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 13, 13, FALSE, NULL, NULL); + 13, 13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -57360,7 +57360,7 @@ static int dissect_lte_rrc_T_synchronousSystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *sync_system_time_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 39, 39, FALSE, &sync_system_time_tvb, NULL); + 39, 39, FALSE, NULL, 0, &sync_system_time_tvb, NULL); @@ -57385,7 +57385,7 @@ static int dissect_lte_rrc_T_asynchronousSystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *async_system_time_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 49, 49, FALSE, &async_system_time_tvb, NULL); + 49, 49, FALSE, NULL, 0, &async_system_time_tvb, NULL); @@ -57581,7 +57581,7 @@ dissect_lte_rrc_T_parametersHRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 15, 15, FALSE, NULL, NULL); + 15, 15, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -58114,7 +58114,7 @@ static int dissect_lte_rrc_T_messageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *msg_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); + 16, 16, FALSE, NULL, 0, &msg_id_tvb, NULL); @@ -58131,7 +58131,7 @@ static int dissect_lte_rrc_T_serialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *serial_nb_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); + 16, 16, FALSE, NULL, 0, &serial_nb_tvb, NULL); @@ -58204,7 +58204,7 @@ static int dissect_lte_rrc_T_messageIdentifier_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *msg_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); + 16, 16, FALSE, NULL, 0, &msg_id_tvb, NULL); @@ -58222,7 +58222,7 @@ static int dissect_lte_rrc_T_serialNumber_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *serial_nb_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); + 16, 16, FALSE, NULL, 0, &serial_nb_tvb, NULL); @@ -58355,7 +58355,7 @@ static int dissect_lte_rrc_T_messageIdentifier_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *msg_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); + 16, 16, FALSE, NULL, 0, &msg_id_tvb, NULL); @@ -58373,7 +58373,7 @@ static int dissect_lte_rrc_T_serialNumber_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *serial_nb_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); + 16, 16, FALSE, NULL, 0, &serial_nb_tvb, NULL); @@ -59157,7 +59157,7 @@ static int dissect_lte_rrc_T_dayLightSavingTime_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *daylight_saving_time_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &daylight_saving_time_tvb, NULL); + 2, 2, FALSE, NULL, 0, &daylight_saving_time_tvb, NULL); @@ -61963,7 +61963,7 @@ dissect_lte_rrc_T_radioFrameAllocationPeriod_r14(tvbuff_t *tvb _U_, int offset _ static int dissect_lte_rrc_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -62702,7 +62702,7 @@ dissect_lte_rrc_MCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lte_rrc_MMEC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -62751,7 +62751,7 @@ dissect_lte_rrc_IMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_lte_rrc_NG_5G_S_TMSI_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -62761,7 +62761,7 @@ dissect_lte_rrc_NG_5G_S_TMSI_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_I_RNTI_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -64461,7 +64461,7 @@ dissect_lte_rrc_DL_CCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lte_rrc_RAND_CDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -66380,7 +66380,7 @@ static int dissect_lte_rrc_T_ipv4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *ipv4_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 32, 32, FALSE, &ipv4_tvb, NULL); + 32, 32, FALSE, NULL, 0, &ipv4_tvb, NULL); if (ipv4_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, ipv4_tvb, 0, 4, ENC_BIG_ENDIAN); @@ -66396,7 +66396,7 @@ static int dissect_lte_rrc_T_ipv6_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *ipv6_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 128, 128, FALSE, &ipv6_tvb, NULL); + 128, 128, FALSE, NULL, 0, &ipv6_tvb, NULL); if (ipv6_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, ipv6_tvb, 0, 16, ENC_BIG_ENDIAN); @@ -67490,7 +67490,7 @@ dissect_lte_rrc_T_cellInfoList_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_ResumeIdentity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -67552,7 +67552,7 @@ dissect_lte_rrc_MeasIdleConfigDedicated_r15(tvbuff_t *tvb _U_, int offset _U_, a static int dissect_lte_rrc_ShortI_RNTI_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -68887,7 +68887,7 @@ static int dissect_lte_rrc_AbsoluteTimeInfo_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *abs_time_info_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, &abs_time_info_tvb, NULL); + 48, 48, FALSE, NULL, 0, &abs_time_info_tvb, NULL); if (abs_time_info_tvb) { @@ -69345,7 +69345,7 @@ dissect_lte_rrc_T_resourceAllocationType_r10(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lte_rrc_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 17, 17, FALSE, NULL, NULL); + 17, 17, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -69355,7 +69355,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 25, 25, FALSE, NULL, NULL); + 25, 25, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -69395,7 +69395,7 @@ dissect_lte_rrc_T_type01_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lte_rrc_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 11, 11, FALSE, NULL, NULL); + 11, 11, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -70230,7 +70230,7 @@ dissect_lte_rrc_EstablishmentCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -71141,7 +71141,7 @@ dissect_lte_rrc_T_physCellId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lte_rrc_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -71357,7 +71357,7 @@ dissect_lte_rrc_MeasResultListGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_lte_rrc_BIT_STRING_SIZE_47(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 47, 47, FALSE, NULL, NULL); + 47, 47, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -71367,7 +71367,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_47(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -72280,7 +72280,7 @@ dissect_lte_rrc_T_bt_Addr_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act tvbuff_t *bt_Addr_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 48, 48, FALSE, &bt_Addr_tvb, NULL); + 48, 48, FALSE, NULL, 0, &bt_Addr_tvb, NULL); actx->created_item = proto_tree_add_item(tree, hf_index, bt_Addr_tvb, 0, 6, ENC_NA); @@ -73572,7 +73572,7 @@ dissect_lte_rrc_T_connectTo5GC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_AMF_Identifier_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -74462,7 +74462,7 @@ dissect_lte_rrc_UECapabilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lte_rrc_BIT_STRING_SIZE_56(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 56, 56, FALSE, NULL, NULL); + 56, 56, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -75574,7 +75574,7 @@ static int dissect_lte_rrc_T_n_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *n_r12_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 3, 3, FALSE, &n_r12_tvb, NULL); + 3, 3, FALSE, NULL, 0, &n_r12_tvb, NULL); if (n_r12_tvb) { guint bitvalue = tvb_get_bits8(n_r12_tvb, 0, 3); @@ -75591,7 +75591,7 @@ static int dissect_lte_rrc_T_m_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *m_r12_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 8, 8, FALSE, &m_r12_tvb, NULL); + 8, 8, FALSE, NULL, 0, &m_r12_tvb, NULL); if (m_r12_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, m_r12_tvb, 0, 1, ENC_BIG_ENDIAN); @@ -77275,7 +77275,7 @@ static int dissect_lte_rrc_T_messageSize_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *messageSize_r14_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 6, 6, FALSE, &messageSize_r14_tvb, NULL); + 6, 6, FALSE, NULL, 0, &messageSize_r14_tvb, NULL); if (messageSize_r14_tvb) { guint bitvalue = tvb_get_bits8(messageSize_r14_tvb, 0, 6); @@ -80686,7 +80686,7 @@ dissect_lte_rrc_SC_MTCH_SchedulingInfo_r13(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNeighCell_SCPTM_r13, maxNeighCell_SCPTM_r13, FALSE, NULL, NULL); + maxNeighCell_SCPTM_r13, maxNeighCell_SCPTM_r13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -82692,7 +82692,7 @@ static int dissect_lte_rrc_T_featureGroupIndicators(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *featureGroupIndicators_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndicators_tvb, NULL); + 32, 32, FALSE, NULL, 0, &featureGroupIndicators_tvb, NULL); if(featureGroupIndicators_tvb){ /* Dissect featureGroupIndicators */ @@ -83853,7 +83853,7 @@ static int dissect_lte_rrc_T_featureGroupIndRel10_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *featureGroupIndRel10_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndRel10_tvb, NULL); + 32, 32, FALSE, NULL, 0, &featureGroupIndRel10_tvb, NULL); if(featureGroupIndRel10_tvb){ /* Dissect featureGroupIndRel10-r10 */ @@ -83973,7 +83973,7 @@ static int dissect_lte_rrc_T_featureGroupIndRel10_v1060(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *featureGroupIndRel10_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndRel10_tvb, NULL); + 32, 32, FALSE, NULL, 0, &featureGroupIndRel10_tvb, NULL); if(featureGroupIndRel10_tvb){ /* Dissect featureGroupIndRel10-v1060 */ @@ -84065,7 +84065,7 @@ dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060(tvbuff_t *tvb _U_, int offs static int dissect_lte_rrc_SupportedBandwidthCombinationSet_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, maxBandwidthCombSet_r10, FALSE, NULL, NULL); + 1, maxBandwidthCombSet_r10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -84599,7 +84599,7 @@ dissect_lte_rrc_T_interBandTDD_CA_WithDifferentConfig_r11(tvbuff_t *tvb _U_, int tvbuff_t *inter_band_tdd_ca_tvb=NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &inter_band_tdd_ca_tvb, NULL); + 2, 2, FALSE, NULL, 0, &inter_band_tdd_ca_tvb, NULL); if (inter_band_tdd_ca_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_interBandTDD_CA_WithDifferentConfig); @@ -84911,7 +84911,7 @@ dissect_lte_rrc_T_tdd_FDD_CA_PCellDuplex_r12(tvbuff_t *tvb _U_, int offset _U_, tvbuff_t *pcellduplex_tvb=NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &pcellduplex_tvb, NULL); + 2, 2, FALSE, NULL, 0, &pcellduplex_tvb, NULL); if (pcellduplex_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12); @@ -85229,7 +85229,7 @@ dissect_lte_rrc_T_dc_Support_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, maxNAICS_Entries_r12, FALSE, NULL, NULL); + 1, maxNAICS_Entries_r12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -85239,7 +85239,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12(tvbuff_t *tvb _U_, int of static int dissect_lte_rrc_BIT_STRING_SIZE_1_maxBands(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, maxBands, FALSE, NULL, NULL); + 1, maxBands, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -86243,7 +86243,7 @@ dissect_lte_rrc_T_aperiodicCSI_Reporting_r13(tvbuff_t *tvb _U_, int offset _U_, tvbuff_t *aperiodicCSI_tvb=NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &aperiodicCSI_tvb, NULL); + 2, 2, FALSE, NULL, 0, &aperiodicCSI_tvb, NULL); if (aperiodicCSI_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_aperiodicCSI_Reporting_r13); @@ -86262,7 +86262,7 @@ dissect_lte_rrc_T_codebook_HARQ_ACK_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ tvbuff_t *codebook_tvb=NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &codebook_tvb, NULL); + 2, 2, FALSE, NULL, 0, &codebook_tvb, NULL); if (codebook_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_codebook_HARQ_ACK_r13); @@ -87732,7 +87732,7 @@ dissect_lte_rrc_T_altCodebook_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lte_rrc_BIT_STRING_SIZE_1_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 7, FALSE, NULL, NULL); + 1, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -89446,7 +89446,7 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430 static int dissect_lte_rrc_BIT_STRING_SIZE_1_maxBandComb_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, maxBandComb_r13, FALSE, NULL, NULL); + 1, maxBandComb_r13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -91376,7 +91376,7 @@ dissect_lte_rrc_T_measGapPatterns_v1520(tvbuff_t *tvb _U_, int offset _U_, asn1_ proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, &meas_gap_pattern_tvb, NULL); + 8, 8, FALSE, NULL, 0, &meas_gap_pattern_tvb, NULL); if (meas_gap_pattern_tvb) { @@ -94799,7 +94799,7 @@ static int dissect_lte_rrc_T_featureGroupIndRel9Add_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *featureGroupIndRel9Add_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndRel9Add_tvb, NULL); + 32, 32, FALSE, NULL, 0, &featureGroupIndRel9Add_tvb, NULL); if(featureGroupIndRel9Add_tvb){ /* Dissect featureGroupIndRel9Add-r9 */ @@ -94816,7 +94816,7 @@ static int dissect_lte_rrc_T_featureGroupIndicators_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *featureGroupIndicators_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndicators_tvb, NULL); + 32, 32, FALSE, NULL, 0, &featureGroupIndicators_tvb, NULL); if(featureGroupIndicators_tvb){ /* Dissect featureGroupIndicators-r9 */ @@ -94833,7 +94833,7 @@ static int dissect_lte_rrc_T_featureGroupIndRel9Add_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *featureGroupIndRel9Add_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndRel9Add_tvb, NULL); + 32, 32, FALSE, NULL, 0, &featureGroupIndRel9Add_tvb, NULL); if(featureGroupIndRel9Add_tvb){ /* Dissect featureGroupIndRel9Add-r9 */ @@ -95096,7 +95096,7 @@ dissect_lte_rrc_T_modifiedMPR_Behavior_r10(tvbuff_t *tvb _U_, int offset _U_, as tvbuff_t *modifiedMPR_Behavior_r10_tvb=NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &modifiedMPR_Behavior_r10_tvb, NULL); + 32, 32, FALSE, NULL, 0, &modifiedMPR_Behavior_r10_tvb, NULL); if (modifiedMPR_Behavior_r10_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_modifiedMPR_Behavior_r10); @@ -96390,7 +96390,7 @@ dissect_lte_rrc_T_sl_Bandwidth_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_lte_rrc_BIT_STRING_SIZE_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -107593,7 +107593,7 @@ dissect_lte_rrc_SC_MTCH_SchedulingInfo_NB_r14(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNeighCell_SCPTM_NB_r14, maxNeighCell_SCPTM_NB_r14, FALSE, NULL, NULL); + maxNeighCell_SCPTM_NB_r14, maxNeighCell_SCPTM_NB_r14, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-m2ap.c b/epan/dissectors/packet-m2ap.c index e3083278cc..e00c279db0 100644 --- a/epan/dissectors/packet-m2ap.c +++ b/epan/dissectors/packet-m2ap.c @@ -980,7 +980,7 @@ dissect_m2ap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_m2ap_EUTRANCellIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1117,7 +1117,7 @@ dissect_m2ap_CriticalityDiagnostics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_m2ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1127,7 +1127,7 @@ dissect_m2ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_m2ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1137,7 +1137,7 @@ dissect_m2ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_m2ap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1574,7 +1574,7 @@ dissect_m2ap_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_m2ap_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1584,7 +1584,7 @@ dissect_m2ap_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_m2ap_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1948,7 +1948,7 @@ dissect_m2ap_Subcarrier_SpacingMBMS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_m2ap_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1958,7 +1958,7 @@ dissect_m2ap_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_m2ap_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-m3ap.c b/epan/dissectors/packet-m3ap.c index b72d605c4e..687e2d29bf 100644 --- a/epan/dissectors/packet-m3ap.c +++ b/epan/dissectors/packet-m3ap.c @@ -580,7 +580,7 @@ dissect_m3ap_Absolute_Time_ofMBMS_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_c gint tvb_len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, ¶meter_tvb, NULL); + 64, 64, FALSE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) @@ -882,7 +882,7 @@ dissect_m3ap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_m3ap_EUTRANCellIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-mpeg-audio.c b/epan/dissectors/packet-mpeg-audio.c index 1a78ae1725..da9ccb4349 100644 --- a/epan/dissectors/packet-mpeg-audio.c +++ b/epan/dissectors/packet-mpeg-audio.c @@ -69,7 +69,7 @@ static gint ett_mpeg_audio_ID3v1 = -1; static int dissect_mpeg_audio_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 11, 11, FALSE, NULL, NULL); + 11, 11, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-mpeg-pes.c b/epan/dissectors/packet-mpeg-pes.c index 538c8537cb..b1833a5b8a 100644 --- a/epan/dissectors/packet-mpeg-pes.c +++ b/epan/dissectors/packet-mpeg-pes.c @@ -228,7 +228,7 @@ dissect_mpeg_pes_Stream(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_mpeg_pes_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -280,7 +280,7 @@ dissect_mpeg_pes_T_frame_rate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_mpeg_pes_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -290,7 +290,7 @@ dissect_mpeg_pes_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_mpeg_pes_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -323,7 +323,7 @@ dissect_mpeg_pes_Sequence_header(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_mpeg_pes_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -388,7 +388,7 @@ dissect_mpeg_pes_INTEGER_0_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_mpeg_pes_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -438,7 +438,7 @@ dissect_mpeg_pes_T_frame_type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_mpeg_pes_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-nbap.c b/epan/dissectors/packet-nbap.c index ae7db54cf0..ecf56082b1 100644 --- a/epan/dissectors/packet-nbap.c +++ b/epan/dissectors/packet-nbap.c @@ -8867,7 +8867,7 @@ dissect_nbap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t nbap_private_data_t* nbap_private_data = nbap_get_private_data(actx->pinfo); offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, NULL); + 1, 160, TRUE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) return offset; @@ -8946,7 +8946,7 @@ dissect_nbap_Additional_EDCH_MAC_d_Flows_Specific_Info_List(tvbuff_t *tvb _U_, i static int dissect_nbap_HARQ_Process_Allocation_2ms_EDCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNrOfEDCHHARQProcesses2msEDCH, maxNrOfEDCHHARQProcesses2msEDCH, FALSE, NULL, NULL); + maxNrOfEDCHHARQProcesses2msEDCH, maxNrOfEDCHHARQProcesses2msEDCH, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10713,7 +10713,7 @@ dissect_nbap_BroadcastCommonTransportBearerIndication(tvbuff_t *tvb _U_, int off static int dissect_nbap_BroadcastReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10733,7 +10733,7 @@ dissect_nbap_CCTrCH_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_nbap_Cell_Capability_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -11509,11 +11509,30 @@ if(commonphysicalchannelidpinfo); @@ -4993,7 +4993,7 @@ dissect_ngap_DirectForwardingPathAvailability(tvbuff_t *tvb _U_, int offset _U_, static int dissect_ngap_BIT_STRING_SIZE_1_2048(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 2048, FALSE, NULL, NULL); + 1, 2048, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5019,7 +5019,7 @@ dissect_ngap_DRBStatusUL12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_ngap_BIT_STRING_SIZE_1_131072(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 131072, FALSE, NULL, NULL); + 1, 131072, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5450,7 +5450,7 @@ dissect_ngap_EUTRAencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_c #line 601 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -5476,7 +5476,7 @@ dissect_ngap_EUTRAintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U #line 616 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -5986,7 +5986,7 @@ dissect_ngap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 423 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -6187,7 +6187,7 @@ dissect_ngap_LocationReportingRequestType(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_ngap_MaskedIMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6197,7 +6197,7 @@ dissect_ngap_MaskedIMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ngap_MessageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6225,7 +6225,7 @@ dissect_ngap_RATRestrictionInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_c #line 557 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, TRUE, ¶meter_tvb, NULL); + 8, 8, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -6564,7 +6564,7 @@ dissect_ngap_NRencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ #line 571 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -6590,7 +6590,7 @@ dissect_ngap_NRintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, #line 586 "./asn1/ngap/ngap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -8998,7 +8998,7 @@ dissect_ngap_RRCState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_ngap_SecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9024,7 +9024,7 @@ dissect_ngap_SecurityContext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_ngap_SerialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-nr-rrc.c b/epan/dissectors/packet-nr-rrc.c index e5dfc4863b..91c0f6b34b 100644 --- a/epan/dissectors/packet-nr-rrc.c +++ b/epan/dissectors/packet-nr-rrc.c @@ -5115,7 +5115,7 @@ dissect_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity(tvbuff_t *tvb _U_, int o static int dissect_nr_rrc_TrackingAreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5135,7 +5135,7 @@ dissect_nr_rrc_RAN_AreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_nr_rrc_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5382,7 +5382,7 @@ dissect_nr_rrc_RRM_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_nr_rrc_ShortMAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5392,7 +5392,7 @@ dissect_nr_rrc_ShortMAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_nr_rrc_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7410,7 +7410,7 @@ dissect_nr_rrc_SSB_MTC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_nr_rrc_BIT_STRING_SIZE_1_80(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 80, FALSE, NULL, NULL); + 1, 80, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7462,7 +7462,7 @@ dissect_nr_rrc_T_frequencyAndTiming(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_nr_rrc_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7472,7 +7472,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_nr_rrc_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7482,7 +7482,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_nr_rrc_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7914,7 +7914,7 @@ dissect_nr_rrc_UERadioAccessCapabilityInformation(tvbuff_t *tvb _U_, int offset static int dissect_nr_rrc_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7988,7 +7988,7 @@ dissect_nr_rrc_T_intraFreqReselection(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_nr_rrc_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9246,7 +9246,7 @@ static int dissect_nr_rrc_T_messageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *msg_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); + 16, 16, FALSE, NULL, 0, &msg_id_tvb, NULL); @@ -9263,7 +9263,7 @@ static int dissect_nr_rrc_T_serialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *serial_nb_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); + 16, 16, FALSE, NULL, 0, &serial_nb_tvb, NULL); @@ -9326,7 +9326,7 @@ static int dissect_nr_rrc_T_messageIdentifier_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *msg_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); + 16, 16, FALSE, NULL, 0, &msg_id_tvb, NULL); @@ -9345,7 +9345,7 @@ static int dissect_nr_rrc_T_serialNumber_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *serial_nb_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); + 16, 16, FALSE, NULL, 0, &serial_nb_tvb, NULL); @@ -9483,7 +9483,7 @@ static int dissect_nr_rrc_T_messageIdentifier_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *msg_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); + 16, 16, FALSE, NULL, 0, &msg_id_tvb, NULL); @@ -9502,7 +9502,7 @@ static int dissect_nr_rrc_T_serialNumber_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *serial_nb_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); + 16, 16, FALSE, NULL, 0, &serial_nb_tvb, NULL); @@ -9663,7 +9663,7 @@ static int dissect_nr_rrc_T_dayLightSavingTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { tvbuff_t *daylight_saving_time_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &daylight_saving_time_tvb, NULL); + 2, 2, FALSE, NULL, 0, &daylight_saving_time_tvb, NULL); @@ -10364,7 +10364,7 @@ dissect_nr_rrc_SI_RequestConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_nr_rrc_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10533,7 +10533,7 @@ dissect_nr_rrc_ControlResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_nr_rrc_BIT_STRING_SIZE_45(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 45, 45, FALSE, NULL, NULL); + 45, 45, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10800,7 +10800,7 @@ dissect_nr_rrc_INTEGER_2_2559(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_nr_rrc_BIT_STRING_SIZE_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 14, 14, FALSE, NULL, NULL); + 14, 14, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13159,7 +13159,7 @@ dissect_nr_rrc_T_uac_BarringTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_nr_rrc_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14780,7 +14780,7 @@ dissect_nr_rrc_T_associatedSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_nr_rrc_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -17198,7 +17198,7 @@ dissect_nr_rrc_CellReselectionPriorities(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_nr_rrc_I_RNTI_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -17208,7 +17208,7 @@ dissect_nr_rrc_I_RNTI_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_nr_rrc_ShortI_RNTI_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18169,7 +18169,7 @@ dissect_nr_rrc_DL_DCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_nr_rrc_NG_5G_S_TMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18355,7 +18355,7 @@ dissect_nr_rrc_PCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_nr_rrc_BIT_STRING_SIZE_39(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 39, 39, FALSE, NULL, NULL); + 39, 39, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18449,7 +18449,7 @@ dissect_nr_rrc_RRCSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_nr_rrc_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18598,7 +18598,7 @@ dissect_nr_rrc_RRCReestablishmentRequest(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_nr_rrc_BIT_STRING_SIZE_maxSI_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxSI_Message, maxSI_Message, FALSE, NULL, NULL); + maxSI_Message, maxSI_Message, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18937,7 +18937,7 @@ dissect_nr_rrc_PLMN_IdentityList_EUTRA_EPC(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_nr_rrc_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -19454,7 +19454,7 @@ dissect_nr_rrc_RRCReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_nr_rrc_AMF_Identifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -19495,7 +19495,7 @@ dissect_nr_rrc_T_guami_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_nr_rrc_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -19541,7 +19541,7 @@ dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI(tvbuff_t *tvb _U_, int static int dissect_nr_rrc_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22037,7 +22037,7 @@ dissect_nr_rrc_RateMatchPatternId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_275(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 275, 275, FALSE, NULL, NULL); + 275, 275, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22069,7 +22069,7 @@ dissect_nr_rrc_T_symbolsInResourceBlock(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_nr_rrc_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22079,7 +22079,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_nr_rrc_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22089,7 +22089,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_nr_rrc_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22099,7 +22099,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22109,7 +22109,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22445,7 +22445,7 @@ dissect_nr_rrc_ZP_CSI_RS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_nr_rrc_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -25416,7 +25416,7 @@ dissect_nr_rrc_T_periodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_nr_rrc_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30640,7 +30640,7 @@ dissect_nr_rrc_T_pmi_FormatIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_nr_rrc_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 11, 11, FALSE, NULL, NULL); + 11, 11, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30650,7 +30650,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 13, 13, FALSE, NULL, NULL); + 13, 13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30660,7 +30660,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 15, 15, FALSE, NULL, NULL); + 15, 15, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30670,7 +30670,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 17, 17, FALSE, NULL, NULL); + 17, 17, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30680,7 +30680,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 19, 19, FALSE, NULL, NULL); + 19, 19, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30806,7 +30806,7 @@ dissect_nr_rrc_T_two(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_nr_rrc_BIT_STRING_SIZE_96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 96, 96, FALSE, NULL, NULL); + 96, 96, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30816,7 +30816,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30826,7 +30826,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_192(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 192, 192, FALSE, NULL, NULL); + 192, 192, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30836,7 +30836,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_192(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -31028,7 +31028,7 @@ dissect_nr_rrc_T_type1_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_nr_rrc_BIT_STRING_SIZE_43(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 43, 43, FALSE, NULL, NULL); + 43, 43, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -31038,7 +31038,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_43(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 59, 59, FALSE, NULL, NULL); + 59, 59, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -31048,7 +31048,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_75(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 75, 75, FALSE, NULL, NULL); + 75, 75, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -31058,7 +31058,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_75(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_107(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 107, 107, FALSE, NULL, NULL); + 107, 107, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -31068,7 +31068,7 @@ dissect_nr_rrc_BIT_STRING_SIZE_107(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_139(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 139, 139, FALSE, NULL, NULL); + 139, 139, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -32566,7 +32566,7 @@ dissect_nr_rrc_T_simultaneousRx_Tx(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_nr_rrc_BIT_STRING_SIZE_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -32606,7 +32606,7 @@ dissect_nr_rrc_T_ue_CA_PowerClass_N(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_nr_rrc_BIT_STRING_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 32, FALSE, NULL, NULL); + 1, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36286,7 +36286,7 @@ dissect_nr_rrc_MAC_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_nr_rrc_BIT_STRING_SIZE_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 22, 22, FALSE, NULL, NULL); + 22, 22, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-oer.c b/epan/dissectors/packet-oer.c index f398021ebf..3b68ad6bb1 100644 --- a/epan/dissectors/packet-oer.c +++ b/epan/dissectors/packet-oer.c @@ -345,7 +345,7 @@ dissect_oer_enumerated(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tr * If the lower and upper bounds of the effective size constraint are identical, 13.2 applies, otherwise 13.3 applies. */ guint32 -dissect_oer_bit_string(tvbuff_t *tvb, guint32 offset _U_, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_, int min_len _U_, int max_len _U_, gboolean has_extension _U_, tvbuff_t **value_tvb _U_, int *len _U_) +dissect_oer_bit_string(tvbuff_t *tvb, guint32 offset _U_, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_, int min_len _U_, int max_len _U_, gboolean has_extension _U_, const int **named_bits _U_, gint num_named_bits _U_, tvbuff_t **value_tvb _U_, int *len _U_) { dissect_oer_not_decoded_yet(tree, actx->pinfo, tvb, "Encoding of bitstring values not handled yet"); diff --git a/epan/dissectors/packet-oer.h b/epan/dissectors/packet-oer.h index 894cac588d..145e116d4c 100644 --- a/epan/dissectors/packet-oer.h +++ b/epan/dissectors/packet-oer.h @@ -96,7 +96,8 @@ WS_DLL_PUBLIC guint32 dissect_oer_sequence(tvbuff_t *tvb, guint32 offset, asn1_c WS_DLL_PUBLIC guint32 dissect_oer_octet_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, tvbuff_t **value_tvb); //WS_DLL_PUBLIC guint32 dissect_oer_octet_string_containing_pdu_new(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, dissector_t type_cb); -WS_DLL_PUBLIC guint32 dissect_oer_bit_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, tvbuff_t **value_tvb, int *len); +WS_DLL_PUBLIC guint32 +dissect_oer_bit_string(tvbuff_t *tvb, guint32 offset _U_, asn1_ctx_t *actx, proto_tree *tree, int hf_index _U_, int min_len _U_, int max_len _U_, gboolean has_extension _U_, const int **named_bits _U_, gint num_named_bits _U_, tvbuff_t **value_tvb _U_, int *len _U_); //WS_DLL_PUBLIC guint32 dissect_oer_bit_string_containing_pdu_new(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, dissector_t type_cb); //WS_DLL_PUBLIC guint32 dissect_oer_restricted_character_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, const char *alphabet, int alphabet_length, tvbuff_t **value_tvb); diff --git a/epan/dissectors/packet-pcap.c b/epan/dissectors/packet-pcap.c index 70f66e9166..c3d20dcb1c 100644 --- a/epan/dissectors/packet-pcap.c +++ b/epan/dissectors/packet-pcap.c @@ -2280,7 +2280,7 @@ dissect_pcap_AdditionalMethodType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_pcap_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2290,7 +2290,7 @@ dissect_pcap_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_pcap_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2310,7 +2310,7 @@ dissect_pcap_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_pcap_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2320,7 +2320,7 @@ dissect_pcap_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2330,7 +2330,7 @@ dissect_pcap_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 11, 11, FALSE, NULL, NULL); + 11, 11, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2381,7 +2381,7 @@ dissect_pcap_AlmanacSatInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_364(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 364, 364, FALSE, NULL, NULL); + 364, 364, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2408,7 +2408,7 @@ dissect_pcap_GPS_AlmanacAndSatelliteHealth(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_pcap_BIT_STRING_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 32, FALSE, NULL, NULL); + 1, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2910,7 +2910,7 @@ dissect_pcap_UE_RxTxTimeDifferenceType2(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_pcap_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2920,7 +2920,7 @@ dissect_pcap_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_pcap_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4066,7 +4066,7 @@ dissect_pcap_PositionDataUEbased(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_pcap_PositioningDataDiscriminator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4442,7 +4442,7 @@ dissect_pcap_AuxInfoGANSS_ID3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_pcap_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4452,7 +4452,7 @@ dissect_pcap_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4462,7 +4462,7 @@ dissect_pcap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 26, 26, FALSE, NULL, NULL); + 26, 26, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4472,7 +4472,7 @@ dissect_pcap_BIT_STRING_SIZE_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 13, 13, FALSE, NULL, NULL); + 13, 13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4684,7 +4684,7 @@ dissect_pcap_DGANSS_Corrections(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 22, 22, FALSE, NULL, NULL); + 22, 22, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4730,7 +4730,7 @@ dissect_pcap_GLONASSclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_pcap_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4783,7 +4783,7 @@ dissect_pcap_GANSS_AddClockModels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_pcap_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4793,7 +4793,7 @@ dissect_pcap_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_pcap_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4803,7 +4803,7 @@ dissect_pcap_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_pcap_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4813,7 +4813,7 @@ dissect_pcap_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 14, 14, FALSE, NULL, NULL); + 14, 14, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4855,7 +4855,7 @@ dissect_pcap_NavModel_NAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_pcap_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 25, 25, FALSE, NULL, NULL); + 25, 25, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4865,7 +4865,7 @@ dissect_pcap_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 17, 17, FALSE, NULL, NULL); + 17, 17, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4875,7 +4875,7 @@ dissect_pcap_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 23, 23, FALSE, NULL, NULL); + 23, 23, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4885,7 +4885,7 @@ dissect_pcap_BIT_STRING_SIZE_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 33, 33, FALSE, NULL, NULL); + 33, 33, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4895,7 +4895,7 @@ dissect_pcap_BIT_STRING_SIZE_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 15, 15, FALSE, NULL, NULL); + 15, 15, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4905,7 +4905,7 @@ dissect_pcap_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4948,7 +4948,7 @@ dissect_pcap_NavModel_CNAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_pcap_BIT_STRING_SIZE_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4985,7 +4985,7 @@ dissect_pcap_NavModel_GLONASSecef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_pcap_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4995,7 +4995,7 @@ dissect_pcap_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5109,7 +5109,7 @@ dissect_pcap_T_non_broadcastIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_pcap_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5260,7 +5260,7 @@ dissect_pcap_GANSS_Additional_Time_Models(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_pcap_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5358,7 +5358,7 @@ dissect_pcap_GANSS_Additional_UTC_Models(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_pcap_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5791,7 +5791,7 @@ dissect_pcap_GANSS_AzimuthAndElevation(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_pcap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6002,7 +6002,7 @@ dissect_pcap_INTEGER_0_59_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_pcap_BIT_STRING_SIZE_1_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1024, FALSE, NULL, NULL); + 1, 1024, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6088,7 +6088,7 @@ dissect_pcap_GANSS_Data_Bit_Assistance(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_pcap_BIT_STRING_SIZE_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 31, 31, FALSE, NULL, NULL); + 31, 31, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6098,7 +6098,7 @@ dissect_pcap_BIT_STRING_SIZE_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_pcap_BIT_STRING_SIZE_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 19, 19, FALSE, NULL, NULL); + 19, 19, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7304,7 +7304,7 @@ dissect_pcap_AdditionalGPSAssistDataRequired(tvbuff_t *tvb _U_, int offset _U_, static int dissect_pcap_DGANSS_Sig_Id_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8799,7 +8799,7 @@ dissect_pcap_PositioningMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_pcap_GNSS_PositioningMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9279,7 +9279,7 @@ dissect_pcap_GANSSPositioning(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_pcap_GANSScarrierPhaseRequested(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9289,7 +9289,7 @@ dissect_pcap_GANSScarrierPhaseRequested(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_pcap_GANSSMultiFreqMeasRequested(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -11334,11 +11334,30 @@ dissect_pcap_UTDOA_CELLDCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const int * AvailableSignatures_bits[] = { + &hf_pcap_AvailableSignatures_signature15, + &hf_pcap_AvailableSignatures_signature14, + &hf_pcap_AvailableSignatures_signature13, + &hf_pcap_AvailableSignatures_signature12, + &hf_pcap_AvailableSignatures_signature11, + &hf_pcap_AvailableSignatures_signature10, + &hf_pcap_AvailableSignatures_signature9, + &hf_pcap_AvailableSignatures_signature8, + &hf_pcap_AvailableSignatures_signature7, + &hf_pcap_AvailableSignatures_signature6, + &hf_pcap_AvailableSignatures_signature5, + &hf_pcap_AvailableSignatures_signature4, + &hf_pcap_AvailableSignatures_signature3, + &hf_pcap_AvailableSignatures_signature2, + &hf_pcap_AvailableSignatures_signature1, + &hf_pcap_AvailableSignatures_signature0, + NULL +}; static int dissect_pcap_AvailableSignatures(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, AvailableSignatures_bits, 16, NULL, NULL); return offset; } @@ -11372,11 +11391,26 @@ dissect_pcap_PreambleScramblingCodeWordNumber(tvbuff_t *tvb _U_, int offset _U_, } +static const int * AvailableSubChannelNumbers_bits[] = { + &hf_pcap_AvailableSubChannelNumbers_subCh11, + &hf_pcap_AvailableSubChannelNumbers_subCh10, + &hf_pcap_AvailableSubChannelNumbers_subCh9, + &hf_pcap_AvailableSubChannelNumbers_subCh8, + &hf_pcap_AvailableSubChannelNumbers_subCh7, + &hf_pcap_AvailableSubChannelNumbers_subCh6, + &hf_pcap_AvailableSubChannelNumbers_subCh5, + &hf_pcap_AvailableSubChannelNumbers_subCh4, + &hf_pcap_AvailableSubChannelNumbers_subCh3, + &hf_pcap_AvailableSubChannelNumbers_subCh2, + &hf_pcap_AvailableSubChannelNumbers_subCh1, + &hf_pcap_AvailableSubChannelNumbers_subCh0, + NULL +}; static int dissect_pcap_AvailableSubChannelNumbers(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, AvailableSubChannelNumbers_bits, 12, NULL, NULL); return offset; } @@ -11508,7 +11542,7 @@ dissect_pcap_PRACHparameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_pcap_C_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-per.c b/epan/dissectors/packet-per.c index 5ac0ce4339..38d032dcd8 100644 --- a/epan/dissectors/packet-per.c +++ b/epan/dissectors/packet-per.c @@ -2076,7 +2076,7 @@ DEBUG_ENTRY("dissect_per_sequence_eag"); */ -static tvbuff_t *dissect_per_bit_string_display(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, header_field_info *hfi, guint32 length) +static tvbuff_t *dissect_per_bit_string_display(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, header_field_info *hfi, guint32 length, const int **named_bits, gint num_named_bits _U_) { tvbuff_t *out_tvb = NULL; guint32 pad_length=0; @@ -2123,6 +2123,9 @@ static tvbuff_t *dissect_per_bit_string_display(tvbuff_t *tvb, guint32 offset, a } proto_item_append_text(actx->created_item, ", %s decimal value %" G_GINT64_MODIFIER "u", decode_bits_in_field(0, length, value), value); + if (named_bits) { + proto_tree_add_bitmask_list(tree, out_tvb, 0, ((length + 7) / 8), named_bits, ENC_BIG_ENDIAN); + } } proto_item_append_text(actx->created_item, "]"); } @@ -2130,7 +2133,7 @@ static tvbuff_t *dissect_per_bit_string_display(tvbuff_t *tvb, guint32 offset, a return out_tvb; } guint32 -dissect_per_bit_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, tvbuff_t **value_tvb, int *len) +dissect_per_bit_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, const int **named_bits, gint num_named_bits, tvbuff_t **value_tvb, int *len) { /*gint val_start, val_length;*/ guint32 length, fragmented_length = 0; @@ -2186,10 +2189,10 @@ DEBUG_ENTRY("dissect_per_bit_string"); tvb_composite_finalize(fragmented_tvb); add_new_data_source(actx->pinfo, fragmented_tvb, "Fragmented bitstring tvb"); out_tvb = dissect_per_bit_string_display(fragmented_tvb, 0, actx, tree, hf_index, hfi, - fragmented_length); + fragmented_length, named_bits, num_named_bits); } else - out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, length); + out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, length, named_bits, num_named_bits); } /* XXX: ?? */ /*val_start = offset>>3;*/ @@ -2207,7 +2210,7 @@ DEBUG_ENTRY("dissect_per_bit_string"); /* 15.9 if length is fixed and less than or equal to sixteen bits*/ if ((min_len==max_len) && (max_len<=16)) { - out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, min_len); + out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, min_len, named_bits, num_named_bits); offset+=min_len; if (value_tvb) *value_tvb = out_tvb; @@ -2225,7 +2228,7 @@ DEBUG_ENTRY("dissect_per_bit_string"); if (actx->aligned){ BYTE_ALIGN_OFFSET(offset); } - out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, min_len); + out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, min_len, named_bits, num_named_bits); offset+=min_len; if (value_tvb) *value_tvb = out_tvb; @@ -2265,10 +2268,10 @@ DEBUG_ENTRY("dissect_per_bit_string"); tvb_composite_finalize(fragmented_tvb); add_new_data_source(actx->pinfo, fragmented_tvb, "Fragmented bitstring tvb"); out_tvb = dissect_per_bit_string_display(fragmented_tvb, 0, actx, tree, hf_index, hfi, - fragmented_length); + fragmented_length, named_bits, num_named_bits); } else - out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, length); + out_tvb = dissect_per_bit_string_display(tvb, offset, actx, tree, hf_index, hfi, length, named_bits, num_named_bits); } /* XXX: ?? */ /*val_start = offset>>3;*/ @@ -2288,7 +2291,7 @@ guint32 dissect_per_bit_string_containing_pdu_new(tvbuff_t *tvb, guint32 offset, tvbuff_t *val_tvb = NULL; proto_tree *subtree = tree; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, min_len, max_len, has_extension, &val_tvb, NULL); + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, min_len, max_len, has_extension, NULL, 0, &val_tvb, NULL); if (type_cb && val_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_per_containing); @@ -2569,7 +2572,7 @@ dissect_per_T_octet_aligned(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_t static int dissect_per_T_arbitrary(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &actx->external.arbitrary, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, &actx->external.arbitrary, NULL); if (actx->external.arbitrary) { if (actx->external.u.per.type_cb) { diff --git a/epan/dissectors/packet-per.h b/epan/dissectors/packet-per.h index 9db73ad1ae..4f75e9138c 100644 --- a/epan/dissectors/packet-per.h +++ b/epan/dissectors/packet-per.h @@ -99,7 +99,8 @@ WS_DLL_PUBLIC guint32 dissect_per_sequence_eag(tvbuff_t *tvb, guint32 offset, as WS_DLL_PUBLIC guint32 dissect_per_octet_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, tvbuff_t **value_tvb); WS_DLL_PUBLIC guint32 dissect_per_octet_string_containing_pdu_new(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, dissector_t type_cb); -WS_DLL_PUBLIC guint32 dissect_per_bit_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, tvbuff_t **value_tvb, int *len); +WS_DLL_PUBLIC guint32 dissect_per_bit_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, const int **named_bits, gint num_named_bits, tvbuff_t **value_tvb, int *len); + WS_DLL_PUBLIC guint32 dissect_per_bit_string_containing_pdu_new(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, dissector_t type_cb); WS_DLL_PUBLIC guint32 dissect_per_restricted_character_string(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index, int min_len, int max_len, gboolean has_extension, const char *alphabet, int alphabet_length, tvbuff_t **value_tvb); diff --git a/epan/dissectors/packet-ranap.c b/epan/dissectors/packet-ranap.c index bf6f0ae437..0e28c1d959 100644 --- a/epan/dissectors/packet-ranap.c +++ b/epan/dissectors/packet-ranap.c @@ -2504,7 +2504,7 @@ dissect_ranap_RAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_ranap_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3311,7 +3311,7 @@ dissect_ranap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ gint tvb_len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, NULL); + 1, 160, TRUE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) return offset; @@ -3876,7 +3876,7 @@ dissect_ranap_BindingID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ranap_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3886,7 +3886,7 @@ dissect_ranap_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_ranap_BIT_STRING_SIZE_56(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 56, 56, FALSE, NULL, NULL); + 56, 56, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4571,7 +4571,7 @@ dissect_ranap_CSFB_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ranap_CSG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4820,7 +4820,7 @@ dissect_ranap_E_DCH_MAC_d_Flow_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ranap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4830,7 +4830,7 @@ dissect_ranap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_ranap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4840,7 +4840,7 @@ dissect_ranap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_ranap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4850,7 +4850,7 @@ dissect_ranap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_ranap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4900,7 +4900,7 @@ dissect_ranap_PermittedEncryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, a static int dissect_ranap_EncryptionKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4989,7 +4989,7 @@ dissect_ranap_IMEISVList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_ranap_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5343,7 +5343,7 @@ dissect_ranap_HS_DSCH_MAC_d_Flow_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_ranap_MeasurementsToActivate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5789,7 +5789,7 @@ dissect_ranap_PermittedIntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offs static int dissect_ranap_IntegrityProtectionKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5970,7 +5970,7 @@ dissect_ranap_InterSystemInformation_TransparentContainer(tvbuff_t *tvb _U_, int static int dissect_ranap_IuSignallingConnectionIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6594,7 +6594,7 @@ dissect_ranap_MaxSDU_Size(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ranap_MBMS_PTP_RAB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6921,7 +6921,7 @@ dissect_ranap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_ranap_NAS_SequenceNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6931,7 +6931,7 @@ dissect_ranap_NAS_SequenceNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_ranap_NAS_SynchronisationIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6974,7 +6974,7 @@ dissect_ranap_NonSearchingIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_ranap_Null_NRI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7236,7 +7236,7 @@ dissect_ranap_Port_Number(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ranap_PositioningDataDiscriminator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7296,7 +7296,7 @@ dissect_ranap_PositionDataSpecificToGERANIuMode(tvbuff_t *tvb _U_, int offset _U static int dissect_ranap_Priority_Class_Indicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7425,7 +7425,7 @@ dissect_ranap_RABDataVolumeReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ranap_RAB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8268,7 +8268,7 @@ dissect_ranap_RSRVCC_HO_Indication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ranap_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9099,7 +9099,7 @@ dissect_ranap_UERegistrationQueryResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_ranap_UESBI_IuA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 128, FALSE, NULL, NULL); + 1, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9109,7 +9109,7 @@ dissect_ranap_UESBI_IuA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ranap_UESBI_IuB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 128, FALSE, NULL, NULL); + 1, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9155,7 +9155,7 @@ dissect_ranap_UL_N_PDU_SequenceNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_ranap_UP_ModeVersions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-rnsap.c b/epan/dissectors/packet-rnsap.c index c52ad2011e..7cdea464f1 100644 --- a/epan/dissectors/packet-rnsap.c +++ b/epan/dissectors/packet-rnsap.c @@ -7851,7 +7851,7 @@ dissect_rnsap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ gint tvb_len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, NULL); + 1, 160, TRUE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) return offset; @@ -7927,7 +7927,7 @@ dissect_rnsap_Additional_EDCH_MAC_d_Flow_Specific_Information_Response_List(tvbu static int dissect_rnsap_HARQ_Process_Allocation_2ms_EDCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNrOfEDCHHARQProcesses2msEDCH, maxNrOfEDCHHARQProcesses2msEDCH, FALSE, NULL, NULL); + maxNrOfEDCHHARQProcesses2msEDCH, maxNrOfEDCHHARQProcesses2msEDCH, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8859,7 +8859,7 @@ dissect_rnsap_L3_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx rnsap_private_data_t *pdata = rnsap_get_private_data(actx->pinfo); offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) @@ -9791,7 +9791,7 @@ dissect_rnsap_DPC_Mode_Change_SupportIndicator(tvbuff_t *tvb _U_, int offset _U_ static int dissect_rnsap_CellCapabilityContainer_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9990,7 +9990,7 @@ dissect_rnsap_Secondary_Serving_Cell_List(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_rnsap_CellCapabilityContainerExtension_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10094,7 +10094,7 @@ dissect_rnsap_PCCPCH_Power(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_rnsap_CellCapabilityContainer_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10104,7 +10104,7 @@ dissect_rnsap_CellCapabilityContainer_TDD(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_rnsap_CellCapabilityContainer_TDD768(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10139,7 +10139,7 @@ dissect_rnsap_ANR_TDD_CellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_rnsap_CellCapabilityContainer_TDD_LCR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10149,7 +10149,7 @@ dissect_rnsap_CellCapabilityContainer_TDD_LCR(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rnsap_CellCapabilityContainerExtension_TDD_LCR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10297,7 +10297,7 @@ dissect_rnsap_Band_Indicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_rnsap_BCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10327,7 +10327,7 @@ dissect_rnsap_INTEGER_1_320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_rnsap_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10337,7 +10337,7 @@ dissect_rnsap_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10439,7 +10439,7 @@ dissect_rnsap_BLER(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int dissect_rnsap_NCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -11343,7 +11343,7 @@ dissect_rnsap_E_DCH_HARQ_PO_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_E_DCH_MACdFlow_Multiplexing_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNrOfEDCHMACdFlows, maxNrOfEDCHMACdFlows, FALSE, NULL, NULL); + maxNrOfEDCHMACdFlows, maxNrOfEDCHMACdFlows, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12968,7 +12968,7 @@ dissect_rnsap_SPS_Reservation_Indicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_rnsap_LogicalChannellevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -12978,7 +12978,7 @@ dissect_rnsap_LogicalChannellevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rnsap_PriorityQueuelevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13046,7 +13046,7 @@ dissect_rnsap_HS_DSCH_Semi_PersistentScheduling_Information_to_Modify_LCR(tvbuff static int dissect_rnsap_E_DCH_SPS_Indicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13260,7 +13260,7 @@ dissect_rnsap_DATA_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_rnsap_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -13305,7 +13305,7 @@ dissect_rnsap_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_rnsap_BIT_STRING_SIZE_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 13, 13, FALSE, NULL, NULL); + 13, 13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14013,7 +14013,7 @@ dissect_rnsap_INTEGER_1_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_rnsap_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14072,7 +14072,7 @@ dissect_rnsap_DCH_MeasurementOccasion_Information(tvbuff_t *tvb _U_, int offset static int dissect_rnsap_DCH_MeasurementType_Indicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -14522,7 +14522,7 @@ dissect_rnsap_GANSS_StatusHealth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -16339,7 +16339,7 @@ dissect_rnsap_DSCH_TDD_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rnsap_DsField(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -16448,7 +16448,7 @@ dissect_rnsap_E_AGCH_Table_Choice(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rnsap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -16515,7 +16515,7 @@ dissect_rnsap_E_RGCH_E_HICH_ChannelisationCodeValidityIndicator(tvbuff_t *tvb _U static int dissect_rnsap_GenericTrafficCategory(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18432,7 +18432,7 @@ dissect_rnsap_E_DCH_MACdFlow_Retransmission_Timer_LCR(tvbuff_t *tvb _U_, int off static int dissect_rnsap_E_DCH_TimeslotResource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 13, 13, FALSE, NULL, NULL); + 13, 13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -19180,7 +19180,7 @@ dissect_rnsap_E_HICH_Specific_InformationResp_LCR(tvbuff_t *tvb _U_, int offset static int dissect_rnsap_E_DCH_TimeslotResource_LCR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20257,7 +20257,7 @@ dissect_rnsap_Gainfactors_10ms_mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_rnsap_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20267,7 +20267,7 @@ dissect_rnsap_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 22, 22, FALSE, NULL, NULL); + 22, 22, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20296,7 +20296,7 @@ dissect_rnsap_GANSS_NAVclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rnsap_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 11, 11, FALSE, NULL, NULL); + 11, 11, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20306,7 +20306,7 @@ dissect_rnsap_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20316,7 +20316,7 @@ dissect_rnsap_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20326,7 +20326,7 @@ dissect_rnsap_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20336,7 +20336,7 @@ dissect_rnsap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 26, 26, FALSE, NULL, NULL); + 26, 26, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20392,7 +20392,7 @@ dissect_rnsap_GANSS_GLONASSclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_rnsap_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20456,7 +20456,7 @@ dissect_rnsap_GANSS_AddClockModels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rnsap_GANSS_AddIonoModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20475,7 +20475,7 @@ dissect_rnsap_GANSS_AddNavigationModelsReq(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_rnsap_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20485,7 +20485,7 @@ dissect_rnsap_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20495,7 +20495,7 @@ dissect_rnsap_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20505,7 +20505,7 @@ dissect_rnsap_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 14, 14, FALSE, NULL, NULL); + 14, 14, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20547,7 +20547,7 @@ dissect_rnsap_GANSS_NavModel_NAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rnsap_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 25, 25, FALSE, NULL, NULL); + 25, 25, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20557,7 +20557,7 @@ dissect_rnsap_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 17, 17, FALSE, NULL, NULL); + 17, 17, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20567,7 +20567,7 @@ dissect_rnsap_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 23, 23, FALSE, NULL, NULL); + 23, 23, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20577,7 +20577,7 @@ dissect_rnsap_BIT_STRING_SIZE_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 33, 33, FALSE, NULL, NULL); + 33, 33, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20587,7 +20587,7 @@ dissect_rnsap_BIT_STRING_SIZE_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 15, 15, FALSE, NULL, NULL); + 15, 15, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20597,7 +20597,7 @@ dissect_rnsap_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20640,7 +20640,7 @@ dissect_rnsap_GANSS_NavModel_CNAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rnsap_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20650,7 +20650,7 @@ dissect_rnsap_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_BIT_STRING_SIZE_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20687,7 +20687,7 @@ dissect_rnsap_GANSS_NavModel_GLONASSecef(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rnsap_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -20697,7 +20697,7 @@ dissect_rnsap_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rnsap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -21688,7 +21688,7 @@ dissect_rnsap_GANSS_BDSclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rnsap_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -21698,7 +21698,7 @@ dissect_rnsap_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_BIT_STRING_SIZE_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 31, 31, FALSE, NULL, NULL); + 31, 31, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -21901,7 +21901,7 @@ dissect_rnsap_INTEGER_0_59_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_rnsap_BIT_STRING_SIZE_1_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1024, FALSE, NULL, NULL); + 1, 1024, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22044,7 +22044,7 @@ dissect_rnsap_GANSS_Delta_T(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_rnsap_BIT_STRING_SIZE_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 19, 19, FALSE, NULL, NULL); + 19, 19, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22443,7 +22443,7 @@ dissect_rnsap_GA_AccessPointPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_rnsap_GERAN_Cell_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22565,7 +22565,7 @@ dissect_rnsap_T_satellite_Almanac_Information(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rnsap_BIT_STRING_SIZE_364(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 364, 364, FALSE, NULL, NULL); + 364, 364, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22691,7 +22691,7 @@ dissect_rnsap_INTEGER_0_1048575(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_BIT_STRING_SIZE_87(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 87, 87, FALSE, NULL, NULL); + 87, 87, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -24900,7 +24900,7 @@ dissect_rnsap_TDD_PhysicalChannelOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_rnsap_HS_DSCH_TimeslotResourceLCR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -26502,7 +26502,7 @@ dissect_rnsap_MCCH_Message_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rnsap_Secondary_CCPCH_System_Information_MBMS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -27972,7 +27972,7 @@ dissect_rnsap_Non_rectangular_resource_allocation_indicator(tvbuff_t *tvb _U_, i static int dissect_rnsap_Non_rectangular_resource_timeslot_set(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -28443,7 +28443,7 @@ dissect_rnsap_PowerOffsetForSecondaryCPICHforMIMOwithfourtransmitantennasRequest static int dissect_rnsap_Precoder_Weight_Set_Restriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -28549,7 +28549,7 @@ dissect_rnsap_UpPCH_InformationItem_LCRTDD(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_rnsap_RANAP_EnhancedRelocationInformationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -28559,7 +28559,7 @@ dissect_rnsap_RANAP_EnhancedRelocationInformationRequest(tvbuff_t *tvb _U_, int static int dissect_rnsap_RANAP_EnhancedRelocationInformationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -28572,7 +28572,7 @@ dissect_rnsap_RANAP_RelocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn tvbuff_t *parameter_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, ¶meter_tvb, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) @@ -29715,7 +29715,7 @@ dissect_rnsap_SpecialBurstScheduling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_rnsap_SpeechVersion(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -31688,7 +31688,7 @@ dissect_rnsap_UE_Measurement_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rnsap_UE_SupportIndicatorExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-rrc.c b/epan/dissectors/packet-rrc.c index ff91fe39e1..adddee22f5 100644 --- a/epan/dissectors/packet-rrc.c +++ b/epan/dissectors/packet-rrc.c @@ -18469,7 +18469,7 @@ static int dissect_SRNC_RelocationInfo_r7_add_ext_IEs_PDU(tvbuff_t *tvb _U_, pac static int dissect_rrc_MessageAuthenticationCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18514,7 +18514,7 @@ dissect_rrc_RRC_TransactionIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_rrc_IntegrityProtInitNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -18800,7 +18800,7 @@ dissect_rrc_SRNC_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U #line 1110 "./asn1/rrc/rrc.cnf" tvbuff_t * s_rnc_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, &s_rnc_id_tvb, NULL); + 12, 12, FALSE, NULL, 0, &s_rnc_id_tvb, NULL); if (s_rnc_id_tvb) { private_data_set_s_rnc_id(actx, tvb_get_ntohs(s_rnc_id_tvb, 0) >> 4); @@ -18818,7 +18818,7 @@ dissect_rrc_S_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot #line 1117 "./asn1/rrc/rrc.cnf" tvbuff_t * s_rnti_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, &s_rnti_tvb, NULL); + 20, 20, FALSE, NULL, 0, &s_rnti_tvb, NULL); if (s_rnti_tvb) { private_data_set_s_rnti(actx, tvb_get_ntoh24(s_rnti_tvb, 0) >> 4); @@ -20037,11 +20037,30 @@ dissect_rrc_T_consecutive(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } +static const int * T_bitmap_bits[] = { + &hf_rrc_T_bitmap_chCode16_SF16, + &hf_rrc_T_bitmap_chCode15_SF16, + &hf_rrc_T_bitmap_chCode14_SF16, + &hf_rrc_T_bitmap_chCode13_SF16, + &hf_rrc_T_bitmap_chCode12_SF16, + &hf_rrc_T_bitmap_chCode11_SF16, + &hf_rrc_T_bitmap_chCode10_SF16, + &hf_rrc_T_bitmap_chCode9_SF16, + &hf_rrc_T_bitmap_chCode8_SF16, + &hf_rrc_T_bitmap_chCode7_SF16, + &hf_rrc_T_bitmap_chCode6_SF16, + &hf_rrc_T_bitmap_chCode5_SF16, + &hf_rrc_T_bitmap_chCode4_SF16, + &hf_rrc_T_bitmap_chCode3_SF16, + &hf_rrc_T_bitmap_chCode2_SF16, + &hf_rrc_T_bitmap_chCode1_SF16, + NULL +}; static int dissect_rrc_T_bitmap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, T_bitmap_bits, 16, NULL, NULL); return offset; } @@ -22699,7 +22718,7 @@ dissect_rrc_ActiveSetUpdate_r3_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrc_BIT_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -22730,7 +22749,7 @@ dissect_rrc_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ proto_tree *cell_identity_tree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, &cell_id_tvb, NULL); + 28, 28, FALSE, NULL, 0, &cell_id_tvb, NULL); if(cell_id_tvb != NULL) { cell_identity_tree = proto_item_add_subtree(actx->created_item, ett_rrc_cellIdentity); @@ -22953,7 +22972,7 @@ dissect_rrc_H_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot tvbuff_t *hrnti_tvb; struct rrc_info *rrcinf; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &hrnti_tvb, NULL); + 16, 16, FALSE, NULL, 0, &hrnti_tvb, NULL); @@ -22975,7 +22994,7 @@ dissect_rrc_H_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int dissect_rrc_E_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -28475,7 +28494,7 @@ private_data_set_scrambling_code(actx,scrambling_code); static int dissect_rrc_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -30149,7 +30168,7 @@ dissect_rrc_MIMO4x4_PilotConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_rrc_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -33759,7 +33778,7 @@ dissect_rrc_SatID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_rrc_BIT_STRING_SIZE_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 14, 14, FALSE, NULL, NULL); + 14, 14, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -33769,7 +33788,7 @@ dissect_rrc_BIT_STRING_SIZE_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34120,7 +34139,7 @@ dissect_rrc_SatelliteStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_rrc_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34130,7 +34149,7 @@ dissect_rrc_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34140,7 +34159,7 @@ dissect_rrc_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34150,7 +34169,7 @@ dissect_rrc_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34160,7 +34179,7 @@ dissect_rrc_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_BIT_STRING_SIZE_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 23, 23, FALSE, NULL, NULL); + 23, 23, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34170,7 +34189,7 @@ dissect_rrc_BIT_STRING_SIZE_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34180,7 +34199,7 @@ dissect_rrc_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34207,7 +34226,7 @@ dissect_rrc_SubFrame1Reserved(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_BIT_STRING_SIZE_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 22, 22, FALSE, NULL, NULL); + 22, 22, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34217,7 +34236,7 @@ dissect_rrc_BIT_STRING_SIZE_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34227,7 +34246,7 @@ dissect_rrc_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34365,7 +34384,7 @@ dissect_rrc_UE_Positioning_GPS_UTC_Model(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rrc_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 11, 11, FALSE, NULL, NULL); + 11, 11, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -34415,7 +34434,7 @@ dissect_rrc_AlmanacSatInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_364(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 364, 364, FALSE, NULL, NULL); + 364, 364, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -35945,7 +35964,7 @@ dissect_rrc_T_non_broadcastIndication_02(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rrc_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 9, 9, FALSE, NULL, NULL); + 9, 9, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -35955,7 +35974,7 @@ dissect_rrc_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -35965,7 +35984,7 @@ dissect_rrc_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 31, 31, FALSE, NULL, NULL); + 31, 31, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36152,7 +36171,7 @@ dissect_rrc_INTEGER_0_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_rrc_BIT_STRING_SIZE_1_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1024, FALSE, NULL, NULL); + 1, 1024, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36321,7 +36340,7 @@ dissect_rrc_UE_Positioning_GANSS_ReferenceMeasurementInfo(tvbuff_t *tvb _U_, int static int dissect_rrc_BIT_STRING_SIZE_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 13, 13, FALSE, NULL, NULL); + 13, 13, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36506,7 +36525,7 @@ dissect_rrc_UE_Positioning_GANSS_AddIonoModel(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 15, 15, FALSE, NULL, NULL); + 15, 15, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36516,7 +36535,7 @@ dissect_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 19, 19, FALSE, NULL, NULL); + 19, 19, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36601,7 +36620,7 @@ dissect_rrc_NAVclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_rrc_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36611,7 +36630,7 @@ dissect_rrc_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36621,7 +36640,7 @@ dissect_rrc_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 26, 26, FALSE, NULL, NULL); + 26, 26, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36675,7 +36694,7 @@ dissect_rrc_GLONASSclockModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36749,7 +36768,7 @@ dissect_rrc_NavModel_NAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_rrc_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 25, 25, FALSE, NULL, NULL); + 25, 25, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36759,7 +36778,7 @@ dissect_rrc_BIT_STRING_SIZE_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 17, 17, FALSE, NULL, NULL); + 17, 17, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36769,7 +36788,7 @@ dissect_rrc_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 33, 33, FALSE, NULL, NULL); + 33, 33, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36811,7 +36830,7 @@ dissect_rrc_NavModel_CNAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_rrc_BIT_STRING_SIZE_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36847,7 +36866,7 @@ dissect_rrc_NavModel_GLONASSecef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rrc_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -36857,7 +36876,7 @@ dissect_rrc_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -37018,7 +37037,7 @@ dissect_rrc_ALM_NAVKeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rrc_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -38810,7 +38829,7 @@ dissect_rrc_RAB_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_rrc_NAS_Synchronisation_Indicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -38928,7 +38947,7 @@ dissect_rrc_BCCH_ARFCN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_rrc_NC_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL, NULL); + 3, 3, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -39215,7 +39234,7 @@ dissect_rrc_C_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot guint32 u_rnti = 0; fp_crnti_allocation_info_t *fp_crnti_allocation_info = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &c_rnti_tvb, NULL); + 16, 16, FALSE, NULL, 0, &c_rnti_tvb, NULL); if (!c_rnti_tvb) return offset; @@ -39322,7 +39341,7 @@ dissect_rrc_UTRAN_DRX_CycleLengthCoefficient(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rrc_URA_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -43862,7 +43881,7 @@ dissect_rrc_CellUpdateConfirm_r3_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_rrc_DSCH_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -44873,11 +44892,22 @@ dissect_rrc_UL_SynchronisationParameters_r4(tvbuff_t *tvb _U_, int offset _U_, a } +static const int * T_sync_UL_CodesBitmap_bits[] = { + &hf_rrc_T_sync_UL_CodesBitmap_code7, + &hf_rrc_T_sync_UL_CodesBitmap_code6, + &hf_rrc_T_sync_UL_CodesBitmap_code5, + &hf_rrc_T_sync_UL_CodesBitmap_code4, + &hf_rrc_T_sync_UL_CodesBitmap_code3, + &hf_rrc_T_sync_UL_CodesBitmap_code2, + &hf_rrc_T_sync_UL_CodesBitmap_code1, + &hf_rrc_T_sync_UL_CodesBitmap_code0, + NULL +}; static int dissect_rrc_T_sync_UL_CodesBitmap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, T_sync_UL_CodesBitmap_bits, 8, NULL, NULL); return offset; } @@ -45505,7 +45535,7 @@ dissect_rrc_T_modeSpecificInfo_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrc_MAC_d_HFN_initial_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -47999,7 +48029,7 @@ dissect_rrc_E_DCH_MAC_d_FlowMaxRetrans(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_rrc_E_DCH_MAC_d_FlowMultiplexingList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxE_DCHMACdFlow, maxE_DCHMACdFlow, FALSE, NULL, NULL); + maxE_DCHMACdFlow, maxE_DCHMACdFlow, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -52330,11 +52360,22 @@ dissect_rrc_INTEGER_2_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_availableSYNC_UlCodesIndics_bits[] = { + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex7, + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex6, + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex5, + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex4, + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex3, + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex2, + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex1, + &hf_rrc_T_availableSYNC_UlCodesIndics_sulCodeIndex0, + NULL +}; static int dissect_rrc_T_availableSYNC_UlCodesIndics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, T_availableSYNC_UlCodesIndics_bits, 8, NULL, NULL); return offset; } @@ -52370,11 +52411,18 @@ dissect_rrc_T_size2_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_subchannels_08_bits[] = { + &hf_rrc_T_subchannels_08_subCh3, + &hf_rrc_T_subchannels_08_subCh2, + &hf_rrc_T_subchannels_08_subCh1, + &hf_rrc_T_subchannels_08_subCh0, + NULL +}; static int dissect_rrc_T_subchannels_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, T_subchannels_08_bits, 4, NULL, NULL); return offset; } @@ -52394,11 +52442,22 @@ dissect_rrc_T_size4_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_subchannels_09_bits[] = { + &hf_rrc_T_subchannels_09_subCh7, + &hf_rrc_T_subchannels_09_subCh6, + &hf_rrc_T_subchannels_09_subCh5, + &hf_rrc_T_subchannels_09_subCh4, + &hf_rrc_T_subchannels_09_subCh3, + &hf_rrc_T_subchannels_09_subCh2, + &hf_rrc_T_subchannels_09_subCh1, + &hf_rrc_T_subchannels_09_subCh0, + NULL +}; static int dissect_rrc_T_subchannels_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, T_subchannels_09_bits, 8, NULL, NULL); return offset; } @@ -52528,11 +52587,22 @@ dissect_rrc_T_max_SYNC_UL_Transmissions_02(tvbuff_t *tvb _U_, int offset _U_, as } +static const int * Sync_UL_Codes_Bitmap_bits[] = { + &hf_rrc_Sync_UL_Codes_Bitmap_code7, + &hf_rrc_Sync_UL_Codes_Bitmap_code6, + &hf_rrc_Sync_UL_Codes_Bitmap_code5, + &hf_rrc_Sync_UL_Codes_Bitmap_code4, + &hf_rrc_Sync_UL_Codes_Bitmap_code3, + &hf_rrc_Sync_UL_Codes_Bitmap_code2, + &hf_rrc_Sync_UL_Codes_Bitmap_code1, + &hf_rrc_Sync_UL_Codes_Bitmap_code0, + NULL +}; static int dissect_rrc_Sync_UL_Codes_Bitmap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, Sync_UL_Codes_Bitmap_bits, 8, NULL, NULL); return offset; } @@ -53974,11 +54044,46 @@ dissect_rrc_T_consecutive_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * T_bitmap_01_bits[] = { + &hf_rrc_T_bitmap_01_chCode32_SF32, + &hf_rrc_T_bitmap_01_chCode31_SF32, + &hf_rrc_T_bitmap_01_chCode30_SF32, + &hf_rrc_T_bitmap_01_chCode29_SF32, + &hf_rrc_T_bitmap_01_chCode28_SF32, + &hf_rrc_T_bitmap_01_chCode27_SF32, + &hf_rrc_T_bitmap_01_chCode26_SF32, + &hf_rrc_T_bitmap_01_chCode25_SF32, + &hf_rrc_T_bitmap_01_chCode24_SF32, + &hf_rrc_T_bitmap_01_chCode23_SF32, + &hf_rrc_T_bitmap_01_chCode22_SF32, + &hf_rrc_T_bitmap_01_chCode21_SF32, + &hf_rrc_T_bitmap_01_chCode20_SF32, + &hf_rrc_T_bitmap_01_chCode19_SF32, + &hf_rrc_T_bitmap_01_chCode18_SF32, + &hf_rrc_T_bitmap_01_chCode17_SF32, + &hf_rrc_T_bitmap_01_chCode16_SF32, + &hf_rrc_T_bitmap_01_chCode15_SF32, + &hf_rrc_T_bitmap_01_chCode14_SF32, + &hf_rrc_T_bitmap_01_chCode13_SF32, + &hf_rrc_T_bitmap_01_chCode12_SF32, + &hf_rrc_T_bitmap_01_chCode11_SF32, + &hf_rrc_T_bitmap_01_chCode10_SF32, + &hf_rrc_T_bitmap_01_chCode9_SF32, + &hf_rrc_T_bitmap_01_chCode8_SF32, + &hf_rrc_T_bitmap_01_chCode7_SF32, + &hf_rrc_T_bitmap_01_chCode6_SF32, + &hf_rrc_T_bitmap_01_chCode5_SF32, + &hf_rrc_T_bitmap_01_chCode4_SF32, + &hf_rrc_T_bitmap_01_chCode3_SF32, + &hf_rrc_T_bitmap_01_chCode2_SF32, + &hf_rrc_T_bitmap_01_chCode1_SF32, + NULL +}; static int dissect_rrc_T_bitmap_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, T_bitmap_01_bits, 32, NULL, NULL); return offset; } @@ -58511,7 +58616,7 @@ dissect_rrc_T_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_rrc_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -60369,7 +60474,7 @@ dissect_rrc_DL_InformationPerRL_List_r11(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rrc_BIT_STRING_SIZE_maxCellMeas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxCellMeas, maxCellMeas, FALSE, NULL, NULL); + maxCellMeas, maxCellMeas, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -61868,7 +61973,7 @@ dissect_rrc_Non_rectResAllocInd_TDD128(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_rrc_Non_rectResSpecTSset_TDD128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -64042,7 +64147,7 @@ dissect_rrc_GSM_MessageList_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * tvbuff_t *gsm_messagelist_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 512, FALSE, &gsm_messagelist_tvb, NULL); + 1, 512, FALSE, NULL, 0, &gsm_messagelist_tvb, NULL); if (gsm_messagelist_tvb) @@ -64523,7 +64628,7 @@ dissect_rrc_HandoverFromUTRANCommand_GSM(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rrc_BIT_STRING_SIZE_1_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 512, FALSE, NULL, NULL); + 1, 512, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -67154,7 +67259,7 @@ dissect_rrc_UE_Positioning_ResponseTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_rrc_UE_Positioning_Accuracy(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -91958,6 +92063,25 @@ dissect_rrc_RRCConnectionRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const int * T_cipheringAlgorithmCap_bits[] = { + &hf_rrc_T_cipheringAlgorithmCap_spare15, + &hf_rrc_T_cipheringAlgorithmCap_spare14, + &hf_rrc_T_cipheringAlgorithmCap_spare13, + &hf_rrc_T_cipheringAlgorithmCap_spare12, + &hf_rrc_T_cipheringAlgorithmCap_spare11, + &hf_rrc_T_cipheringAlgorithmCap_spare10, + &hf_rrc_T_cipheringAlgorithmCap_spare9, + &hf_rrc_T_cipheringAlgorithmCap_spare8, + &hf_rrc_T_cipheringAlgorithmCap_spare7, + &hf_rrc_T_cipheringAlgorithmCap_spare6, + &hf_rrc_T_cipheringAlgorithmCap_spare5, + &hf_rrc_T_cipheringAlgorithmCap_spare4, + &hf_rrc_T_cipheringAlgorithmCap_spare3, + &hf_rrc_T_cipheringAlgorithmCap_uea2, + &hf_rrc_T_cipheringAlgorithmCap_uea1, + &hf_rrc_T_cipheringAlgorithmCap_uea0, + NULL +}; static int dissect_rrc_T_cipheringAlgorithmCap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -91966,7 +92090,7 @@ dissect_rrc_T_cipheringAlgorithmCap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &cap_tvb, NULL); + 16, 16, FALSE, T_cipheringAlgorithmCap_bits, 16, &cap_tvb, NULL); if (cap_tvb) { @@ -92000,6 +92124,25 @@ dissect_rrc_T_cipheringAlgorithmCap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } +static const int * T_integrityProtectionAlgorithmCap_bits[] = { + &hf_rrc_T_integrityProtectionAlgorithmCap_spare15, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare14, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare13, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare12, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare11, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare10, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare9, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare8, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare7, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare6, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare5, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare4, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare3, + &hf_rrc_T_integrityProtectionAlgorithmCap_uia2, + &hf_rrc_T_integrityProtectionAlgorithmCap_uia1, + &hf_rrc_T_integrityProtectionAlgorithmCap_spare0, + NULL +}; static int dissect_rrc_T_integrityProtectionAlgorithmCap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -92008,7 +92151,7 @@ dissect_rrc_T_integrityProtectionAlgorithmCap(tvbuff_t *tvb _U_, int offset _U_, proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &cap_tvb, NULL); + 16, 16, FALSE, T_integrityProtectionAlgorithmCap_bits, 16, &cap_tvb, NULL); if (cap_tvb) { @@ -92057,6 +92200,16 @@ dissect_rrc_SecurityCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static const int * GsmSecurityCapability_bits[] = { + &hf_rrc_GsmSecurityCapability_a5_7, + &hf_rrc_GsmSecurityCapability_a5_6, + &hf_rrc_GsmSecurityCapability_a5_5, + &hf_rrc_GsmSecurityCapability_a5_4, + &hf_rrc_GsmSecurityCapability_a5_3, + &hf_rrc_GsmSecurityCapability_a5_2, + &hf_rrc_GsmSecurityCapability_a5_1, + NULL +}; static int dissect_rrc_GsmSecurityCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { @@ -92065,7 +92218,7 @@ dissect_rrc_GsmSecurityCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, &cap_tvb, NULL); + 7, 7, FALSE, GsmSecurityCapability_bits, 7, &cap_tvb, NULL); if (cap_tvb) { @@ -98814,7 +98967,7 @@ dissect_rrc_T_single_GERANIu_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_rrc_BIT_STRING_SIZE_1_32768(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 32768, FALSE, NULL, NULL); + 1, 32768, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -100003,7 +100156,7 @@ dissect_rrc_UEInformationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_rrc_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -100153,7 +100306,7 @@ dissect_rrc_SEQUENCE_SIZE_1_8_OF_LAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_rrc_RoutingAreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -100799,7 +100952,7 @@ dissect_rrc_START_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, enum nas_sys_info_gsm_map cn_domain; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, &start_val, NULL); + 20, 20, FALSE, NULL, 0, &start_val, NULL); /*We base this map on User Identity from RLC*/ @@ -101487,7 +101640,7 @@ dissect_rrc_HandoverToUTRANComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_rrc_RoutingParameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -101658,7 +101811,7 @@ dissect_rrc_Gsm_map_IDNNS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_rrc_Ansi_41_IDNNS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 14, 14, FALSE, NULL, NULL); + 14, 14, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -102204,7 +102357,7 @@ dissect_rrc_MeasuredResultsOnRACHinterFreq(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_rrc_P_TMSI_GSM_MAP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -102305,7 +102458,7 @@ dissect_rrc_InitialDirectTransfer_v860ext_IEs(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rrc_BIT_STRING_SIZE_maxNumEUTRAFreqs_FACH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNumEUTRAFreqs_FACH, maxNumEUTRAFreqs_FACH, FALSE, NULL, NULL); + maxNumEUTRAFreqs_FACH, maxNumEUTRAFreqs_FACH, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -103140,7 +103293,7 @@ dissect_rrc_InterFreqMeasuredResultsList(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rrc_GSM_CarrierRSSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -105675,7 +105828,7 @@ dissect_rrc_UE_Positioning_ErrorCause_r7(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rrc_DGANSS_Sig_Id_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -106810,7 +106963,7 @@ dissect_rrc_CSGProximityIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrc_CSG_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -107123,7 +107276,7 @@ dissect_rrc_EventResultsOnSecUlFreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_rrc_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -111471,7 +111624,7 @@ dissect_rrc_UE_RadioAccessCapability_v590ext(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rrc_GERANIu_RadioAccessCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 170, FALSE, NULL, NULL); + 1, 170, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -116092,7 +116245,7 @@ dissect_rrc_IMSI_GSM_MAP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_rrc_TMSI_GSM_MAP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -116156,7 +116309,7 @@ dissect_rrc_IMEI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_ static int dissect_rrc_ESN_DS_41(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -116773,7 +116926,7 @@ dissect_rrc_T_r4_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_rrc_BIT_STRING_SIZE_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 29, 29, FALSE, NULL, NULL); + 29, 29, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -120263,7 +120416,7 @@ dissect_rrc_ProtocolErrorIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrc_UESpecificBehaviourInformation1idle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -122637,7 +122790,7 @@ dissect_rrc_SIB_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_rrc_SIB_Data_fixed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 222, 222, FALSE, NULL, NULL); + 222, 222, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -122689,7 +122842,7 @@ dissect_rrc_SubsequentSegment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_rrc_SIB_Data_variable(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 214, FALSE, NULL, NULL); + 1, 214, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -122821,7 +122974,7 @@ dissect_rrc_T_completeAndFirst_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrc_BIT_STRING_SIZE_226(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 226, 226, FALSE, NULL, NULL); + 226, 226, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -123312,7 +123465,7 @@ dissect_rrc_SIB_Type2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_rrc_SIB_Data2_fixed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 232, 232, FALSE, NULL, NULL); + 232, 232, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -123354,7 +123507,7 @@ dissect_rrc_SubsequentSegment2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_SIB_Data2_variable(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 224, FALSE, NULL, NULL); + 1, 224, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -123486,7 +123639,7 @@ dissect_rrc_T_combination9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_rrc_BIT_STRING_SIZE_236(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 236, 236, FALSE, NULL, NULL); + 236, 236, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -125283,7 +125436,7 @@ dissect_rrc_MBMS_MICHConfigurationInfo_r6(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_rrc_MBMS_CellGroupIdentity_r6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -125539,7 +125692,7 @@ dissect_rrc_MBMSGeneralInformation_v860ext_IEs(tvbuff_t *tvb _U_, int offset _U_ static int dissect_rrc_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -126894,7 +127047,7 @@ dissect_rrc_CellUpdateConfirm_r7_add_ext_IEs(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rrc_S_RNTI_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -130890,7 +131043,7 @@ dissect_rrc_InterRATHandoverInfo_v3a0ext_IEs(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rrc_UESpecificBehaviourInformation1interRAT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -135535,7 +135688,7 @@ dissect_rrc_System_Information_Container(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_rrc_ANSI_41_NAS_Parameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 2048, FALSE, NULL, NULL); + 1, 2048, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -135851,7 +136004,7 @@ dissect_rrc_T_gsm_MAP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_rrc_P_REV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -135861,7 +136014,7 @@ dissect_rrc_P_REV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_rrc_Min_P_REV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -135871,7 +136024,7 @@ dissect_rrc_Min_P_REV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_rrc_SID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 15, 15, FALSE, NULL, NULL); + 15, 15, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -135881,7 +136034,7 @@ dissect_rrc_SID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_t static int dissect_rrc_NID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -138353,7 +138506,7 @@ dissect_rrc_T_eutraFeatureGroupIndicators(tvbuff_t *tvb _U_, int offset _U_, asn #line 881 "./asn1/rrc/rrc.cnf" tvbuff_t *eutraFeatureGroupIndicators_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, &eutraFeatureGroupIndicators_tvb, NULL); + 4, 4, FALSE, NULL, 0, &eutraFeatureGroupIndicators_tvb, NULL); if(eutraFeatureGroupIndicators_tvb){ /* Dissect eutraFeatureGroupIndicators */ @@ -142354,11 +142507,18 @@ dissect_rrc_AC_To_ASC_MappingTable(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const int * T_assignedSubChannelNumber_bits[] = { + &hf_rrc_T_assignedSubChannelNumber_b3, + &hf_rrc_T_assignedSubChannelNumber_b2, + &hf_rrc_T_assignedSubChannelNumber_b1, + &hf_rrc_T_assignedSubChannelNumber_b0, + NULL +}; static int dissect_rrc_T_assignedSubChannelNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, T_assignedSubChannelNumber_bits, 4, NULL, NULL); return offset; } @@ -142380,11 +142540,22 @@ dissect_rrc_AccessServiceClass_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const int * T_channelisationCodeIndices_bits[] = { + &hf_rrc_T_channelisationCodeIndices_chCodeIndex7, + &hf_rrc_T_channelisationCodeIndices_chCodeIndex6, + &hf_rrc_T_channelisationCodeIndices_chCodeIndex5, + &hf_rrc_T_channelisationCodeIndices_chCodeIndex4, + &hf_rrc_T_channelisationCodeIndices_chCodeIndex3, + &hf_rrc_T_channelisationCodeIndices_chCodeIndex2, + &hf_rrc_T_channelisationCodeIndices_chCodeIndex1, + &hf_rrc_T_channelisationCodeIndices_chCodeIndex0, + NULL +}; static int dissect_rrc_T_channelisationCodeIndices(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, T_channelisationCodeIndices_bits, 8, NULL, NULL); return offset; } @@ -142420,11 +142591,18 @@ dissect_rrc_T_size2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro } +static const int * T_subchannels_01_bits[] = { + &hf_rrc_T_subchannels_01_subCh3, + &hf_rrc_T_subchannels_01_subCh2, + &hf_rrc_T_subchannels_01_subCh1, + &hf_rrc_T_subchannels_01_subCh0, + NULL +}; static int dissect_rrc_T_subchannels_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, T_subchannels_01_bits, 4, NULL, NULL); return offset; } @@ -142444,11 +142622,22 @@ dissect_rrc_T_size4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro } +static const int * T_subchannels_02_bits[] = { + &hf_rrc_T_subchannels_02_subCh7, + &hf_rrc_T_subchannels_02_subCh6, + &hf_rrc_T_subchannels_02_subCh5, + &hf_rrc_T_subchannels_02_subCh4, + &hf_rrc_T_subchannels_02_subCh3, + &hf_rrc_T_subchannels_02_subCh2, + &hf_rrc_T_subchannels_02_subCh1, + &hf_rrc_T_subchannels_02_subCh0, + NULL +}; static int dissect_rrc_T_subchannels_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, T_subchannels_02_bits, 8, NULL, NULL); return offset; } @@ -142509,11 +142698,30 @@ dissect_rrc_AccessServiceClass_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const int * T_channelisationCodeIndices_01_bits[] = { + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex15, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex14, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex13, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex12, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex11, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex10, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex9, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex8, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex7, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex6, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex5, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex4, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex3, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex2, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex1, + &hf_rrc_T_channelisationCodeIndices_01_chCodeIndex0, + NULL +}; static int dissect_rrc_T_channelisationCodeIndices_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, T_channelisationCodeIndices_01_bits, 16, NULL, NULL); return offset; } @@ -142549,11 +142757,18 @@ dissect_rrc_T_size2_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_subchannels_04_bits[] = { + &hf_rrc_T_subchannels_04_subCh3, + &hf_rrc_T_subchannels_04_subCh2, + &hf_rrc_T_subchannels_04_subCh1, + &hf_rrc_T_subchannels_04_subCh0, + NULL +}; static int dissect_rrc_T_subchannels_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, T_subchannels_04_bits, 4, NULL, NULL); return offset; } @@ -142573,11 +142788,22 @@ dissect_rrc_T_size4_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_subchannels_05_bits[] = { + &hf_rrc_T_subchannels_05_subCh7, + &hf_rrc_T_subchannels_05_subCh6, + &hf_rrc_T_subchannels_05_subCh5, + &hf_rrc_T_subchannels_05_subCh4, + &hf_rrc_T_subchannels_05_subCh3, + &hf_rrc_T_subchannels_05_subCh2, + &hf_rrc_T_subchannels_05_subCh1, + &hf_rrc_T_subchannels_05_subCh0, + NULL +}; static int dissect_rrc_T_subchannels_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, T_subchannels_05_bits, 8, NULL, NULL); return offset; } @@ -142597,11 +142823,30 @@ dissect_rrc_T_size8_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_subchannels_06_bits[] = { + &hf_rrc_T_subchannels_06_subCh15, + &hf_rrc_T_subchannels_06_subCh14, + &hf_rrc_T_subchannels_06_subCh13, + &hf_rrc_T_subchannels_06_subCh12, + &hf_rrc_T_subchannels_06_subCh11, + &hf_rrc_T_subchannels_06_subCh10, + &hf_rrc_T_subchannels_06_subCh9, + &hf_rrc_T_subchannels_06_subCh8, + &hf_rrc_T_subchannels_06_subCh7, + &hf_rrc_T_subchannels_06_subCh6, + &hf_rrc_T_subchannels_06_subCh5, + &hf_rrc_T_subchannels_06_subCh4, + &hf_rrc_T_subchannels_06_subCh3, + &hf_rrc_T_subchannels_06_subCh2, + &hf_rrc_T_subchannels_06_subCh1, + &hf_rrc_T_subchannels_06_subCh0, + NULL +}; static int dissect_rrc_T_subchannels_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, T_subchannels_06_bits, 16, NULL, NULL); return offset; } @@ -142819,21 +143064,55 @@ dissect_rrc_ASCSetting_TDD_r7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } +static const int * AvailableSignatures_bits[] = { + &hf_rrc_AvailableSignatures_signature15, + &hf_rrc_AvailableSignatures_signature14, + &hf_rrc_AvailableSignatures_signature13, + &hf_rrc_AvailableSignatures_signature12, + &hf_rrc_AvailableSignatures_signature11, + &hf_rrc_AvailableSignatures_signature10, + &hf_rrc_AvailableSignatures_signature9, + &hf_rrc_AvailableSignatures_signature8, + &hf_rrc_AvailableSignatures_signature7, + &hf_rrc_AvailableSignatures_signature6, + &hf_rrc_AvailableSignatures_signature5, + &hf_rrc_AvailableSignatures_signature4, + &hf_rrc_AvailableSignatures_signature3, + &hf_rrc_AvailableSignatures_signature2, + &hf_rrc_AvailableSignatures_signature1, + &hf_rrc_AvailableSignatures_signature0, + NULL +}; static int dissect_rrc_AvailableSignatures(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, AvailableSignatures_bits, 16, NULL, NULL); return offset; } +static const int * AvailableSubChannelNumbers_bits[] = { + &hf_rrc_AvailableSubChannelNumbers_subCh11, + &hf_rrc_AvailableSubChannelNumbers_subCh10, + &hf_rrc_AvailableSubChannelNumbers_subCh9, + &hf_rrc_AvailableSubChannelNumbers_subCh8, + &hf_rrc_AvailableSubChannelNumbers_subCh7, + &hf_rrc_AvailableSubChannelNumbers_subCh6, + &hf_rrc_AvailableSubChannelNumbers_subCh5, + &hf_rrc_AvailableSubChannelNumbers_subCh4, + &hf_rrc_AvailableSubChannelNumbers_subCh3, + &hf_rrc_AvailableSubChannelNumbers_subCh2, + &hf_rrc_AvailableSubChannelNumbers_subCh1, + &hf_rrc_AvailableSubChannelNumbers_subCh0, + NULL +}; static int dissect_rrc_AvailableSubChannelNumbers(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, AvailableSubChannelNumbers_bits, 12, NULL, NULL); return offset; } @@ -147747,7 +148026,7 @@ dissect_rrc_EUTRA_FrequencyAndPriorityInfoList_vd20ext(tvbuff_t *tvb _U_, int of static int dissect_rrc_BIT_STRING_SIZE_maxNumEUTRAFreqs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNumEUTRAFreqs, maxNumEUTRAFreqs, FALSE, NULL, NULL); + maxNumEUTRAFreqs, maxNumEUTRAFreqs, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -156329,7 +156608,7 @@ dissect_rrc_SysInfoType15_2ter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_rrc_BIT_STRING_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 32, FALSE, NULL, NULL); + 1, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -157679,7 +157958,7 @@ dissect_rrc_SysInfoType23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_rrc_BIT_STRING_SIZE_maxNumAccessGroups(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - maxNumAccessGroups, maxNumAccessGroups, FALSE, NULL, NULL); + maxNumAccessGroups, maxNumAccessGroups, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -158324,7 +158603,7 @@ dissect_rrc_CalculationTimeForCiphering(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_rrc_BIT_STRING_SIZE_20_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 25, FALSE, NULL, NULL); + 20, 25, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -158439,7 +158718,7 @@ dissect_rrc_SRB_SpecificIntegrityProtInfoList(tvbuff_t *tvb _U_, int offset _U_, static int dissect_rrc_ImplementationSpecificParams(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 512, FALSE, NULL, NULL); + 1, 512, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-rrlp.c b/epan/dissectors/packet-rrlp.c index 54404dc97e..95abe5efd9 100644 --- a/epan/dissectors/packet-rrlp.c +++ b/epan/dissectors/packet-rrlp.c @@ -2754,11 +2754,20 @@ dissect_rrlp_Rel5_MsrPosition_Req_Extension(tvbuff_t *tvb _U_, int offset _U_, a } +static const int * GANSSPositioningMethod_bits[] = { + &hf_rrlp_GANSSPositioningMethod_gps, + &hf_rrlp_GANSSPositioningMethod_galileo, + &hf_rrlp_GANSSPositioningMethod_sbas, + &hf_rrlp_GANSSPositioningMethod_modernizedGPS, + &hf_rrlp_GANSSPositioningMethod_qzss, + &hf_rrlp_GANSSPositioningMethod_glonass, + NULL +}; static int dissect_rrlp_GANSSPositioningMethod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 16, FALSE, NULL, NULL); + 2, 16, FALSE, GANSSPositioningMethod_bits, 6, NULL, NULL); return offset; } @@ -2932,7 +2941,7 @@ dissect_rrlp_GANSSIonosphericModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrlp_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3220,7 +3229,7 @@ dissect_rrlp_GANSSDiffCorrections(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrlp_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3656,7 +3665,7 @@ dissect_rrlp_NavModel_GLONASSecef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrlp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3728,7 +3737,7 @@ dissect_rrlp_GANSSOrbitModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_rrlp_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL, NULL); + 1, 1, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3783,11 +3792,22 @@ dissect_rrlp_GANSSNavModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const int * GANSSSignals_bits[] = { + &hf_rrlp_GANSSSignals_signal1, + &hf_rrlp_GANSSSignals_signal2, + &hf_rrlp_GANSSSignals_signal3, + &hf_rrlp_GANSSSignals_signal4, + &hf_rrlp_GANSSSignals_signal5, + &hf_rrlp_GANSSSignals_signal6, + &hf_rrlp_GANSSSignals_signal7, + &hf_rrlp_GANSSSignals_signal8, + NULL +}; static int dissect_rrlp_GANSSSignals(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, GANSSSignals_bits, 8, NULL, NULL); return offset; } @@ -4221,7 +4241,7 @@ dissect_rrlp_Almanac_GlonassAlmanacSet(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_rrlp_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4661,7 +4681,7 @@ dissect_rrlp_GANSSEphemerisExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_rrlp_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5316,7 +5336,7 @@ dissect_rrlp_GPSEphemerisExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_rrlp_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6412,11 +6432,21 @@ dissect_rrlp_INTEGER_0_16384(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * PositionData_bits[] = { + &hf_rrlp_PositionData_e_otd, + &hf_rrlp_PositionData_gps, + &hf_rrlp_PositionData_galileo, + &hf_rrlp_PositionData_sbas, + &hf_rrlp_PositionData_modernizedGPS, + &hf_rrlp_PositionData_qzss, + &hf_rrlp_PositionData_glonass, + NULL +}; static int dissect_rrlp_PositionData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 3, 16, FALSE, NULL, NULL); + 3, 16, FALSE, PositionData_bits, 7, NULL, NULL); return offset; } @@ -6769,21 +6799,34 @@ dissect_rrlp_ProtocolError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } +static const int * GANSSPositioningMethodTypes_bits[] = { + &hf_rrlp_GANSSPositioningMethodTypes_msAssisted, + &hf_rrlp_GANSSPositioningMethodTypes_msBased, + &hf_rrlp_GANSSPositioningMethodTypes_standalone, + NULL +}; static int dissect_rrlp_GANSSPositioningMethodTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, GANSSPositioningMethodTypes_bits, 3, NULL, NULL); return offset; } +static const int * SBASID_bits[] = { + &hf_rrlp_SBASID_waas, + &hf_rrlp_SBASID_egnos, + &hf_rrlp_SBASID_masas, + &hf_rrlp_SBASID_gagan, + NULL +}; static int dissect_rrlp_SBASID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, SBASID_bits, 4, NULL, NULL); return offset; } @@ -6836,21 +6879,35 @@ dissect_rrlp_PosCapability_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static const int * NonGANSSPositionMethods_bits[] = { + &hf_rrlp_NonGANSSPositionMethods_msAssistedEOTD, + &hf_rrlp_NonGANSSPositionMethods_msBasedEOTD, + &hf_rrlp_NonGANSSPositionMethods_msAssistedGPS, + &hf_rrlp_NonGANSSPositionMethods_msBasedGPS, + &hf_rrlp_NonGANSSPositionMethods_standaloneGPS, + NULL +}; static int dissect_rrlp_NonGANSSPositionMethods(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, NonGANSSPositionMethods_bits, 5, NULL, NULL); return offset; } +static const int * MultipleMeasurementSets_bits[] = { + &hf_rrlp_MultipleMeasurementSets_eotd, + &hf_rrlp_MultipleMeasurementSets_gps, + &hf_rrlp_MultipleMeasurementSets_ganss, + NULL +}; static int dissect_rrlp_MultipleMeasurementSets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, MultipleMeasurementSets_bits, 3, NULL, NULL); return offset; } @@ -6872,31 +6929,69 @@ dissect_rrlp_PosCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const int * GPSAssistance_bits[] = { + &hf_rrlp_GPSAssistance_almanac, + &hf_rrlp_GPSAssistance_uTCmodel, + &hf_rrlp_GPSAssistance_ionosphericModel, + &hf_rrlp_GPSAssistance_navigationmodel, + &hf_rrlp_GPSAssistance_dGPScorrections, + &hf_rrlp_GPSAssistance_referenceLocation, + &hf_rrlp_GPSAssistance_referenceTime, + &hf_rrlp_GPSAssistance_acquisitionAssistance, + &hf_rrlp_GPSAssistance_realTimeIntegrity, + &hf_rrlp_GPSAssistance_ephemerisExtension, + &hf_rrlp_GPSAssistance_ephemerisExtensionCheck, + NULL +}; static int dissect_rrlp_GPSAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, GPSAssistance_bits, 11, NULL, NULL); return offset; } +static const int * CommonGANSSAssistance_bits[] = { + &hf_rrlp_CommonGANSSAssistance_referenceTime, + &hf_rrlp_CommonGANSSAssistance_referenceLocation, + &hf_rrlp_CommonGANSSAssistance_spare_bit_2, + &hf_rrlp_CommonGANSSAssistance_ionosphericModel, + &hf_rrlp_CommonGANSSAssistance_addIonosphericModel, + &hf_rrlp_CommonGANSSAssistance_earthOrientationParam, + NULL +}; static int dissect_rrlp_CommonGANSSAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, CommonGANSSAssistance_bits, 6, NULL, NULL); return offset; } +static const int * GANSSAssistance_bits[] = { + &hf_rrlp_GANSSAssistance_realTimeIntegrity, + &hf_rrlp_GANSSAssistance_differentialCorrections, + &hf_rrlp_GANSSAssistance_almanac, + &hf_rrlp_GANSSAssistance_referenceMeasurementInformation, + &hf_rrlp_GANSSAssistance_navigationModel, + &hf_rrlp_GANSSAssistance_timeModelGNSS_UTC, + &hf_rrlp_GANSSAssistance_timeModelGNSS_GNSS, + &hf_rrlp_GANSSAssistance_databitassistance, + &hf_rrlp_GANSSAssistance_ephemerisExtension, + &hf_rrlp_GANSSAssistance_ephemerisExtensionCheck, + &hf_rrlp_GANSSAssistance_addUTCmodel, + &hf_rrlp_GANSSAssistance_auxiliaryInformation, + NULL +}; static int dissect_rrlp_GANSSAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16, FALSE, NULL, NULL); + 1, 16, FALSE, GANSSAssistance_bits, 12, NULL, NULL); return offset; } @@ -6946,11 +7041,22 @@ dissect_rrlp_GANSSAssistanceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } +static const int * GANSSModelID_bits[] = { + &hf_rrlp_GANSSModelID_model1, + &hf_rrlp_GANSSModelID_model2, + &hf_rrlp_GANSSModelID_model3, + &hf_rrlp_GANSSModelID_model4, + &hf_rrlp_GANSSModelID_model5, + &hf_rrlp_GANSSModelID_model6, + &hf_rrlp_GANSSModelID_model7, + &hf_rrlp_GANSSModelID_model8, + NULL +}; static int dissect_rrlp_GANSSModelID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, NULL, NULL); + 1, 8, FALSE, GANSSModelID_bits, 8, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-rua.c b/epan/dissectors/packet-rua.c index 71c5a28c08..aadd4bb847 100644 --- a/epan/dissectors/packet-rua.c +++ b/epan/dissectors/packet-rua.c @@ -522,7 +522,7 @@ dissect_rua_Establishment_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_rua_Context_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -532,7 +532,7 @@ dissect_rua_Context_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_rua_RoutingParameter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -712,7 +712,7 @@ dissect_rua_Gsm_map_IDNNS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_rua_Ansi_41_IDNNS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 14, 14, FALSE, NULL, NULL); + 14, 14, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -758,7 +758,7 @@ dissect_rua_T_release99(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_rua_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 15, 15, FALSE, NULL, NULL); + 15, 15, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-s1ap.c b/epan/dissectors/packet-s1ap.c index 7ba16134d8..487a14ca5f 100644 --- a/epan/dissectors/packet-s1ap.c +++ b/epan/dissectors/packet-s1ap.c @@ -2738,7 +2738,7 @@ dissect_s1ap_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U #line 2223 "./asn1/s1ap/s1ap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 28, 28, FALSE, &cell_id_tvb, NULL); + 28, 28, FALSE, NULL, 0, &cell_id_tvb, NULL); if (cell_id_tvb) { guint32 cell_id = tvb_get_bits32(cell_id_tvb, 0, 28, ENC_BIG_ENDIAN); @@ -3400,7 +3400,7 @@ dissect_s1ap_COUNTvalue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_s1ap_ReceiveStatusofULPDCPSDUs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4096, 4096, FALSE, NULL, NULL); + 4096, 4096, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4502,7 +4502,7 @@ dissect_s1ap_AdditionalCSFallbackIndicator(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_s1ap_CSG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4711,7 +4711,7 @@ dissect_s1ap_DataCodingScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act #line 903 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { struct s1ap_private_data *s1ap_data = s1ap_get_private_data(actx->pinfo); @@ -4781,7 +4781,7 @@ dissect_s1ap_ServedDCNs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_s1ap_DL_NAS_MAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4961,7 +4961,7 @@ dissect_s1ap_EmergencyAreaIDListForRestart(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_s1ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4971,7 +4971,7 @@ dissect_s1ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_s1ap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4981,7 +4981,7 @@ dissect_s1ap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_s1ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4991,7 +4991,7 @@ dissect_s1ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_s1ap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5154,7 +5154,7 @@ dissect_s1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t gint tvb_len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, NULL); + 1, 160, TRUE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) return offset; @@ -5201,7 +5201,7 @@ dissect_s1ap_EncryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 810 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -5622,7 +5622,7 @@ dissect_s1ap_ExtendedRepetitionPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_s1ap_Extended_UEIdentityIndexValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 14, 14, FALSE, NULL, NULL); + 14, 14, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5875,7 +5875,7 @@ dissect_s1ap_HandoverType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_s1ap_Masked_IMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5887,7 +5887,7 @@ dissect_s1ap_MeasurementsToActivate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ #line 945 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -6138,7 +6138,7 @@ dissect_s1ap_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, as #line 825 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -6164,7 +6164,7 @@ dissect_s1ap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 774 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -6764,7 +6764,7 @@ dissect_s1ap_MDT_Location_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 964 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -6884,7 +6884,7 @@ dissect_s1ap_MessageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 873 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, ¶meter_tvb, NULL); + 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -6900,7 +6900,7 @@ dissect_s1ap_MessageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_s1ap_MobilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7223,7 +7223,7 @@ dissect_s1ap_NB_IoT_Paging_eDRXInformation(tvbuff_t *tvb _U_, int offset _U_, as static int dissect_s1ap_NB_IoT_UEIdentityIndexValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 12, FALSE, NULL, NULL); + 12, 12, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7235,7 +7235,7 @@ dissect_s1ap_NRencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ #line 1019 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -7261,7 +7261,7 @@ dissect_s1ap_NRintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, #line 1034 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -7618,7 +7618,7 @@ dissect_s1ap_PS_ServiceNotAvailable(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_s1ap_ReceiveStatusOfULPDCPSDUsExtended(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16384, FALSE, NULL, NULL); + 1, 16384, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7628,7 +7628,7 @@ dissect_s1ap_ReceiveStatusOfULPDCPSDUsExtended(tvbuff_t *tvb _U_, int offset _U_ static int dissect_s1ap_ReceiveStatusOfULPDCPSDUsPDCP_SNlength18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 131072, FALSE, NULL, NULL); + 1, 131072, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8023,7 +8023,7 @@ dissect_s1ap_Routing_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_s1ap_SecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8123,7 +8123,7 @@ dissect_s1ap_SerialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U #line 880 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); + 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_SerialNumber); @@ -8601,7 +8601,7 @@ dissect_s1ap_INTEGER_1_3600_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_s1ap_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8816,7 +8816,7 @@ dissect_s1ap_TAIListforWarning(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_s1ap_GNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 22, 32, FALSE, NULL, NULL); + 22, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9318,7 +9318,7 @@ dissect_s1ap_UE_associatedLogicalS1_ConnectionItem(tvbuff_t *tvb _U_, int offset static int dissect_s1ap_UEIdentityIndexValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9482,7 +9482,7 @@ dissect_s1ap_UE_Usage_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_s1ap_UL_NAS_MAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9492,7 +9492,7 @@ dissect_s1ap_UL_NAS_MAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_s1ap_UL_NAS_Count(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9566,7 +9566,7 @@ dissect_s1ap_UE_Application_Layer_Measurement_Capability(tvbuff_t *tvb _U_, int #line 1049 "./asn1/s1ap/s1ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { diff --git a/epan/dissectors/packet-sabp.c b/epan/dissectors/packet-sabp.c index a9fff4fd03..876a397601 100644 --- a/epan/dissectors/packet-sabp.c +++ b/epan/dissectors/packet-sabp.c @@ -478,7 +478,7 @@ dissect_sabp_Broadcast_Message_Content(tvbuff_t *tvb _U_, int offset _U_, asn1_c tvbuff_t *parameter_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 9968, FALSE, ¶meter_tvb, NULL); + 1, 9968, FALSE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) return offset; @@ -663,7 +663,7 @@ dissect_sabp_Data_Coding_Scheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) @@ -761,7 +761,7 @@ dissect_sabp_Message_Identifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a tvbuff_t *parameter_tvb=NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); + 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) return offset; @@ -781,7 +781,7 @@ dissect_sabp_Serial_Number(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); + 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); if (!parameter_tvb) return offset; diff --git a/epan/dissectors/packet-sbc-ap.c b/epan/dissectors/packet-sbc-ap.c index acea7f9863..8c4fc39aba 100644 --- a/epan/dissectors/packet-sbc-ap.c +++ b/epan/dissectors/packet-sbc-ap.c @@ -582,7 +582,7 @@ dissect_sbc_ap_PLMNidentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_sbc_ap_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -985,7 +985,7 @@ dissect_sbc_ap_Broadcast_Cancelled_Area_List(tvbuff_t *tvb _U_, int offset _U_, static int dissect_sbc_ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -995,7 +995,7 @@ dissect_sbc_ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_sbc_ap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1005,7 +1005,7 @@ dissect_sbc_ap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_sbc_ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1015,7 +1015,7 @@ dissect_sbc_ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_sbc_ap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1196,7 +1196,7 @@ dissect_sbc_ap_Data_Coding_Scheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 268 "./asn1/sbc-ap/sbc-ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { struct sbc_ap_private_data *sbc_ap_data = sbc_ap_get_private_data(actx->pinfo); @@ -1340,7 +1340,7 @@ dissect_sbc_ap_Message_Identifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 234 "./asn1/sbc-ap/sbc-ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, ¶meter_tvb, NULL); + 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -1432,7 +1432,7 @@ dissect_sbc_ap_Serial_Number(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx #line 241 "./asn1/sbc-ap/sbc-ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, ¶meter_tvb, NULL); + 16, 16, FALSE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_sbc_ap_Serial_Number); diff --git a/epan/dissectors/packet-t124.c b/epan/dissectors/packet-t124.c index a103755aee..2231d05ae9 100644 --- a/epan/dissectors/packet-t124.c +++ b/epan/dissectors/packet-t124.c @@ -1679,11 +1679,16 @@ dissect_t124_DataPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } +static const int * Segmentation_bits[] = { + &hf_t124_Segmentation_begin, + &hf_t124_Segmentation_end, + NULL +}; static int dissect_t124_Segmentation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL, NULL); + 2, 2, FALSE, Segmentation_bits, 2, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-tetra.c b/epan/dissectors/packet-tetra.c index 96102494f0..506b9e48bb 100644 --- a/epan/dissectors/packet-tetra.c +++ b/epan/dissectors/packet-tetra.c @@ -2018,7 +2018,7 @@ dissect_tetra_T_optional_params(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_tetra_Subscriber_class(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3033,7 +3033,7 @@ dissect_tetra_Proprietary_element_owner(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_tetra_BIT_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL, NULL); + NO_BOUND, NO_BOUND, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3603,7 +3603,7 @@ dissect_tetra_U_SETUP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_tetra_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3941,7 +3941,7 @@ dissect_tetra_OCTET_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_tetra_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4800,7 +4800,7 @@ dissect_tetra_MAC_DATA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_tetra_BIT_STRING_SIZE_264(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 264, 264, FALSE, NULL, NULL); + 264, 264, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4827,7 +4827,7 @@ dissect_tetra_MAC_FRAG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_tetra_BIT_STRING_SIZE_120(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 120, 120, FALSE, NULL, NULL); + 120, 120, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4932,7 +4932,7 @@ dissect_tetra_LengthIndOrReservationReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_tetra_BIT_STRING_SIZE_258(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 258, 258, FALSE, NULL, NULL); + 258, 258, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4960,7 +4960,7 @@ dissect_tetra_MAC_END_UPLINK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_tetra_BIT_STRING_SIZE_114(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 114, 114, FALSE, NULL, NULL); + 114, 114, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5040,7 +5040,7 @@ dissect_tetra_T_lengthInd_ReservationReq(tvbuff_t *tvb _U_, int offset _U_, asn1 static int dissect_tetra_BIT_STRING_SIZE_85(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 85, 85, FALSE, NULL, NULL); + 85, 85, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5498,7 +5498,7 @@ dissect_tetra_T_channel_allocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_tetra_BIT_STRING_SIZE_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 255, 255, FALSE, NULL, NULL); + 255, 255, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5573,7 +5573,7 @@ dissect_tetra_T_channel_allocation_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_tetra_BIT_STRING_SIZE_111(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 111, 111, FALSE, NULL, NULL); + 111, 111, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8547,7 +8547,7 @@ dissect_tetra_SSI_USAGE_NEED(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_tetra_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 34, 34, FALSE, NULL, NULL); + 34, 34, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-ulp.c b/epan/dissectors/packet-ulp.c index a7aad5ca43..eff6f95ee4 100644 --- a/epan/dissectors/packet-ulp.c +++ b/epan/dissectors/packet-ulp.c @@ -1355,7 +1355,7 @@ dissect_ulp_T_mdn(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_ulp_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 34, 34, FALSE, NULL, NULL); + 34, 34, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1850,7 +1850,7 @@ dissect_ulp_SLPMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_ulp_MAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1860,7 +1860,7 @@ dissect_ulp_MAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_t static int dissect_ulp_KeyIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -1928,7 +1928,7 @@ dissect_ulp_T_apMACAddress_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 48, 48, FALSE, &val_tvb, NULL); + 48, 48, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { proto_tree_add_item(tree, hf_index, val_tvb, 0, 6, ENC_NA); @@ -2240,7 +2240,7 @@ dissect_ulp_ProtLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_ulp_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2356,7 +2356,7 @@ dissect_ulp_T_ganssSBASid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 3, 3, FALSE, &val_tvb, NULL); + 3, 3, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 3, ENC_NA); @@ -2384,13 +2384,24 @@ dissect_ulp_GANSSPositioningMethodTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static const int * GANSSSignals_bits[] = { + &hf_ulp_GANSSSignals_signal1, + &hf_ulp_GANSSSignals_signal2, + &hf_ulp_GANSSSignals_signal3, + &hf_ulp_GANSSSignals_signal4, + &hf_ulp_GANSSSignals_signal5, + &hf_ulp_GANSSSignals_signal6, + &hf_ulp_GANSSSignals_signal7, + &hf_ulp_GANSSSignals_signal8, + NULL +}; static int dissect_ulp_GANSSSignals(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 762 "./asn1/ulp/ulp.cnf" tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &val_tvb, NULL); + 1, 8, FALSE, GANSSSignals_bits, 8, &val_tvb, NULL); if (val_tvb) { proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ulp_GANSSSignals); @@ -2456,13 +2467,19 @@ dissect_ulp_T_addPosID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } +static const int * T_addPosMode_bits[] = { + &hf_ulp_T_addPosMode_standalone, + &hf_ulp_T_addPosMode_setBased, + &hf_ulp_T_addPosMode_setAssisted, + NULL +}; static int dissect_ulp_T_addPosMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 202 "./asn1/ulp/ulp.cnf" tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, &val_tvb, NULL); + 1, 8, FALSE, T_addPosMode_bits, 3, &val_tvb, NULL); if (val_tvb) { proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ulp_addPosMode); @@ -2579,7 +2596,7 @@ dissect_ulp_PosProtocolVersion3GPP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ulp_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3455,7 +3472,7 @@ dissect_ulp_CdmaCellInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_ulp_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3556,7 +3573,7 @@ dissect_ulp_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ulp_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3591,7 +3608,7 @@ dissect_ulp_PhysCellId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ulp_TrackingAreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3686,7 +3703,7 @@ dissect_ulp_RS_SINR_Range(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_ulp_TrackingAreaCodeNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3804,7 +3821,7 @@ dissect_ulp_T_apMACAddress_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 48, 48, FALSE, &val_tvb, NULL); + 48, 48, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { proto_tree_add_item(tree, hf_index, val_tvb, 0, 6, ENC_NA); @@ -3971,7 +3988,7 @@ dissect_ulp_ReportedLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_ulp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4, 4, FALSE, NULL, NULL); + 4, 4, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3981,7 +3998,7 @@ dissect_ulp_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_ulp_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 30, 30, FALSE, NULL, NULL); + 30, 30, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3991,7 +4008,7 @@ dissect_ulp_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_ulp_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4112,7 +4129,7 @@ dissect_ulp_T_setMACAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 48, 48, FALSE, &val_tvb, NULL); + 48, 48, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { proto_tree_add_item(tree, hf_index, val_tvb, 0, 6, ENC_NA); @@ -4163,7 +4180,7 @@ dissect_ulp_WlanAPInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act static int dissect_ulp_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4285,7 +4302,7 @@ dissect_ulp_ARFCN_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_ulp_CellIdentityNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4848,7 +4865,7 @@ dissect_ulp_T_bearing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 9, 9, FALSE, &val_tvb, NULL); + 9, 9, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 9, ENC_BIG_ENDIAN); @@ -4867,7 +4884,7 @@ dissect_ulp_T_horspeed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &val_tvb, NULL); + 16, 16, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -4901,7 +4918,7 @@ dissect_ulp_T_verdirect(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 1, 1, FALSE, &val_tvb, NULL); + 1, 1, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 1, ENC_NA); @@ -4920,7 +4937,7 @@ dissect_ulp_T_bearing_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 9, 9, FALSE, &val_tvb, NULL); + 9, 9, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 9, ENC_BIG_ENDIAN); @@ -4939,7 +4956,7 @@ dissect_ulp_T_horspeed_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &val_tvb, NULL); + 16, 16, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -4958,7 +4975,7 @@ dissect_ulp_T_verspeed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 8, 8, FALSE, &val_tvb, NULL); + 8, 8, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 1, ENC_BIG_ENDIAN); @@ -4994,7 +5011,7 @@ dissect_ulp_T_bearing_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 9, 9, FALSE, &val_tvb, NULL); + 9, 9, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 9, ENC_BIG_ENDIAN); @@ -5013,7 +5030,7 @@ dissect_ulp_T_horspeed_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &val_tvb, NULL); + 16, 16, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -5032,7 +5049,7 @@ dissect_ulp_T_uncertspeed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 8, 8, FALSE, &val_tvb, NULL); + 8, 8, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 1, ENC_BIG_ENDIAN); @@ -5067,7 +5084,7 @@ dissect_ulp_T_verdirect_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 1, 1, FALSE, &val_tvb, NULL); + 1, 1, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 1, ENC_NA); @@ -5086,7 +5103,7 @@ dissect_ulp_T_bearing_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 9, 9, FALSE, &val_tvb, NULL); + 9, 9, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 9, ENC_BIG_ENDIAN); @@ -5105,7 +5122,7 @@ dissect_ulp_T_horspeed_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &val_tvb, NULL); + 16, 16, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -5124,7 +5141,7 @@ dissect_ulp_T_verspeed_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 8, 8, FALSE, &val_tvb, NULL); + 8, 8, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 1, ENC_BIG_ENDIAN); @@ -5143,7 +5160,7 @@ dissect_ulp_T_horuncertspeed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 8, 8, FALSE, &val_tvb, NULL); + 8, 8, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 1, ENC_BIG_ENDIAN); @@ -5162,7 +5179,7 @@ dissect_ulp_T_veruncertspeed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 8, 8, FALSE, &val_tvb, NULL); + 8, 8, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { actx->created_item = proto_tree_add_item(tree, hf_index, val_tvb, 0, 1, ENC_BIG_ENDIAN); @@ -5273,7 +5290,7 @@ dissect_ulp_SUPLSTART(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_ulp_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5305,7 +5322,7 @@ dissect_ulp_SETAuthKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ulp_KeyIdentity4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5315,7 +5332,7 @@ dissect_ulp_KeyIdentity4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_ulp_SPCSETKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 128, 128, FALSE, NULL, NULL); + 128, 128, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5504,7 +5521,7 @@ dissect_ulp_T_ganssSBASid_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 3, 3, FALSE, &val_tvb, NULL); + 3, 3, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { proto_tree_add_bits_item(tree, hf_index, val_tvb, 0, 3, ENC_NA); @@ -5520,7 +5537,7 @@ dissect_ulp_T_ganssSBASid_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_ulp_DGANSS_Sig_Id_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5652,7 +5669,7 @@ dissect_ulp_T_ganssTimeModels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act #line 233 "./asn1/ulp/ulp.cnf" tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &val_tvb, NULL); + 16, 16, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_ulp_ganssTimeModels); @@ -5810,7 +5827,7 @@ dissect_ulp_GanssExtendedEphCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_ulp_BDS_Sig_Id_Req(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6565,7 +6582,7 @@ dissect_ulp_SUPLPOS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_ulp_Ver(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7060,7 +7077,7 @@ dissect_ulp_UMBAreaId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p static int dissect_ulp_BIT_STRING_SIZE_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 29, 29, FALSE, NULL, NULL); + 29, 29, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7089,7 +7106,7 @@ dissect_ulp_T_apMACAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ tvbuff_t *val_tvb; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 48, 48, FALSE, &val_tvb, NULL); + 48, 48, FALSE, NULL, 0, &val_tvb, NULL); if (val_tvb) { proto_tree_add_item(tree, hf_index, val_tvb, 0, 6, ENC_NA); @@ -7134,7 +7151,7 @@ dissect_ulp_WimaxAreaId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_ulp_BIT_STRING_SIZE_36(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } diff --git a/epan/dissectors/packet-x2ap.c b/epan/dissectors/packet-x2ap.c index 8274d111c0..da4040c630 100644 --- a/epan/dissectors/packet-x2ap.c +++ b/epan/dissectors/packet-x2ap.c @@ -2805,7 +2805,7 @@ dissect_x2ap_PrivateIE_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_x2ap_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2849,7 +2849,7 @@ dissect_x2ap_ABSInformationFDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_x2ap_BIT_STRING_SIZE_1_70_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 70, TRUE, NULL, NULL); + 1, 70, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -3228,7 +3228,7 @@ dissect_x2ap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_x2ap_EUTRANCellIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3543,7 +3543,7 @@ dissect_x2ap_AreaScopeOfQMC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_x2ap_Key_eNodeB_Star(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4039,7 +4039,7 @@ dissect_x2ap_CNTypeRestrictions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_x2ap_BIT_STRING_SIZE_6_4400_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 4400, TRUE, NULL, NULL); + 6, 4400, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -4431,7 +4431,7 @@ dissect_x2ap_CriticalityDiagnostics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_x2ap_CRNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4457,7 +4457,7 @@ dissect_x2ap_CSGMembershipStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_x2ap_CSG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 27, 27, FALSE, NULL, NULL); + 27, 27, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4467,7 +4467,7 @@ dissect_x2ap_CSG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_x2ap_UEID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4772,7 +4772,7 @@ dissect_x2ap_CSIReportList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_x2ap_DataTrafficResources(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 17600, FALSE, NULL, NULL); + 6, 17600, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4923,7 +4923,7 @@ dissect_x2ap_SubframeType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_x2ap_BIT_STRING_SIZE_10_160(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 160, FALSE, NULL, NULL); + 10, 160, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5104,7 +5104,7 @@ dissect_x2ap_T_transmissionModes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * #line 499 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -5237,7 +5237,7 @@ dissect_x2ap_EARFCNExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_x2ap_BIT_STRING_SIZE_12_8800_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 12, 8800, TRUE, NULL, NULL); + 12, 8800, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -5310,7 +5310,7 @@ dissect_x2ap_EnhancedRNTP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_x2ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5320,7 +5320,7 @@ dissect_x2ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_x2ap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 28, 28, FALSE, NULL, NULL); + 28, 28, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5330,7 +5330,7 @@ dissect_x2ap_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_x2ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5340,7 +5340,7 @@ dissect_x2ap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_x2ap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -5378,7 +5378,7 @@ dissect_x2ap_EncryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 406 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -5963,7 +5963,7 @@ dissect_x2ap_ExpectedUEBehaviour(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_x2ap_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 5, 5, FALSE, NULL, NULL); + 5, 5, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6156,7 +6156,7 @@ dissect_x2ap_ForbiddenLAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_x2ap_Fourframes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6263,7 +6263,7 @@ dissect_x2ap_GlobalENB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_x2ap_BIT_STRING_SIZE_22_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 22, 32, FALSE, NULL, NULL); + 22, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -6330,7 +6330,7 @@ dissect_x2ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, &len); + 1, 160, TRUE, NULL, 0, ¶meter_tvb, &len); if (!parameter_tvb) return offset; @@ -6539,7 +6539,7 @@ dissect_x2ap_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, as #line 421 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -6565,7 +6565,7 @@ dissect_x2ap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 305 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -7151,7 +7151,7 @@ dissect_x2ap_ManagementBasedMDTallowed(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_x2ap_Masked_IMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7179,7 +7179,7 @@ dissect_x2ap_MeasurementsToActivate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ #line 451 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -7243,7 +7243,7 @@ dissect_x2ap_MDT_Location_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac #line 476 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -7382,7 +7382,7 @@ dissect_x2ap_RadioframeAllocationOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_x2ap_Oneframe(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7868,7 +7868,7 @@ dissect_x2ap_NRFreqInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_x2ap_NRCellIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 36, 36, FALSE, NULL, NULL); + 36, 36, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -7936,7 +7936,7 @@ dissect_x2ap_NRencryptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ #line 536 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -7962,7 +7962,7 @@ dissect_x2ap_NRintegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, #line 551 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, NULL, 0, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -8300,7 +8300,7 @@ dissect_x2ap_ResourceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_x2ap_BIT_STRING_SIZE_84_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 84, 84, TRUE, NULL, NULL); + 84, 84, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -8310,7 +8310,7 @@ dissect_x2ap_BIT_STRING_SIZE_84_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_x2ap_BIT_STRING_SIZE_6_110_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 110, TRUE, NULL, NULL); + 6, 110, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -8484,7 +8484,7 @@ dissect_x2ap_RadioResourceStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_x2ap_ReceiveStatusofULPDCPSDUs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 4096, 4096, FALSE, NULL, NULL); + 4096, 4096, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8494,7 +8494,7 @@ dissect_x2ap_ReceiveStatusofULPDCPSDUs(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_x2ap_ReceiveStatusOfULPDCPSDUsExtended(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 16384, FALSE, NULL, NULL); + 1, 16384, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8504,7 +8504,7 @@ dissect_x2ap_ReceiveStatusOfULPDCPSDUsExtended(tvbuff_t *tvb _U_, int offset _U_ static int dissect_x2ap_ReceiveStatusOfULPDCPSDUsPDCP_SNlength18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 131072, FALSE, NULL, NULL); + 1, 131072, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8595,7 +8595,7 @@ dissect_x2ap_ReportCharacteristics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 169 "./asn1/x2ap/x2ap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, ¶meter_tvb, NULL); + 32, 32, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { @@ -8660,7 +8660,7 @@ dissect_x2ap_ReportingPeriodicityRSRPMR(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_x2ap_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8947,7 +8947,7 @@ dissect_x2ap_SecondaryRATUsageReport_Item(tvbuff_t *tvb _U_, int offset _U_, asn static int dissect_x2ap_SeNBSecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9099,7 +9099,7 @@ dissect_x2ap_SIPTOBearerDeactivationIndication(tvbuff_t *tvb _U_, int offset _U_ static int dissect_x2ap_ShortMAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9162,7 +9162,7 @@ dissect_x2ap_INTEGER_1_3600_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_x2ap_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 7, 7, FALSE, NULL, NULL); + 7, 7, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9294,7 +9294,7 @@ dissect_x2ap_SubscriberProfileIDforRFP(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_x2ap_SgNBSecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -9426,7 +9426,7 @@ dissect_x2ap_TraceCollectionEntityIPAddress(tvbuff_t *tvb _U_, int offset _U_, a int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, &len); + 1, 160, TRUE, NULL, 0, ¶meter_tvb, &len); if (!parameter_tvb) return offset; @@ -9744,7 +9744,7 @@ dissect_x2ap_ULConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_x2ap_UL_HighInterferenceIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 110, TRUE, NULL, NULL); + 1, 110, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -9949,7 +9949,7 @@ dissect_x2ap_WTID_Type1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_x2ap_WTID_Long_Type2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, NULL, NULL); + 48, 48, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10073,7 +10073,7 @@ dissect_x2ap_E_RABs_ToBeSetup_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_x2ap_MobilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, NULL, NULL); + 32, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -10687,7 +10687,7 @@ dissect_x2ap_T_measurementFailedReportCharacteristics(tvbuff_t *tvb _U_, int off tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, ¶meter_tvb, NULL); + 32, 32, FALSE, NULL, 0, ¶meter_tvb, NULL); if(parameter_tvb){ const gint *fields[] = { diff --git a/epan/dissectors/packet-xnap.c b/epan/dissectors/packet-xnap.c index 1e2831ec9c..58b67b6eed 100644 --- a/epan/dissectors/packet-xnap.c +++ b/epan/dissectors/packet-xnap.c @@ -1996,7 +1996,7 @@ dissect_xnap_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ static int dissect_xnap_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, NULL, NULL); + 8, 8, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2006,7 +2006,7 @@ dissect_xnap_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_xnap_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 10, FALSE, NULL, NULL); + 10, 10, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2107,7 +2107,7 @@ dissect_xnap_NR_Cell_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act #line 272 "./asn1/xnap/xnap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 36, 36, FALSE, &cell_id_tvb, NULL); + 36, 36, FALSE, NULL, 0, &cell_id_tvb, NULL); if (cell_id_tvb) { guint64 cell_id = tvb_get_bits64(cell_id_tvb, 0, 36, ENC_BIG_ENDIAN); @@ -2126,7 +2126,7 @@ dissect_xnap_E_UTRA_Cell_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t #line 286 "./asn1/xnap/xnap.cnf" tvbuff_t *cell_id_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 28, 28, FALSE, &cell_id_tvb, NULL); + 28, 28, FALSE, NULL, 0, &cell_id_tvb, NULL); if (cell_id_tvb) { guint32 cell_id = tvb_get_bits32(cell_id_tvb, 0, 28, ENC_BIG_ENDIAN); @@ -2197,7 +2197,7 @@ dissect_xnap_ListOfCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_xnap_BIT_STRING_SIZE_22_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 22, 32, FALSE, NULL, NULL); + 22, 32, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2245,7 +2245,7 @@ dissect_xnap_GlobalgNB_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_xnap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 20, 20, FALSE, NULL, NULL); + 20, 20, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2255,7 +2255,7 @@ dissect_xnap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_xnap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 18, 18, FALSE, NULL, NULL); + 18, 18, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2265,7 +2265,7 @@ dissect_xnap_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_xnap_BIT_STRING_SIZE_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 21, 21, FALSE, NULL, NULL); + 21, 21, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2428,7 +2428,7 @@ dissect_xnap_AreaOfInterestInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_xnap_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -2962,7 +2962,7 @@ dissect_xnap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t int len; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 160, TRUE, ¶meter_tvb, &len); + 1, 160, TRUE, NULL, 0, ¶meter_tvb, &len); if (!parameter_tvb) return offset; @@ -3078,7 +3078,7 @@ dissect_xnap_CriticalityDiagnostics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_xnap_C_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3507,7 +3507,7 @@ dissect_xnap_DataforwardingandOffloadingInfofromSource(tvbuff_t *tvb _U_, int of static int dissect_xnap_DataTrafficResources(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 17600, FALSE, NULL, NULL); + 6, 17600, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3683,7 +3683,7 @@ dissect_xnap_T_subframeType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_BIT_STRING_SIZE_10_160(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 10, 160, FALSE, NULL, NULL); + 10, 160, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3820,7 +3820,7 @@ dissect_xnap_DRB_Number(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_xnap_BIT_STRING_SIZE_1_2048(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 2048, FALSE, NULL, NULL); + 1, 2048, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -3846,7 +3846,7 @@ dissect_xnap_DRBBStatusTransfer12bitsSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_xnap_BIT_STRING_SIZE_1_131072(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 131072, FALSE, NULL, NULL); + 1, 131072, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4438,7 +4438,7 @@ dissect_xnap_GBRQoSFlowInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, NULL, NULL); + 6, 6, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4466,7 +4466,7 @@ dissect_xnap_GUAMI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int dissect_xnap_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 40, 40, FALSE, NULL, NULL); + 40, 40, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4476,7 +4476,7 @@ dissect_xnap_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_xnap_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 24, 24, FALSE, NULL, NULL); + 24, 24, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4676,7 +4676,7 @@ dissect_xnap_LowerLayerPresenceStatusChange(tvbuff_t *tvb _U_, int offset _U_, a static int dissect_xnap_MAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, NULL, NULL); + 16, 16, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4686,7 +4686,7 @@ dissect_xnap_MAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, prot static int dissect_xnap_MaskedIMEISV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 64, 64, FALSE, NULL, NULL); + 64, 64, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -4822,13 +4822,18 @@ dissect_xnap_SEQUENCE_SIZE_1_maxnoofEPLMNs_OF_PLMN_Identity(tvbuff_t *tvb _U_, i } +static const int * RAT_RestrictionInformation_bits[] = { + &hf_xnap_RAT_RestrictionInformation_e_UTRA, + &hf_xnap_RAT_RestrictionInformation_nR, + NULL +}; static int dissect_xnap_RAT_RestrictionInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 404 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, TRUE, ¶meter_tvb, NULL); + 8, 8, TRUE, RAT_RestrictionInformation_bits, 2, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -7094,7 +7099,7 @@ dissect_xnap_T_resourceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_xnap_BIT_STRING_SIZE_84_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 84, 84, TRUE, NULL, NULL); + 84, 84, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -7104,7 +7109,7 @@ dissect_xnap_BIT_STRING_SIZE_84_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_xnap_BIT_STRING_SIZE_6_110_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 6, 110, TRUE, NULL, NULL); + 6, 110, TRUE, NULL, 0, NULL, NULL); return offset; } @@ -8005,7 +8010,7 @@ dissect_xnap_ServedCellsToUpdate_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_xnap_S_NG_RANnode_SecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 256, 256, FALSE, NULL, NULL); + 256, 256, FALSE, NULL, 0, NULL, NULL); return offset; } @@ -8313,13 +8318,21 @@ dissect_xnap_T_ng_ran_TraceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } +static const int * T_interfaces_to_trace_bits[] = { + &hf_xnap_T_interfaces_to_trace_ng_c, + &hf_xnap_T_interfaces_to_trace_x_nc, + &hf_xnap_T_interfaces_to_trace_uu, + &hf_xnap_T_interfaces_to_trace_f1_c, + &hf_xnap_T_interfaces_to_trace_e1, + NULL +}; static int dissect_xnap_T_interfaces_to_trace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 428 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, ¶meter_tvb, NULL); + 8, 8, FALSE, T_interfaces_to_trace_bits, 5, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -8466,13 +8479,20 @@ dissect_xnap_UEContextID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } +static const int * T_nr_EncyptionAlgorithms_bits[] = { + &hf_xnap_T_nr_EncyptionAlgorithms_spare_bit_0, + &hf_xnap_T_nr_EncyptionAlgorithms_nea1_128, + &hf_xnap_T_nr_EncyptionAlgorithms_nea2_128, + &hf_xnap_T_nr_EncyptionAlgorithms_nea3_128, + NULL +}; static int dissect_xnap_T_nr_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 348 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, T_nr_EncyptionAlgorithms_bits, 4, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -8491,13 +8511,20 @@ dissect_xnap_T_nr_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const int * T_nr_IntegrityProtectionAlgorithms_bits[] = { + &hf_xnap_T_nr_IntegrityProtectionAlgorithms_spare_bit_0, + &hf_xnap_T_nr_IntegrityProtectionAlgorithms_nia1_128, + &hf_xnap_T_nr_IntegrityProtectionAlgorithms_nia2_128, + &hf_xnap_T_nr_IntegrityProtectionAlgorithms_nia3_128, + NULL +}; static int dissect_xnap_T_nr_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 362 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, T_nr_IntegrityProtectionAlgorithms_bits, 4, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -8516,13 +8543,20 @@ dissect_xnap_T_nr_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U } +static const int * T_e_utra_EncyptionAlgorithms_bits[] = { + &hf_xnap_T_e_utra_EncyptionAlgorithms_spare_bit_0, + &hf_xnap_T_e_utra_EncyptionAlgorithms_eea1_128, + &hf_xnap_T_e_utra_EncyptionAlgorithms_eea2_128, + &hf_xnap_T_e_utra_EncyptionAlgorithms_eea3_128, + NULL +}; static int dissect_xnap_T_e_utra_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 376 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, T_e_utra_EncyptionAlgorithms_bits, 4, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { @@ -8541,13 +8575,20 @@ dissect_xnap_T_e_utra_EncyptionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn } +static const int * T_e_utra_IntegrityProtectionAlgorithms_bits[] = { + &hf_xnap_T_e_utra_IntegrityProtectionAlgorithms_spare_bit_0, + &hf_xnap_T_e_utra_IntegrityProtectionAlgorithms_eia1_128, + &hf_xnap_T_e_utra_IntegrityProtectionAlgorithms_eia2_128, + &hf_xnap_T_e_utra_IntegrityProtectionAlgorithms_eia3_128, + NULL +}; static int dissect_xnap_T_e_utra_IntegrityProtectionAlgorithms(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { #line 390 "./asn1/xnap/xnap.cnf" tvbuff_t *parameter_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, TRUE, ¶meter_tvb, NULL); + 16, 16, TRUE, T_e_utra_IntegrityProtectionAlgorithms_bits, 4, ¶meter_tvb, NULL); if (parameter_tvb) { const gint *fields[] = { -- cgit v1.2.3