diff options
author | Sylvain Munaut <tnt@246tNt.com> | 2011-09-01 22:05:29 +0200 |
---|---|---|
committer | Sylvain Munaut <tnt@246tNt.com> | 2011-09-01 22:05:29 +0200 |
commit | 71fd42fedea933f8e93c625435c3835ccfe4c0a1 (patch) | |
tree | d44c5837ba83c363f061e8cae2bfa054026727de /libosmovty.pc.in | |
parent | ab7c9c766be31f1b79b3723826de1146ac553eb5 (diff) |
gsm/gsm48_ie: Fix Range 256 format decoding
From the mail:
---
appended is another patch for fixing a bug in the calculation of the
frequency lists. This time the patch is for the "Range 256 format".
The problem is that the operand for the "smod" operation might be
negative, in this case the simplified version won't work as expected.
In the patch I introduced a separate function for "smod" which takes
care of the sign. I have not yet checked if the other formats are also
affected, this would be the case if the "smod" operand can be negative.
There might be other solutions to fix the problem without the need
for a separate function, however I have not thought further about it.
A test vector is the following frequency list ("Range 256 format",
first byte is the length):
09 8b 1c 83 8c 15 ef 02 2d 30
The correct ARFCNs are
569 571 576 578 586 608 712 715 719
The uncorrected version would instead return:
444 457 460 464 569 576 578 586 608
This means four ARFCNs are wrong which will cause problems if for
example the frequency list contains the ARFCNs for hopping.
----
Written-by: Dieter Spaar <spaar@mirider.augusta.de>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
Diffstat (limited to 'libosmovty.pc.in')
0 files changed, 0 insertions, 0 deletions