Wireshark-dev: Re: [Wireshark-dev] map decoding problems
From: "Anders Broman" <a.broman@xxxxxxxxx>
Date: Tue, 27 Jan 2009 21:33:26 +0100
Hi,
I have checked in a fix in revision 2731, formally I think the frame is
wrongly Encoded as the tag [3] is missing but from comments in the code
It looks like this is common, also from the comments in the asn1
Description IMSI should be there as well, right?

Best regards
Anders

-----Ursprungligt meddelande-----
Från: wireshark-dev-bounces@xxxxxxxxxxxxx
[mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] För Cristian Constantin
Skickat: den 27 januari 2009 18:28
Till: wireshark-dev@xxxxxxxxxxxxx
Ämne: [Wireshark-dev] map decoding problems

hi!

I have seen some problems in wireshark when decoding the response of an
SendRoutingInfo (locationInfoRetrievalContext-v3). the asn1 def of this
is:

SendRoutingInfoRes ::= [3] SEQUENCE {
    imsi            [9] IMSI        OPTIONAL,
    -- IMSI must be present if SendRoutingInfoRes is not segmented.
    -- If the TC-Result-NL segmentation option is taken the IMSI must be
    -- present in one segmented transmission of SendRoutingInfoRes.
    extendedRoutingInfo ExtendedRoutingInfo OPTIONAL,
    cug-CheckInfo   [3] CUG-CheckInfo   OPTIONAL,
    cugSubscriptionFlag [6] NULL        OPTIONAL,
    subscriberInfo  [7] SubscriberInfo  OPTIONAL,
    ss-List     [1] SS-List OPTIONAL,
    basicService    [5] Ext-BasicServiceCode    OPTIONAL,
    forwardingInterrogationRequired [4] NULL        OPTIONAL,
    vmsc-Address    [2] ISDN-AddressString  OPTIONAL,
    extensionContainer  [0] ExtensionContainer  OPTIONAL,
    ... ,
    naea-PreferredCI    [10] NAEA-PreferredCI   OPTIONAL,
    -- naea-PreferredCI is included at the discretion of the HLR operator.
    ccbs-Indicators [11] CCBS-Indicators    OPTIONAL,
    msisdn      [12] ISDN-AddressString OPTIONAL,
    numberPortabilityStatus [13] NumberPortabilityStatus    OPTIONAL,
    istAlertTimer   [14] IST-AlertTimerValue    OPTIONAL,
    supportedCamelPhasesInVMSC  [15]    SupportedCamelPhases    OPTIONAL,
    offeredCamel4CSIsInVMSC [16] OfferedCamel4CSIs  OPTIONAL,
    routingInfo2    [17] RoutingInfo    OPTIONAL,
    ss-List2        [18] SS-List    OPTIONAL,
    basicService2   [19] Ext-BasicServiceCode   OPTIONAL,
    allowedServices [20] AllowedServices    OPTIONAL,
    unavailabilityCause [21] UnavailabilityCause    OPTIONAL,
    releaseResourcesSupported   [22] NULL       OPTIONAL,
    gsm-BearerCapability    [23] ExternalSignalInfo OPTIONAL
    }

interestingly enough, extendedRoutingInfo is NOT tagged within the
SEQUENCE.

now, wireshark(1.0.5)/debian linux decodes the SendRoutingInfoRes/
extendedRoutingInfo/routingInfo/roamingNumber as:

                00.. .... = Class: UNIVERSAL (0)
                ..1. .... = P/C: Constructed Encoding
                ...1 0000 = Tag: SEQUENCE (16)
                Length: 9
                00.. .... = Class: UNIVERSAL (0)
                ..0. .... = P/C: Primitive Encoding
                ...0 0100 = Tag: OCTET STRING (4)
                Length: 7
                imsi: A8241021324344
                TBCD digits: 8:420112233444

(which is obviously wrong since the imsi within the sequence has the tag
0, but not an UNIVERSAL one, right?)

whereas ethereal (0.10.12) / windows recognizes it properly (!!):

        00.. .... = Class: Universal (0)
        ..1. .... = P/C: Constructed Encoding
        ...1 0000 = Tag: SEQUENCE, SEQUENCE OF (16)
        Length: 14
        returnResult_result: 02011630090407A8241021324344
            00.. .... = Class: Universal (0)
            ..0. .... = P/C: Primitive Encoding
            ...0 0010 = Tag: INTEGER (2)
            Length: 1
            invokeCmd: sendRoutingInfo (22)
            extendedRoutingInfo: routingInfo (0)
                routingInfo: roamingNumber (0)
                    00.. .... = Class: Universal (0)
                    ..0. .... = P/C: Primitive Encoding
                    ...0 0100 = Tag: OCTET STRING (4)
                    Length: 7
                    roamingNumber: A8241021324344
                    1... .... = Extension: No Extension
                    .010 .... = Nature of number: National Significant
Number (0
x02)
                    .... 1000 = Number plan: National Numbering (0x08)
                    ISDN Address digits: 4201122334

what is wrong with the new version of wireshark?

bye now!
cristian
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev@xxxxxxxxxxxxx>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request@xxxxxxxxxxxxx?subject=unsubscribe