Hi list,
I've noted a subtle difference in specifications for BCD-coding MCC and MNC.
I'll illustrate by encoding the two sets
MCC 123, MNC 45
and
MCC 123, MNC 456
In Figure 10.5.3/3GPP TS 04.08, we have both the third digits in the second
byte, i.e. above are encoded as:
21 f3 54
and
21 63 54
respectively
In 3GPP TS 25.413 in 9.2.3.55 PLMN Identity, I see a very similar definition
for BCD coding, but it omits the detail to put the last MNC digit into the
second byte. So, by omittance, it defines a different coding from 04.08:
21 f3 54 (same)
but
21 43 65
respectively.
This strikes me as pretty odd, and I wonder whether the spec author overlooked
this detail. The definition in the RANAP spec is also squeezed into the
rightmost column of the IE description table, so it looks like a "quick hack".
I would like to replace the ranap_parse_lai() implementation with
gsm48_mcc_mnc_from_bcd() to have less code duplication, and hence I hit this
weird difference.
Does anyone have an idea how I should handle this?
We could test it by setting our hNodeB to a three digit MNC and see whether it
encodes it like 04.08 in the RANAP coding...
Daniel, could you check this out in wireshark while you're busy testing?
~Neels