RLCMAC: Fix decoding of dl data block with no llc block header byte
The value was marked as unbound while it should be marked as omitted:
"""
dl_block := { data := { cs := CS_1 (0), mac_hdr := { mac_hdr := { payload_type := MAC_PT_RLC_DATA (0), rrbp := RRBP_Nplus13_mod_2715648 (0), rrbp_valid := false, usf := 7 }, hdr_ext := { pr := PWR_RED_0_to_3dB (0), spare := '0'B, tfi := 0, fbi := false, bsn := 0, e := true } }, blocks := { { hdr := <unbound>, payload := '0D0C8653110FFEF072972C5A790C0317299753B5'O } } } } }
"""
Change-Id: If00338729ee1b2c8a4e100495e7cfa0599a4cb8b
diff --git a/library/RLCMAC_EncDec.cc b/library/RLCMAC_EncDec.cc
index ac60b37..ac22def 100644
--- a/library/RLCMAC_EncDec.cc
+++ b/library/RLCMAC_EncDec.cc
@@ -505,6 +505,7 @@
/* LI not present: The Upper Layer PDU that starts with the current RLC data block either
* fills the current RLC data block precisely or continues in the following in-sequence RLC
* data block */
+ lb.hdr() = OMIT_VALUE;
lb.payload() = OCTETSTRING(length, ttcn_buffer.get_read_data());
ttcn_buffer.increase_pos(length);
ret_val.blocks()[0] = lb;
@@ -663,6 +664,7 @@
/* LI not present: The Upper Layer PDU that starts with the current RLC data block either
* fills the current RLC data block precisely or continues in the following in-sequence RLC
* data block */
+ lb.hdr() = OMIT_VALUE;
lb.payload() = OCTETSTRING(length, ttcn_buffer.get_read_data());
aligned_buffer.increase_pos(length);
ret_val.blocks()[0] = lb;
@@ -792,6 +794,7 @@
/* LI not present: The Upper Layer PDU that starts with the current RLC data block either
* fills the current RLC data block precisely or continues in the following in-sequence RLC
* data block */
+ lb.hdr() = OMIT_VALUE;
lb.payload() = OCTETSTRING(length, ttcn_buffer.get_read_data());
ttcn_buffer.increase_pos(length);
ret_val.blocks()[0] = lb;
@@ -945,6 +948,7 @@
/* LI not present: The Upper Layer PDU that starts with the current RLC data block either
* fills the current RLC data block precisely or continues in the following in-sequence RLC
* data block */
+ lb.hdr() = OMIT_VALUE;
lb.payload() = OCTETSTRING(length, aligned_buffer.get_read_data());
aligned_buffer.increase_pos(length);
ret_val.blocks()[0] = lb;