Wireshark-bugs: [Wireshark-bugs] [Bug 5076] Packet details have errors when decode MAP V2 PRN_AC
Date: Sun, 29 Aug 2010 10:42:14 -0700 (PDT)
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5076

--- Comment #3 from Anders Broman <anders.broman@xxxxxxxxxxxx> 2010-08-29 10:42:09 PDT ---
The problem is that at least in the latest spec ProvideRoamingNumberRes is 
defined as:
ProvideRoamingNumberRes ::= SEQUENCE {
    roamingNumber    ISDN-AddressString,
    extensionContainer    ExtensionContainer    OPTIONAL,
    ...,
    releaseResourcesSupported    NULL            OPTIONAL }

ISDN-AddressString ::= 
            AddressString (SIZE (1..maxISDN-AddressLength))
    -- This type is used to represent ISDN numbers.

AddressString ::= OCTET STRING (SIZE (1..maxAddressLength))

But the package only contains 
...0 0100 = Tag: OCTET STRING (4)
Length: 7
:
e.g the roaming number without the proceeding SEQUENCE.
According to this comment in packet-gsm_map-template.c
/*
 * Dissect Multiple Choice Message
 * This function is used to decode a message, when several encoding may be
used.
 * For exemple, in the last MAP version, the Cancel Location is defined like
this:
 * CancelLocationArg ::= [3] IMPLICIT SEQUENCE
 * But in the previous MAP version, it was a CHOICE between a SEQUENCE and an
IMSI
 * As ASN1 encoders (or software) still uses the old encoding, this function
allows
 * the decoding of both versions.
 * Moreover, some optimizations (or bad practice ?) in ASN1 encoder, removes
the
 * SEQUENCE tag, when only one parameter is present in the SEQUENCE.
 * This explain why the function expects 3 parameters:
 * - a [3] SEQUENCE corresponding the recent ASN1 MAP encoding
 * - a SEQUENCE for old style
 * - and a single parameter, for old version or optimizations
 *
 * The analyze of the first ASN1 tag, indicate what kind of decoding should be
used,
 * if the decoding function is provided (so not a NULL function)
 */
So I have commited a patch using this function.
Committed revision 34001.
A build bot build should be ready in a few hours you can try that.
http://www.wireshark.org/download/automated/

-- 
Configure bugmail: https://bugs.wireshark.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.