aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVadim Yanitskiy <axilirator@gmail.com>2020-03-06 07:21:32 +0700
committerlaforge <laforge@osmocom.org>2020-03-06 21:49:04 +0000
commit2679ec0a9f2fab76c8943adfd588e558688fecc4 (patch)
treef52d38779b676bfd380637cdc0278c362ce73b02
parentf22163b1df0c97c291907646274e4f2b43aadfab (diff)
csn1: fix csnStreamDecoder(): skip bits unhandled by serialize()
This change fixes a bug that was reported by Keith Whyte and confirmed in [1]. The problem is that a user-defined handler in case of CSN_SERIALIZE may parse only a part of the given bit-stream, leaving some bits unhandled. This is expected because the sender (i.e. the MS) may use more recent RLC/MAC message definitions containing new fields at the end. Those bits that were left unhandled by serialize() shall not be interpreted as continuation of the message, they shall be skipped. Note that the encoded vector in the RLCMAC unit test still does not match the original one. That's a known bug explained in [2]. [1] If5873355d52d7ddb06c2716154a88d34100f6ab5 [2] Ic46d6e56768f516203d27d8e7a5adb77afdf32b7 Change-Id: Id4cc042fed68fc54aca0355dcb986cab3f6b49ea Related: OS#4338
-rw-r--r--src/csn1.c7
-rw-r--r--tests/rlcmac/RLCMACTest.err4
-rw-r--r--tests/rlcmac/RLCMACTest.ok4
3 files changed, 11 insertions, 4 deletions
diff --git a/src/csn1.c b/src/csn1.c
index 594e8ec0..21d3662e 100644
--- a/src/csn1.c
+++ b/src/csn1.c
@@ -571,6 +571,13 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, struct bitvec *vector
remaining_bits_len = arT.remaining_bits_len;
bit_offset = arT.bit_offset;
}
+
+ /* Skip bits not handled by serialize(), if any */
+ if (Status > 0) {
+ LOGPC(DCSN1, LOGL_NOTICE, "skipped = %d | ", Status);
+ *readIndex += Status;
+ }
+
pDescr++;
}
else
diff --git a/tests/rlcmac/RLCMACTest.err b/tests/rlcmac/RLCMACTest.err
index 89e5fb10..fdba943b 100644
--- a/tests/rlcmac/RLCMACTest.err
+++ b/tests/rlcmac/RLCMACTest.err
@@ -24,8 +24,8 @@ DCSN1 INFO csnStreamDecoder (type=2): PayloadType = 1 | spare = 0 | R = 0 | MESS
DCSN1 INFO csnStreamEncoder (type=2): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 2 | DOWNLINK_TFI = 28 | : Ack_Nack_Description | FINAL_ACK_INDICATION = 0 | STARTING_SEQUENCE_NUMBER = 1 | RECEIVED_BLOCK_BITMAP[0] = 0 | RECEIVED_BLOCK_BITMAP[1] = 0 | RECEIVED_BLOCK_BITMAP[2] = 0 | RECEIVED_BLOCK_BITMAP[3] = 0 | RECEIVED_BLOCK_BITMAP[4] = 0 | RECEIVED_BLOCK_BITMAP[5] = 0 | RECEIVED_BLOCK_BITMAP[6] = 0 | RECEIVED_BLOCK_BITMAP[7] = 1 | : End Ack_Nack_Description | Exist_Channel_Request_Description = 0 | : Channel_Quality_Report | C_VALUE = 18 | RXQUAL = 0 | SIGN_VAR = 7 | Slot[0].Exist = 0 | Slot[1].Exist = 0 | Slot[2].Exist = 0 | Slot[3].Exist = 0 | Slot[4].Exist = 0 | Slot[5].Exist = 0 | Slot[6].Exist = 0 | Slot[7].Exist = 0 | : End Channel_Quality_Report | Exist_AdditionsR99 = 0 | Padding = 3|43|43|43|43|43|43|43|43|
DCSN1 INFO csnStreamDecoder (type=5): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 5 | Exist_ACCESS_TYPE = 1 | ACCESS_TYPE = 0 | : ID | Choice PacketResourceRequestID = 1 | u.TLLI = 0xc4f70250 | : End ID | Exist_MS_Radio_Access_capability = 1 | : MS_Radio_Access_capability | MS_RA_capability_value { | Choice MS_RA_capability_value_Choice = 3 | u.Content length = 67 | offset = 4 | RF_Power_Capability = 1 | Exist_A5_bits = 0 | ES_IND = 1 | PS = 0 | VGCS = 0 | VBS = 0 | Exist_Multislot_capability = 1 | : Multislot_capability | Exist_HSCSD_multislot_class = 0 | Exist_GPRS_multislot_class = 1 | GPRS_multislot_class = 11 | GPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_SM = 0 | Exist_ECSD_multislot_class = 0 | Exist_EGPRS_multislot_class = 1 | EGPRS_multislot_class = 11 | EGPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_DTM_GPRS_multislot_class = 1 | DTM_GPRS_multislot_class = 3 | Single_Slot_DTM = 0 | : DTM_EGPRS_Params | Exist_DTM_EGPRS_multislot_class = 1 | DTM_EGPRS_multislot_class = 3 | : End DTM_EGPRS_Params | : End Multislot_capability | Exist_Eight_PSK_Power_Capability = 1 | Eight_PSK_Power_Capability = 2 | COMPACT_Interference_Measurement_Capability = 0 | Revision_Level_Indicator = 1 | UMTS_FDD_Radio_Access_Technology_Capability = 0 | UMTS_384_TDD_Radio_Access_Technology_Capability = 0 | CDMA2000_Radio_Access_Technology_Capability = 0 | UMTS_128_TDD_Radio_Access_Technology_Capability = 0 | GERAN_Feature_Package_1 = 1 | Exist_Extended_DTM_multislot_class = 0 | Modulation_based_multislot_class_support = 0 | Exist_HighMultislotCapability = 1 | HighMultislotCapability = 0 | Exist_GERAN_lu_ModeCapability = 0 | GMSK_MultislotPowerProfile = 0 | EightPSK_MultislotProfile = 0 | MultipleTBF_Capability = 0 | DownlinkAdvancedReceiverPerformance = 1 | ExtendedRLC_MAC_ControlMessageSegmentionsCapability = 1 | DTM_EnhancementsCapability = 0 | Exist_DTM_GPRS_HighMultislotClass = 1 | DTM_GPRS_HighMultislotClass = 2 | : DTM_EGPRS_HighMultislotClass | Exist_DTM_EGPRS_HighMultislotClass = 1 | DTM_EGPRS_HighMultislotClass = 2 | : End DTM_EGPRS_HighMultislotClass | PS_HandoverCapability = 0 | MS_RA_capability_value } | : End MS_Radio_Access_capability | : Channel_Request_Description | PEAK_THROUGHPUT_CLASS = 3 | RADIO_PRIORITY = 3 | RLC_MODE = 1 | LLC_PDU_TYPE = 1 | RLC_OCTET_COUNT = 0 | : End Channel_Request_Description | Exist_CHANGE_MARK = 0 | C_VALUE = 63 | Exist_SIGN_VAR = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | Exist_AdditionsR99 = 1 | : AdditionsR99 | Exist_EGPRS_BEP_LinkQualityMeasurements = 0 | Exist_EGPRS_TimeslotLinkQualityMeasurements = 0 | Exist_PFI = 0 | MS_RAC_AdditionalInformationAvailable = 1 | RetransmissionOfPRR = 0 | Exist_AdditionsR5 = 0 | : End AdditionsR99 | Padding = 43|
DCSN1 INFO csnStreamEncoder (type=5): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 5 | Exist_ACCESS_TYPE = 1 | ACCESS_TYPE = 0 | : ID | u.TLLI = 1 | u.TLLI = 3304522320 | : End ID | Exist_MS_Radio_Access_capability = 1 | : MS_Radio_Access_capability | MS_RA_capability_value { | u.Content = 3 | RF_Power_Capability = 1 | Exist_A5_bits = 0 | ES_IND = 1 | PS = 0 | VGCS = 0 | VBS = 0 | Exist_Multislot_capability = 1 | : Multislot_capability | Exist_HSCSD_multislot_class = 0 | Exist_GPRS_multislot_class = 1 | GPRS_multislot_class = 11 | GPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_SM = 0 | Exist_ECSD_multislot_class = 0 | Exist_EGPRS_multislot_class = 1 | EGPRS_multislot_class = 11 | EGPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_DTM_GPRS_multislot_class = 1 | DTM_GPRS_multislot_class = 3 | Single_Slot_DTM = 0 | : DTM_EGPRS_Params | Exist_DTM_EGPRS_multislot_class = 1 | DTM_EGPRS_multislot_class = 3 | : End DTM_EGPRS_Params | : End Multislot_capability | Exist_Eight_PSK_Power_Capability = 1 | Eight_PSK_Power_Capability = 2 | COMPACT_Interference_Measurement_Capability = 0 | Revision_Level_Indicator = 1 | UMTS_FDD_Radio_Access_Technology_Capability = 0 | UMTS_384_TDD_Radio_Access_Technology_Capability = 0 | CDMA2000_Radio_Access_Technology_Capability = 0 | UMTS_128_TDD_Radio_Access_Technology_Capability = 0 | GERAN_Feature_Package_1 = 1 | Exist_Extended_DTM_multislot_class = 0 | Modulation_based_multislot_class_support = 0 | Exist_HighMultislotCapability = 1 | HighMultislotCapability = 0 | Exist_GERAN_lu_ModeCapability = 0 | GMSK_MultislotPowerProfile = 0 | EightPSK_MultislotProfile = 0 | MultipleTBF_Capability = 0 | DownlinkAdvancedReceiverPerformance = 1 | ExtendedRLC_MAC_ControlMessageSegmentionsCapability = 1 | DTM_EnhancementsCapability = 0 | Exist_DTM_GPRS_HighMultislotClass = 1 | DTM_GPRS_HighMultislotClass = 2 | : DTM_EGPRS_HighMultislotClass | Exist_DTM_EGPRS_HighMultislotClass = 1 | DTM_EGPRS_HighMultislotClass = 2 | : End DTM_EGPRS_HighMultislotClass | PS_HandoverCapability = 0 | u.Content length = 67 | MS_RA_capability_value } | : End MS_Radio_Access_capability | : Channel_Request_Description | PEAK_THROUGHPUT_CLASS = 3 | RADIO_PRIORITY = 3 | RLC_MODE = 1 | LLC_PDU_TYPE = 1 | RLC_OCTET_COUNT = 0 | : End Channel_Request_Description | Exist_CHANGE_MARK = 0 | C_VALUE = 63 | Exist_SIGN_VAR = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | Exist_AdditionsR99 = 1 | : AdditionsR99 | Exist_EGPRS_BEP_LinkQualityMeasurements = 0 | Exist_EGPRS_TimeslotLinkQualityMeasurements = 0 | Exist_PFI = 0 | MS_RAC_AdditionalInformationAvailable = 1 | RetransmissionOfPRR = 0 | Exist_AdditionsR5 = 0 | : End AdditionsR99 | Padding = 43|
-DCSN1 INFO csnStreamDecoder (type=5): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 5 | Exist_ACCESS_TYPE = 1 | ACCESS_TYPE = 0 | : ID | Choice PacketResourceRequestID = 1 | u.TLLI = 0xcf21fc92 | : End ID | Exist_MS_Radio_Access_capability = 1 | : MS_Radio_Access_capability | MS_RA_capability_value { | Choice MS_RA_capability_value_Choice = 7 | u.Content length = 73 | offset = 4 | RF_Power_Capability = 4 | Exist_A5_bits = 0 | ES_IND = 1 | PS = 1 | VGCS = 0 | VBS = 0 | Exist_Multislot_capability = 1 | : Multislot_capability | Exist_HSCSD_multislot_class = 0 | Exist_GPRS_multislot_class = 1 | GPRS_multislot_class = 12 | GPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_SM = 0 | Exist_ECSD_multislot_class = 0 | Exist_EGPRS_multislot_class = 1 | EGPRS_multislot_class = 12 | EGPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_DTM_GPRS_multislot_class = 0 | : End Multislot_capability | Exist_Eight_PSK_Power_Capability = 1 | Eight_PSK_Power_Capability = 2 | COMPACT_Interference_Measurement_Capability = 0 | Revision_Level_Indicator = 1 | UMTS_FDD_Radio_Access_Technology_Capability = 0 | UMTS_384_TDD_Radio_Access_Technology_Capability = 0 | CDMA2000_Radio_Access_Technology_Capability = 0 | UMTS_128_TDD_Radio_Access_Technology_Capability = 0 | GERAN_Feature_Package_1 = 1 | Exist_Extended_DTM_multislot_class = 0 | Modulation_based_multislot_class_support = 0 | Exist_HighMultislotCapability = 0 | Exist_GERAN_lu_ModeCapability = 0 | GMSK_MultislotPowerProfile = 0 | EightPSK_MultislotProfile = 0 | MultipleTBF_Capability = 0 | DownlinkAdvancedReceiverPerformance = 1 | ExtendedRLC_MAC_ControlMessageSegmentionsCapability = 1 | DTM_EnhancementsCapability = 0 | Exist_DTM_GPRS_HighMultislotClass = 0 | PS_HandoverCapability = 0 | MS_RA_capability_value } | : End MS_Radio_Access_capability | : Channel_Request_Description | PEAK_THROUGHPUT_CLASS = 0 | RADIO_PRIORITY = 0 | RLC_MODE = 0 | LLC_PDU_TYPE = 0 | RLC_OCTET_COUNT = 4 | : End Channel_Request_Description | Exist_CHANGE_MARK = 1 | CHANGE_MARK = 0 | C_VALUE = 16 | Exist_SIGN_VAR = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 1 | I_LEVEL = 6 | Exist_AdditionsR99 = 1 | : AdditionsR99 | Exist_EGPRS_BEP_LinkQualityMeasurements = 1 | : EGPRS_BEP_LinkQualityMeasurements | : End EGPRS_BEP_LinkQualityMeasurements | Exist_EGPRS_TimeslotLinkQualityMeasurements = 1 | DCSN1 ERROR csnStreamDecoder: error NEED_MORE BITS TO UNPACK (-5) at EGPRS_TimeslotLinkQualityMeasurements (idx 164): End AdditionsR99 |
-DCSN1 INFO csnStreamEncoder (type=5): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 5 | Exist_ACCESS_TYPE = 1 | ACCESS_TYPE = 0 | : ID | u.TLLI = 1 | u.TLLI = 3475111058 | : End ID | Exist_MS_Radio_Access_capability = 1 | : MS_Radio_Access_capability | MS_RA_capability_value { | u.Content = 7 | RF_Power_Capability = 4 | Exist_A5_bits = 0 | ES_IND = 1 | PS = 1 | VGCS = 0 | VBS = 0 | Exist_Multislot_capability = 1 | : Multislot_capability | Exist_HSCSD_multislot_class = 0 | Exist_GPRS_multislot_class = 1 | GPRS_multislot_class = 12 | GPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_SM = 0 | Exist_ECSD_multislot_class = 0 | Exist_EGPRS_multislot_class = 1 | EGPRS_multislot_class = 12 | EGPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_DTM_GPRS_multislot_class = 0 | : End Multislot_capability | Exist_Eight_PSK_Power_Capability = 1 | Eight_PSK_Power_Capability = 2 | COMPACT_Interference_Measurement_Capability = 0 | Revision_Level_Indicator = 1 | UMTS_FDD_Radio_Access_Technology_Capability = 0 | UMTS_384_TDD_Radio_Access_Technology_Capability = 0 | CDMA2000_Radio_Access_Technology_Capability = 0 | UMTS_128_TDD_Radio_Access_Technology_Capability = 0 | GERAN_Feature_Package_1 = 1 | Exist_Extended_DTM_multislot_class = 0 | Modulation_based_multislot_class_support = 0 | Exist_HighMultislotCapability = 0 | Exist_GERAN_lu_ModeCapability = 0 | GMSK_MultislotPowerProfile = 0 | EightPSK_MultislotProfile = 0 | MultipleTBF_Capability = 0 | DownlinkAdvancedReceiverPerformance = 1 | ExtendedRLC_MAC_ControlMessageSegmentionsCapability = 1 | DTM_EnhancementsCapability = 0 | Exist_DTM_GPRS_HighMultislotClass = 0 | PS_HandoverCapability = 0 | u.Content length = 52 | MS_RA_capability_value } | : End MS_Radio_Access_capability | : Channel_Request_Description | PEAK_THROUGHPUT_CLASS = 0 | RADIO_PRIORITY = 0 | RLC_MODE = 0 | LLC_PDU_TYPE = 0 | RLC_OCTET_COUNT = 4 | : End Channel_Request_Description | Exist_CHANGE_MARK = 1 | CHANGE_MARK = 0 | C_VALUE = 16 | Exist_SIGN_VAR = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 1 | I_LEVEL = 6 | Exist_AdditionsR99 = 1 | : AdditionsR99 | Exist_EGPRS_BEP_LinkQualityMeasurements = 1 | : EGPRS_BEP_LinkQualityMeasurements | Exist_MEAN_CV_BEP_GMSK = 0 | Exist_MEAN_CV_BEP_8PSK = 0 | : End EGPRS_BEP_LinkQualityMeasurements | Exist_EGPRS_TimeslotLinkQualityMeasurements = 1 | : EGPRS_TimeslotLinkQualityMeasurements | Exist_BEP_MEASUREMENTS = 0 | Exist_INTERFERENCE_MEASUREMENTS = 0 | : End EGPRS_TimeslotLinkQualityMeasurements | Exist_PFI = 0 | MS_RAC_AdditionalInformationAvailable = 0 | RetransmissionOfPRR = 0 | Exist_AdditionsR5 = 0 | : End AdditionsR99 | Padding = 3|43|
+DCSN1 INFO csnStreamDecoder (type=5): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 5 | Exist_ACCESS_TYPE = 1 | ACCESS_TYPE = 0 | : ID | Choice PacketResourceRequestID = 1 | u.TLLI = 0xcf21fc92 | : End ID | Exist_MS_Radio_Access_capability = 1 | : MS_Radio_Access_capability | MS_RA_capability_value { | Choice MS_RA_capability_value_Choice = 7 | u.Content length = 73 | offset = 4 | RF_Power_Capability = 4 | Exist_A5_bits = 0 | ES_IND = 1 | PS = 1 | VGCS = 0 | VBS = 0 | Exist_Multislot_capability = 1 | : Multislot_capability | Exist_HSCSD_multislot_class = 0 | Exist_GPRS_multislot_class = 1 | GPRS_multislot_class = 12 | GPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_SM = 0 | Exist_ECSD_multislot_class = 0 | Exist_EGPRS_multislot_class = 1 | EGPRS_multislot_class = 12 | EGPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_DTM_GPRS_multislot_class = 0 | : End Multislot_capability | Exist_Eight_PSK_Power_Capability = 1 | Eight_PSK_Power_Capability = 2 | COMPACT_Interference_Measurement_Capability = 0 | Revision_Level_Indicator = 1 | UMTS_FDD_Radio_Access_Technology_Capability = 0 | UMTS_384_TDD_Radio_Access_Technology_Capability = 0 | CDMA2000_Radio_Access_Technology_Capability = 0 | UMTS_128_TDD_Radio_Access_Technology_Capability = 0 | GERAN_Feature_Package_1 = 1 | Exist_Extended_DTM_multislot_class = 0 | Modulation_based_multislot_class_support = 0 | Exist_HighMultislotCapability = 0 | Exist_GERAN_lu_ModeCapability = 0 | GMSK_MultislotPowerProfile = 0 | EightPSK_MultislotProfile = 0 | MultipleTBF_Capability = 0 | DownlinkAdvancedReceiverPerformance = 1 | ExtendedRLC_MAC_ControlMessageSegmentionsCapability = 1 | DTM_EnhancementsCapability = 0 | Exist_DTM_GPRS_HighMultislotClass = 0 | PS_HandoverCapability = 0 | skipped = 21 | MS_RA_capability_value } | : End MS_Radio_Access_capability | : Channel_Request_Description | PEAK_THROUGHPUT_CLASS = 9 | RADIO_PRIORITY = 0 | RLC_MODE = 0 | LLC_PDU_TYPE = 1 | RLC_OCTET_COUNT = 11 | : End Channel_Request_Description | Exist_CHANGE_MARK = 0 | C_VALUE = 60 | Exist_SIGN_VAR = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | I_LEVEL_TN | Exist = 0 | Exist_AdditionsR99 = 1 | : AdditionsR99 | Exist_EGPRS_BEP_LinkQualityMeasurements = 0 | Exist_EGPRS_TimeslotLinkQualityMeasurements = 0 | Exist_PFI = 0 | MS_RAC_AdditionalInformationAvailable = 0 | RetransmissionOfPRR = 0 | Exist_AdditionsR5 = 0 | : End AdditionsR99 | Padding = 0|
+DCSN1 INFO csnStreamEncoder (type=5): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 5 | Exist_ACCESS_TYPE = 1 | ACCESS_TYPE = 0 | : ID | u.TLLI = 1 | u.TLLI = 3475111058 | : End ID | Exist_MS_Radio_Access_capability = 1 | : MS_Radio_Access_capability | MS_RA_capability_value { | u.Content = 7 | RF_Power_Capability = 4 | Exist_A5_bits = 0 | ES_IND = 1 | PS = 1 | VGCS = 0 | VBS = 0 | Exist_Multislot_capability = 1 | : Multislot_capability | Exist_HSCSD_multislot_class = 0 | Exist_GPRS_multislot_class = 1 | GPRS_multislot_class = 12 | GPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_SM = 0 | Exist_ECSD_multislot_class = 0 | Exist_EGPRS_multislot_class = 1 | EGPRS_multislot_class = 12 | EGPRS_Extended_Dynamic_Allocation_Capability = 1 | Exist_DTM_GPRS_multislot_class = 0 | : End Multislot_capability | Exist_Eight_PSK_Power_Capability = 1 | Eight_PSK_Power_Capability = 2 | COMPACT_Interference_Measurement_Capability = 0 | Revision_Level_Indicator = 1 | UMTS_FDD_Radio_Access_Technology_Capability = 0 | UMTS_384_TDD_Radio_Access_Technology_Capability = 0 | CDMA2000_Radio_Access_Technology_Capability = 0 | UMTS_128_TDD_Radio_Access_Technology_Capability = 0 | GERAN_Feature_Package_1 = 1 | Exist_Extended_DTM_multislot_class = 0 | Modulation_based_multislot_class_support = 0 | Exist_HighMultislotCapability = 0 | Exist_GERAN_lu_ModeCapability = 0 | GMSK_MultislotPowerProfile = 0 | EightPSK_MultislotProfile = 0 | MultipleTBF_Capability = 0 | DownlinkAdvancedReceiverPerformance = 1 | ExtendedRLC_MAC_ControlMessageSegmentionsCapability = 1 | DTM_EnhancementsCapability = 0 | Exist_DTM_GPRS_HighMultislotClass = 0 | PS_HandoverCapability = 0 | u.Content length = 52 | MS_RA_capability_value } | : End MS_Radio_Access_capability | : Channel_Request_Description | PEAK_THROUGHPUT_CLASS = 9 | RADIO_PRIORITY = 0 | RLC_MODE = 0 | LLC_PDU_TYPE = 1 | RLC_OCTET_COUNT = 11 | : End Channel_Request_Description | Exist_CHANGE_MARK = 0 | C_VALUE = 60 | Exist_SIGN_VAR = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | I_LEVEL_TN : | Exist = 0 | Exist_AdditionsR99 = 1 | : AdditionsR99 | Exist_EGPRS_BEP_LinkQualityMeasurements = 0 | Exist_EGPRS_TimeslotLinkQualityMeasurements = 0 | Exist_PFI = 0 | MS_RAC_AdditionalInformationAvailable = 0 | RetransmissionOfPRR = 0 | Exist_AdditionsR5 = 0 | : End AdditionsR99 | Padding = 11|43|43|
DCSN1 INFO csnStreamDecoder (type=8): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 8 | DOWNLINK_TFI = 0 | MS_OUT_OF_MEMORY = 0 | Exist_EGPRS_ChannelQualityReport = 1 | : EGPRS_ChannelQualityReport | : EGPRS_BEP_LinkQualityMeasurements | Exist_MEAN_CV_BEP_GMSK = 1 | MEAN_BEP_GMSK = 31 | CV_BEP_GMSK = 7 | Exist_MEAN_CV_BEP_8PSK = 0 | : End EGPRS_BEP_LinkQualityMeasurements | C_VALUE = 0 | : EGPRS_TimeslotLinkQualityMeasurements | Exist_BEP_MEASUREMENTS = 0 | Exist_INTERFERENCE_MEASUREMENTS = 0 | : End EGPRS_TimeslotLinkQualityMeasurements | : End EGPRS_ChannelQualityReport | Exist_ChannelRequestDescription = 0 | Exist_PFI = 0 | Exist_ExtensionBits = 0 | : EGPRS_AckNack | Desc = 1 | : Desc | Desc length = 15 | offset = 0 | FINAL_ACK_INDICATION = 0 | BEGINNING_OF_WINDOW = 1 | END_OF_WINDOW = 1 | STARTING_SEQUENCE_NUMBER = 2 | Exist_CRBB = 0 | : End Desc | : End EGPRS_AckNack | Padding = 11|43|43|43|43|43|43|43|43|43|43|43|43|43|43|
DCSN1 INFO csnStreamEncoder (type=8): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 8 | DOWNLINK_TFI = 0 | MS_OUT_OF_MEMORY = 0 | Exist_EGPRS_ChannelQualityReport = 1 | : EGPRS_ChannelQualityReport | : EGPRS_BEP_LinkQualityMeasurements | Exist_MEAN_CV_BEP_GMSK = 1 | MEAN_BEP_GMSK = 31 | CV_BEP_GMSK = 7 | Exist_MEAN_CV_BEP_8PSK = 0 | : End EGPRS_BEP_LinkQualityMeasurements | C_VALUE = 0 | : EGPRS_TimeslotLinkQualityMeasurements | Exist_BEP_MEASUREMENTS = 0 | Exist_INTERFERENCE_MEASUREMENTS = 0 | : End EGPRS_TimeslotLinkQualityMeasurements | : End EGPRS_ChannelQualityReport | Exist_ChannelRequestDescription = 0 | Exist_PFI = 0 | Exist_ExtensionBits = 0 | : EGPRS_AckNack | Desc = 1 | : Desc | FINAL_ACK_INDICATION = 0 | BEGINNING_OF_WINDOW = 1 | END_OF_WINDOW = 1 | STARTING_SEQUENCE_NUMBER = 2 | Exist_CRBB = 0 | Desc length = 15 | : End Desc | : End EGPRS_AckNack | Padding = 11|43|43|43|43|43|43|43|43|43|43|43|43|43|43|
DCSN1 INFO csnStreamDecoder (type=2): PayloadType = 1 | spare = 0 | R = 0 | MESSAGE_TYPE = 2 | DOWNLINK_TFI = 20 | : Ack_Nack_Description | FINAL_ACK_INDICATION = 1 | STARTING_SEQUENCE_NUMBER = 1 | RECEIVED_BLOCK_BITMAP[0] = 0 | RECEIVED_BLOCK_BITMAP[1] = 0 | RECEIVED_BLOCK_BITMAP[2] = 0 | RECEIVED_BLOCK_BITMAP[3] = 0 | RECEIVED_BLOCK_BITMAP[4] = 0 | RECEIVED_BLOCK_BITMAP[5] = 0 | RECEIVED_BLOCK_BITMAP[6] = 0 | RECEIVED_BLOCK_BITMAP[7] = 1 | : End Ack_Nack_Description | Exist_Channel_Request_Description = 1 | : Channel_Request_Description | PEAK_THROUGHPUT_CLASS = 0 | RADIO_PRIORITY = 0 | RLC_MODE = 0 | LLC_PDU_TYPE = 1 | RLC_OCTET_COUNT = 18 | : End Channel_Request_Description | : Channel_Quality_Report | C_VALUE = 40 | RXQUAL = 1 | SIGN_VAR = 0 | Slot[0].Exist = 0 | Slot[1].Exist = 0 | Slot[2].Exist = 0 | Slot[3].Exist = 0 | Slot[4].Exist = 0 | Slot[5].Exist = 0 | Slot[6].Exist = 0 | Slot[7].Exist = 0 | : End Channel_Quality_Report | Exist_AdditionsR99 = 1 | : AdditionsR99 | Exist_PFI = 0 | : End AdditionsR99 | Padding = 3|43|43|43|43|43|
diff --git a/tests/rlcmac/RLCMACTest.ok b/tests/rlcmac/RLCMACTest.ok
index c44ad6a7..fdf4ff0b 100644
--- a/tests/rlcmac/RLCMACTest.ok
+++ b/tests/rlcmac/RLCMACTest.ok
@@ -108,11 +108,11 @@ vector2 = 40 16 71 3d c0 94 27 0c a2 ae 57 ef 90 90 06 aa 0f c0 00 1f 80 22 2b
vector1 == vector2 : TRUE
vector1 = 401673c87f24af2632b25964200600000091000b780080
=========Start DECODE===========
-+++++++++Finish DECODE (-5)++++++++++
++++++++++Finish DECODE (0)++++++++++
=========Start ENCODE=============
+++++++++Finish ENCODE (0)+++++++++++
vector1 = 40 16 73 c8 7f 24 af 26 32 b2 59 64 20 06 00 00 00 91 00 0b 78 00 80
-vector2 = 40 16 73 c8 7f 24 ae d2 32 b2 59 64 20 06 00 00 00 91 00 0b 64 03 2b
+vector2 = 40 16 73 c8 7f 24 ae d2 32 b2 59 64 20 06 12 20 01 6f 00 10 0b 2b 2b
vector1 == vector2 : FALSE
vector1 = 40200ffc0021ec010b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
=========Start DECODE===========