diff options
author | Aravind Sirsikar <Arvind.Sirsikar@radisys.com> | 2016-08-30 13:20:23 +0530 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2016-09-14 01:26:33 +0000 |
commit | 9f5f008aedc910ff0ce18bf3f92b9b74f0438bf8 (patch) | |
tree | 80f8c41dd41e76c1cd3326b061e94092c4f93109 /src/csn1.cpp | |
parent | 8d2d9e89850e961affc998e984c3fc6ac7b8f7b1 (diff) |
CSN1 decoding: add test to show bug in CSN_LEFT_ALIGNED_VAR_BMP
CSN1 decoding currently contains an attempted read past vector boundaries in
case of a starting bit offset != 0, so that the last amount of bits read should
be < 8. In the case of CSN_LEFT_ALIGNED_VAR_BMP, the mod-8 calculation is
flawed, and in what should be the final step of reading n < 8 bits, 8 bits are
read instead of n (with an extraneous read of n bits following after that).
This leads to -EINVAL being returned by bitvec_get_bit_pos() and bogus
resulting data.
Add testCsnLeftAlignedVarBmpBounds() in RLCMACTest.cpp to show and expect this
bug. The test's expectation shall be corrected along with the bug fix in a
subsequent commit.
Related: OS#1805
Tweaked-by: Neels Hofmeyr <nhofmeyr@sysmocom.de>
Change-Id: I4641f5d1d49f66cb1a5cd813befb3a2a266001b0
Diffstat (limited to 'src/csn1.cpp')
0 files changed, 0 insertions, 0 deletions