Wireshark-dev: [Wireshark-dev] decoding of the tbcd octet strings in map payloads
Date: Wed, 20 May 2009 11:39:36 +0200
hi!

I am using ethereal Version 0.10.14-SVN-17749 on linux.

tbcds are not correctly shown in ascii (as isdn tel. numbers), at least in
map payloads; more specifically the tbcd nibbles:

1010 (*), 1011 (#), 1100 (a), 1101 (b) or 1110 (c)

are not correctly "translated" to a textual representation.

pls. have a look at the attached file (pcap exported to txt by
ethereal), where the nibble 1010 (0xA) is "translated" to ":".

now, looking at the ascii representations of ":" and "0":

cco@xxx:~$ ascii ":" 0
ASCII 3/10 is decimal 058, hex 3a, octal 072, bits 00111010: prints as `:'
Official name: Colon
Other names: Double-Dot 

ASCII 3/0 is decimal 048, hex 30, octal 060, bits 00110000: prints as `0'
Official name: Digit Zero

it seems that ":" is obtained as a result of the following operation:

"0" + 0xA

this may give a clue on what actually happens during the decoding.
on a more general level, what should be the textual (ascii) representation
of the nibbles 1010-1110:

- *, #, a, b, c (which seem to be some ISDN/dtmf codes??)
- A, B, C, D, E (the actual hex digit representation of the nibbles 
in the tbcd above)

bye now!
cristian
GSM Mobile Application
    Component: returnResultLast (2)
        returnResultLast
            invokeID: 1
            resultretres
                opCode: localValue (0)
                imsi: 2704F0
                Imsi digits: 72400
                extendedRoutingInfo: routingInfo (0)
                    routingInfo: roamingNumber (0)
                        roamingNumber: A19A999978563412
                        1... .... = Extension: No Extension
                        .010 .... = Nature of number: National Significant Number (0x02)
                        .... 0001 = Number plan: ISDN/Telephony Numbering (Rec ITU-T E.164) (0x01)
                        ISDN Address digits: :9999987654321