forked from osmocom/wireshark
LTE RRC: upgrade dissector to v12.3.0
Change-Id: Iac974bf505bed270fc1f9409a7d61c80ebca17a5 Reviewed-on: https://code.wireshark.org/review/5691 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
This commit is contained in:
parent
4921e55990
commit
34cd063ae8
|
@ -1,4 +1,4 @@
|
|||
-- 3GPP TS 36.331 V11.8.0 (2014-06)
|
||||
-- 3GPP TS 36.331 V12.3.0 (2014-09)
|
||||
--
|
||||
EUTRA-InterNodeDefinitions DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
|
@ -8,6 +8,7 @@ IMPORTS
|
|||
AntennaInfoCommon,
|
||||
ARFCN-ValueEUTRA,
|
||||
ARFCN-ValueEUTRA-v9e0,
|
||||
ARFCN-ValueEUTRA-r9,
|
||||
CellIdentity,
|
||||
C-RNTI,
|
||||
DL-DCCH-Message,
|
||||
|
@ -29,7 +30,9 @@ IMPORTS
|
|||
SystemInformationBlockType2,
|
||||
UEAssistanceInformation-r11,
|
||||
UECapabilityInformation,
|
||||
UE-CapabilityRAT-ContainerList
|
||||
UE-CapabilityRAT-ContainerList,
|
||||
UE-RadioPagingInfo-r12,
|
||||
WLAN-OffloadConfig-r12
|
||||
FROM EUTRA-RRC-Definitions;
|
||||
|
||||
|
||||
|
@ -90,6 +93,12 @@ HandoverPreparationInformation-v9e0-IEs ::= SEQUENCE {
|
|||
|
||||
HandoverPreparationInformation-v1130-IEs ::= SEQUENCE {
|
||||
as-Context-v1130 AS-Context-v1130 OPTIONAL, -- Cond HO2
|
||||
nonCriticalExtension HandoverPreparationInformation-v12xy-IEs OPTIONAL
|
||||
}
|
||||
|
||||
HandoverPreparationInformation-v12xy-IEs ::= SEQUENCE {
|
||||
ue-SupportedEARFCN-r12 ARFCN-ValueEUTRA-r9 OPTIONAL, -- Cond HO3
|
||||
as-Config-v12xy AS-Config-v12xy OPTIONAL, -- Cond HO2
|
||||
nonCriticalExtension SEQUENCE {} OPTIONAL
|
||||
}
|
||||
|
||||
|
@ -113,6 +122,24 @@ UERadioAccessCapabilityInformation-r8-IEs ::= SEQUENCE {
|
|||
}
|
||||
|
||||
|
||||
UERadioPagingInformation ::= SEQUENCE {
|
||||
criticalExtensions CHOICE {
|
||||
c1 CHOICE{
|
||||
ueRadioPagingInformation-r12 UERadioPagingInformation-r12-IEs,
|
||||
spare7 NULL,
|
||||
spare6 NULL, spare5 NULL, spare4 NULL,
|
||||
spare3 NULL, spare2 NULL, spare1 NULL
|
||||
},
|
||||
criticalExtensionsFuture SEQUENCE {}
|
||||
}
|
||||
}
|
||||
|
||||
UERadioPagingInformation-r12-IEs ::= SEQUENCE {
|
||||
ue-RadioPagingInfo-r12 OCTET STRING (CONTAINING UE-RadioPagingInfo-r12),
|
||||
nonCriticalExtension SEQUENCE {} OPTIONAL
|
||||
}
|
||||
|
||||
|
||||
AS-Config ::= SEQUENCE {
|
||||
sourceMeasConfig MeasConfig,
|
||||
sourceRadioResourceConfig RadioResourceConfigDedicated,
|
||||
|
@ -140,6 +167,10 @@ AS-Config-v9e0 ::= SEQUENCE {
|
|||
sourceDl-CarrierFreq-v9e0 ARFCN-ValueEUTRA-v9e0
|
||||
}
|
||||
|
||||
AS-Config-v12xy ::= SEQUENCE {
|
||||
sourceWlan-OffloadConfig-r12 WLAN-OffloadConfig-r12 OPTIONAL
|
||||
}
|
||||
|
||||
|
||||
AS-Context ::= SEQUENCE {
|
||||
reestablishmentInfo ReestablishmentInfo OPTIONAL -- Cond HO
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,4 +1,4 @@
|
|||
-- 3GPP TS 36.331 V11.8.0 (2014-06)
|
||||
-- 3GPP TS 36.331 V12.3.0 (2014-09)
|
||||
--
|
||||
EUTRA-UE-Variables DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
|
@ -33,7 +33,9 @@ IMPORTS
|
|||
ReportConfigToAddModList,
|
||||
RLF-Report-r9,
|
||||
RSRP-Range,
|
||||
TargetMBSFN-AreaList-r12,
|
||||
TraceReference-r10,
|
||||
VisitedCellInfoList-r12,
|
||||
maxCellMeas,
|
||||
maxMeasId
|
||||
FROM EUTRA-RRC-Definitions;
|
||||
|
@ -58,6 +60,14 @@ VarLogMeasConfig-r11 ::= SEQUENCE {
|
|||
loggingInterval-r10 LoggingInterval-r10
|
||||
}
|
||||
|
||||
VarLogMeasConfig-r12 ::= SEQUENCE {
|
||||
areaConfiguration-r10 AreaConfiguration-r10 OPTIONAL,
|
||||
areaConfiguration-v1130 AreaConfiguration-v1130 OPTIONAL,
|
||||
loggingDuration-r10 LoggingDuration-r10,
|
||||
loggingInterval-r10 LoggingInterval-r10,
|
||||
targetMBSFN-AreaList-r12 TargetMBSFN-AreaList-r12 OPTIONAL
|
||||
}
|
||||
|
||||
|
||||
VarLogMeasReport-r10 ::= SEQUENCE {
|
||||
traceReference-r10 TraceReference-r10,
|
||||
|
@ -122,6 +132,8 @@ CellsTriggeredList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF CHOICE {
|
|||
},
|
||||
physCellIdCDMA2000 PhysCellIdCDMA2000
|
||||
}
|
||||
VarMobilityHistoryReport-r12 ::= VisitedCellInfoList-r12
|
||||
|
||||
|
||||
VarRLF-Report-r10 ::= SEQUENCE {
|
||||
rlf-Report-r10 RLF-Report-r9,
|
||||
|
|
|
@ -16,6 +16,7 @@ SupportedBandUTRA-FDD
|
|||
T-PollRetransmit
|
||||
T-Reordering
|
||||
T-StatusProhibit
|
||||
WLAN-backhaulRate
|
||||
|
||||
#.EXPORTS
|
||||
HandoverCommand
|
||||
|
@ -59,6 +60,10 @@ VarRLF-Report-r10
|
|||
VarLogMeasConfig-r11
|
||||
VarLogMeasReport-r11
|
||||
VarRLF-Report-r11
|
||||
VarLogMeasConfig-r12
|
||||
VarMobilityHistoryReport-r12
|
||||
UERadioPagingInformation
|
||||
UERadioPagingInformation-r12-IEs
|
||||
|
||||
#.MAKE_ENUM
|
||||
RAT-Type TYPE_PREFIX
|
||||
|
@ -232,6 +237,16 @@ if(ue_cap_tvb){
|
|||
proto_tree_add_bits_item(subtree, hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2, inter_band_tdd_ca_tvb, 1, 1, ENC_BIG_ENDIAN);
|
||||
}
|
||||
|
||||
#.FN_BODY PhyLayerParameters-v12xy/tdd-FDD-CA-PCellDuplex-r12 VAL_PTR = &pcellduplex_tvb
|
||||
tvbuff_t *pcellduplex_tvb=NULL;
|
||||
proto_tree *subtree;
|
||||
%(DEFAULT_BODY)s
|
||||
if (pcellduplex_tvb) {
|
||||
subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12);
|
||||
proto_tree_add_bits_item(subtree, hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1, pcellduplex_tvb, 0, 1, ENC_BIG_ENDIAN);
|
||||
proto_tree_add_bits_item(subtree, hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2, pcellduplex_tvb, 1, 1, ENC_BIG_ENDIAN);
|
||||
}
|
||||
|
||||
#.FN_BODY Handover
|
||||
/* Initialise to invalid value */
|
||||
private_data_set_rat_target_type(actx, 0xFF);
|
||||
|
@ -691,6 +706,21 @@ SystemInformationBlockType16-r11/timeInfo-r11/timeInfoUTC-r11 TYPE = FT_UINT64
|
|||
proto_tree_add_time(subtree, hf_lte_rrc_utc_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts);
|
||||
proto_tree_add_time(subtree, hf_lte_rrc_local_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts);
|
||||
|
||||
#.TYPE_ATTR
|
||||
WLAN-Id-r12/wlan-Identifiers/ssid TYPE=FT_STRING DISPLAY=STR_ASCII
|
||||
|
||||
#.FN_BODY WLAN-Id-r12/wlan-Identifiers/ssid VAL_PTR=&ssid_tvb HF_INDEX=-1
|
||||
tvbuff_t *ssid_tvb = NULL;
|
||||
|
||||
%(DEFAULT_BODY)s
|
||||
actx->created_item = proto_tree_add_item(tree, hf_index, ssid_tvb, 0, -1, ENC_ASCII|ENC_NA);
|
||||
|
||||
#.TYPE_ATTR
|
||||
WLAN-Id-r12/wlan-Identifiers/bssid TYPE=FT_ETHER
|
||||
|
||||
#.TYPE_ATTR
|
||||
WLAN-Id-r12/wlan-Identifiers/hessid TYPE=FT_ETHER
|
||||
|
||||
#.FN_BODY RRCConnectionReject-r8-IEs/waitTime
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "s");
|
||||
|
@ -813,6 +843,14 @@ CQI-ReportConfigSCell-r10/nomPDSCH-RS-EPRE-Offset-r10 STRINGS=VALS(lte_rrc_nomPD
|
|||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dB");
|
||||
|
||||
#.FN_BODY SPS-ConfigUL/setup/eag_1/p0-Persistent-SubframeSet2-r12/p0-NominalPUSCH-Persistent-SubframeSet2-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dBm");
|
||||
|
||||
#.FN_BODY SPS-ConfigUL/setup/eag_1/p0-Persistent-SubframeSet2-r12/p0-UE-PUSCH-Persistent-SubframeSet2-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dB");
|
||||
|
||||
#.TYPE_ATTR
|
||||
UplinkPowerControlCommon/deltaPreambleMsg3 STRINGS=VALS(lte_rrc_deltaPreambleMsg3_vals)
|
||||
|
||||
|
@ -839,6 +877,14 @@ UplinkPowerControlCommonSCell-v11x0/deltaPreambleMsg3-r11 STRINGS=VALS(lte_rrc_d
|
|||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dB");
|
||||
|
||||
#.FN_BODY UplinkPowerControlDedicated-v12x0/set2PowerControlParameter/setup/p0-NominalPUSCH-SubframeSet2-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dBm");
|
||||
|
||||
#.FN_BODY UplinkPowerControlDedicated-v12x0/set2PowerControlParameter/setup/p0-UE-PUSCH-SubframeSet2-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dB");
|
||||
|
||||
#.FN_BODY UplinkPowerControlDedicatedSCell-r10/p0-UE-PUSCH-r10
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dB");
|
||||
|
@ -1009,6 +1055,10 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(<e_rrc_duration_val)
|
|||
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "SIB16 ");
|
||||
|
||||
#.FN_HDR SystemInformationBlockType17-r12
|
||||
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "SIB17 ");
|
||||
|
||||
#.FN_HDR MBSFNAreaConfiguration-r9
|
||||
|
||||
col_append_str(actx->pinfo->cinfo, COL_INFO, "MBSFNAreaConfiguration-r9");
|
||||
|
@ -1250,15 +1300,22 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(<e_rrc_duration_val)
|
|||
set_mac_lte_channel_mapping(drb_mapping);
|
||||
}
|
||||
|
||||
/* Also tell RLC how many PDCP sequence number bits */
|
||||
if (drb_mapping->pdcp_sn_size_present) {
|
||||
p_rlc_lte_info = (rlc_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_rlc_lte, 0);
|
||||
if (p_rlc_lte_info) {
|
||||
/* Also tell RLC how many PDCP sequence number bits and wether it should use extended LI */
|
||||
p_rlc_lte_info = (rlc_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_rlc_lte, 0);
|
||||
if (p_rlc_lte_info) {
|
||||
if (drb_mapping->pdcp_sn_size_present) {
|
||||
set_rlc_lte_drb_pdcp_seqnum_length(actx->pinfo,
|
||||
p_rlc_lte_info->ueid,
|
||||
drb_mapping->drbid,
|
||||
drb_mapping->pdcp_sn_size);
|
||||
}
|
||||
if (drb_mapping->rlcMode_present) {
|
||||
set_rlc_lte_drb_li_field(actx->pinfo,
|
||||
p_rlc_lte_info->ueid,
|
||||
drb_mapping->drbid,
|
||||
drb_mapping->rlc_ul_ext_li_field,
|
||||
drb_mapping->rlc_dl_ext_li_field);
|
||||
}
|
||||
}
|
||||
|
||||
/* Clear out the struct again */
|
||||
|
@ -1287,6 +1344,22 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(<e_rrc_duration_val)
|
|||
}
|
||||
}
|
||||
|
||||
#.FN_BODY UL-AM-RLC-r12/extended-RLC-LI-Field-r12 VAL_PTR=&ext_li_field
|
||||
gboolean ext_li_field;
|
||||
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
|
||||
%(DEFAULT_BODY)s
|
||||
if (mapping != NULL) {
|
||||
mapping->rlc_ul_ext_li_field = ext_li_field;
|
||||
}
|
||||
|
||||
#.FN_BODY DL-AM-RLC-r12/extended-RLC-LI-Field-r12 VAL_PTR=&ext_li_field
|
||||
gboolean ext_li_field;
|
||||
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
|
||||
%(DEFAULT_BODY)s
|
||||
if (mapping != NULL) {
|
||||
mapping->rlc_dl_ext_li_field = ext_li_field;
|
||||
}
|
||||
|
||||
#.FN_BODY DRB-ToAddMod/logicalChannelIdentity VAL_PTR=&value
|
||||
guint32 value;
|
||||
drb_mapping_t *mapping = private_data_get_drb_mapping(actx);
|
||||
|
@ -1361,6 +1434,9 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(<e_rrc_duration_val)
|
|||
/* Reset again */
|
||||
private_data_set_ra_preambles(actx, 0);
|
||||
|
||||
#.FN_BODY RACH-ConfigCommon-v12xy/txFailParams-r12/connEstFailOffset-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "dB");
|
||||
|
||||
#.FN_BODY DRX-Config/setup/onDurationTimer VAL_PTR=&value
|
||||
guint32 value;
|
||||
|
@ -1645,3 +1721,18 @@ SoundingRS-UL-ConfigDedicated/setup/duration STRINGS=TFS(<e_rrc_duration_val)
|
|||
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [cause=%%s]",
|
||||
val_to_str(value, lte_rrc_ReleaseCause_vals, "Unknown"));
|
||||
|
||||
#.FN_BODY VisitedCellInfo-r12/timeSpent-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, "s");
|
||||
|
||||
#.FN_BODY WLAN-OffloadConfig-r12/thresholdChannelUtilization-r12/thresholdChannelUtilizationLow-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, " (BSS load)");
|
||||
|
||||
#.FN_BODY WLAN-OffloadConfig-r12/thresholdChannelUtilization-r12/thresholdChannelUtilizationHigh-r12
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, " (BSS load)");
|
||||
|
||||
#.FN_BODY WLAN-backhaulRate
|
||||
%(DEFAULT_BODY)s
|
||||
proto_item_append_text(actx->created_item, " Kbps");
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/* packet-lte-rrc-template.c
|
||||
* Routines for Evolved Universal Terrestrial Radio Access (E-UTRA);
|
||||
* Radio Resource Control (RRC) protocol specification
|
||||
* (3GPP TS 36.331 V11.8.0 Release 11) packet dissection
|
||||
* (3GPP TS 36.331 V12.3.0 Release 12) packet dissection
|
||||
* Copyright 2008, Vincent Helfre
|
||||
* Copyright 2009-2014, Pascal Quantin
|
||||
*
|
||||
|
@ -188,6 +188,8 @@ static int hf_lte_rrc_warningMessageSegment_nb_pages = -1;
|
|||
static int hf_lte_rrc_warningMessageSegment_decoded_page = -1;
|
||||
static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1 = -1;
|
||||
static int hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2 = -1;
|
||||
static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1 = -1;
|
||||
static int hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2 = -1;
|
||||
static int hf_lte_rrc_sr_config_periodicity = -1;
|
||||
static int hf_lte_rrc_sr_config_subframe_offset = -1;
|
||||
static int hf_lte_rrc_cdma_time = -1;
|
||||
|
@ -214,6 +216,7 @@ static gint ett_lte_rrc_warningType = -1;
|
|||
static gint ett_lte_rrc_dataCodingScheme = -1;
|
||||
static gint ett_lte_rrc_warningMessageSegment = -1;
|
||||
static gint ett_lte_rrc_interBandTDD_CA_WithDifferentConfig = -1;
|
||||
static gint ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12 = -1;
|
||||
static gint ett_lte_rrc_sr_ConfigIndex = -1;
|
||||
|
||||
static expert_field ei_lte_rrc_number_pages_le15 = EI_INIT;
|
||||
|
@ -1828,6 +1831,16 @@ static const true_false_string lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2_
|
|||
"SCell DL subframes are neither superset nor subset of PCell by SIB1 configuration - Not supported",
|
||||
};
|
||||
|
||||
static const true_false_string lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1_val = {
|
||||
"TDD PCell - Supported",
|
||||
"TDD PCell - Not supported"
|
||||
};
|
||||
|
||||
static const true_false_string lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2_val = {
|
||||
"FDD PCell - Supported",
|
||||
"FDD PCell - Not supported"
|
||||
};
|
||||
|
||||
/*****************************************************************************/
|
||||
/* Packet private data */
|
||||
/* For this dissector, all access to actx->private_data should be made */
|
||||
|
@ -2876,6 +2889,14 @@ void proto_register_lte_rrc(void) {
|
|||
{ "Bit 2", "lte-rrc.interBandTDD_CA_WithDifferentConfig.bit2",
|
||||
FT_BOOLEAN, BASE_NONE, TFS(<e_rrc_interBandTDD_CA_WithDifferentConfig_bit2_val), 0,
|
||||
NULL, HFILL }},
|
||||
{ &hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1,
|
||||
{ "Bit 1", "lte-rrc.tdd_FDD_CA_PCellDuplex_r12.bit1",
|
||||
FT_BOOLEAN, BASE_NONE, TFS(<e_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1_val), 0,
|
||||
NULL, HFILL }},
|
||||
{ &hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2,
|
||||
{ "Bit 2", "lte-rrc.tdd_FDD_CA_PCellDuplex_r12.bit2",
|
||||
FT_BOOLEAN, BASE_NONE, TFS(<e_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2_val), 0,
|
||||
NULL, HFILL }},
|
||||
{ &hf_lte_rrc_sr_config_periodicity,
|
||||
{ "Periodicity", "lte-rrc.sr_Periodicity",
|
||||
FT_UINT16, BASE_DEC, NULL, 0x0,
|
||||
|
@ -2921,6 +2942,7 @@ void proto_register_lte_rrc(void) {
|
|||
&ett_lte_rrc_dataCodingScheme,
|
||||
&ett_lte_rrc_warningMessageSegment,
|
||||
&ett_lte_rrc_interBandTDD_CA_WithDifferentConfig,
|
||||
&ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12,
|
||||
&ett_lte_rrc_sr_ConfigIndex
|
||||
};
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue