From 0df80be95e3604656ff36024f793ef3c36455051 Mon Sep 17 00:00:00 2001 From: Jacob Erlbeck Date: Wed, 20 Jan 2016 12:14:55 +0100 Subject: rlc: Add decode_gsm_ra_cap to decode Radio Access Caps This uses the CSN.1 decoder to fully parse the radio access capabilities as defined by TS 24.008, 10.5.5.12a. Sponsored-by: On-Waves ehf --- src/gsm_rlcmac.cpp | 8 ++++++++ src/gsm_rlcmac.h | 1 + 2 files changed, 9 insertions(+) diff --git a/src/gsm_rlcmac.cpp b/src/gsm_rlcmac.cpp index 44bc5e13..6b43aa6d 100644 --- a/src/gsm_rlcmac.cpp +++ b/src/gsm_rlcmac.cpp @@ -5509,3 +5509,11 @@ void encode_gsm_rlcmac_downlink_data(bitvec * vector, RlcMacDownlinkDataBlock_t LOGPC(DRLCMACDATA, LOGL_NOTICE, "\n"); } } + +void decode_gsm_ra_cap(bitvec * vector, MS_Radio_Access_capability_t *data) +{ + csnStream_t ar; + unsigned readIndex = 0; + csnStreamInit(&ar, 0, 8 * vector->data_len); + /*ret =*/ csnStreamDecoder(&ar, CSNDESCR(MS_Radio_Access_capability_t), vector, readIndex, data); +} diff --git a/src/gsm_rlcmac.h b/src/gsm_rlcmac.h index 49c596dc..8f4039c5 100644 --- a/src/gsm_rlcmac.h +++ b/src/gsm_rlcmac.h @@ -5136,4 +5136,5 @@ typedef struct void encode_gsm_rlcmac_uplink(bitvec * vector, RlcMacUplink_t * data); void decode_gsm_rlcmac_uplink_data(bitvec * vector, RlcMacUplinkDataBlock_t * data); void encode_gsm_rlcmac_downlink_data(bitvec * vector, RlcMacDownlinkDataBlock_t * data); + void decode_gsm_ra_cap(bitvec * vector, MS_Radio_Access_capability_t * data); #endif /* __PACKET_GSM_RLCMAC_H__ */ -- cgit v1.2.3