Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: [Wireshark-dev] Megaco dissector: problem with dissection of MediaDescriptor

From: Oleg Kostenko <oleg.kostenko@xxxxxxxxxxxx>
Date: Wed, 30 Aug 2006 22:16:33 +0400
Hello,

I've found some strange code in dissect_megaco_mediadescriptor():

        tvb_current_offset = tvb_find_guint8(tvb, tvb_previous_offset, tvb_RBRKT, '=');
        tokenlen = tvb_current_offset  - tvb_previous_offset -1;
        if (tokenlen > 0)
                proto_tree_add_text(megaco_mediadescriptor_tree, tvb,   tvb_previous_offset, tokenlen,
                        "%s",   tvb_format_text(tvb, tvb_previous_offset,       tokenlen));

I'm not sure how it's supposed to work but this is how it works with
my packets:

Suppose there are the following lines in the packet:

Media{
LocalControl{Mode=SendReceive}
},

Here's the result of the dissection of this fragment:

Media Descriptor
  Media{\nLocalControl{Mod
  Local Control Descriptor: Mode=SendReceive
    Mode: SendReceive

Looks as if the line 'Media{\nLocalControl{Mod' should not be there,
or at least it should look somehow different.

As I don't know how this was supposed to work, I cannot make a patch.
Would you please check what's wrong with that code?

Thanks.
    
-- 
Best regards,
 Oleg                          mailto:oleg.kostenko@xxxxxxxxxxxx