This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/21124 ) Change subject: RLCMAC_EncDec: Implement decoding of Egprs Dl Data block HeaderType 2 and 1 ...................................................................... RLCMAC_EncDec: Implement decoding of Egprs Dl Data block HeaderType 2 and 1 Change-Id: I3b8199711e08bc128821e02c626ded1bc6aa30d7 --- M library/RLCMAC_EncDec.cc 1 file changed, 41 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/24/21124/1 diff --git a/library/RLCMAC_EncDec.cc b/library/RLCMAC_EncDec.cc index 16291de..ac60b37 100644 --- a/library/RLCMAC_EncDec.cc +++ b/library/RLCMAC_EncDec.cc @@ -207,17 +207,23 @@ return CodingScheme::MCS__3; case 49: return CodingScheme::MCS__4; + case 60: /* fall through */ case 61: return CodingScheme::MCS__5; + case 78: /* fall through */ case 79: return CodingScheme::MCS__6; + case 118: /* fall through */ case 119: return CodingScheme::MCS__7; - case 142: + case 142: /* fall through */ + case 143: return CodingScheme::MCS__8; + case 154: /* fall through */ case 155: return CodingScheme::MCS__9; default: + fprintf(stderr, "ERROR: Unknown CodingSCheme for payload_len=%zu\n", payload_len); return CodingScheme::CS__1; } } @@ -520,20 +526,52 @@ static EgprsDlMacDataHeader dec__EgprsDlMacDataHeader_type1(const OCTETSTRING& stream) { + TTCN_Buffer ttcn_buffer(stream); EgprsDlMacDataHeader ret_val; + const struct gprs_rlc_dl_header_egprs_1 *egprs1; + uint8_t tmp; - fprintf(stderr, "FIXME: Not implemented! %s (%s:%u)\n", __func__, __FILE__, __LINE__); + egprs1 = static_cast<const struct gprs_rlc_dl_header_egprs_1 *> + ((const void *)ttcn_buffer.get_data()); + ret_val.header__type() = EgprsHeaderType::RLCMAC__HDR__TYPE__1; + ret_val.tfi() = egprs1->tfi_lo << 1 | egprs1->tfi_hi << 0; + ret_val.rrbp() = egprs1->rrbp; + tmp = egprs1->es_p; + ret_val.esp() = BITSTRING(2, &tmp); + ret_val.usf() = egprs1->usf; + ret_val.bsn1() = egprs1->bsn1_lo << 10 | egprs1->bsn1_mid << 2 | egprs1->bsn1_hi; + ret_val.bsn2__offset() = egprs1->bsn2_lo << 7 | egprs1->bsn2_hi; + ret_val.pr() = egprs1->pr; + ret_val.cps() = egprs1->cps; + + ttcn_buffer.increase_pos(sizeof(*egprs1)); return ret_val; } static EgprsDlMacDataHeader dec__EgprsDlMacDataHeader_type2(const OCTETSTRING& stream) { + TTCN_Buffer ttcn_buffer(stream); EgprsDlMacDataHeader ret_val; + const struct gprs_rlc_dl_header_egprs_2 *egprs2; + uint8_t tmp; - fprintf(stderr, "FIXME: Not implemented! %s (%s:%u)\n", __func__, __FILE__, __LINE__); + egprs2 = static_cast<const struct gprs_rlc_dl_header_egprs_2 *> + ((const void *)ttcn_buffer.get_data()); + ret_val.header__type() = EgprsHeaderType::RLCMAC__HDR__TYPE__2; + ret_val.tfi() = egprs2->tfi_lo << 1 | egprs2->tfi_hi << 0; + ret_val.rrbp() = egprs2->rrbp; + tmp = egprs2->es_p; + ret_val.esp() = BITSTRING(2, &tmp); + ret_val.usf() = egprs2->usf; + ret_val.bsn1() = egprs2->bsn1_lo << 10 | egprs2->bsn1_mid << 2 | egprs2->bsn1_hi; + ret_val.bsn2__offset() = 0; /*TODO: mark optional and not set ? */ + ret_val.pr() = egprs2->pr; + ret_val.cps() = egprs2->cps; + + ttcn_buffer.increase_pos(sizeof(*egprs2)); return ret_val; } -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/21124 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I3b8199711e08bc128821e02c626ded1bc6aa30d7 Gerrit-Change-Number: 21124 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20201112/3214cceb/attachment.htm>