On 2/19/07, Guy Harris <[EMAIL PROTECTED]> wrote:
> your highness wrote:
>
> > The skeleton of my code that is relevant to this issue is as follows:
> >
> > static guint
> > get_condor_pdu_len(tvbuff_t *tvb, int offset)
>
> At least in the current version of Wireshark, a get_pdu_len routine
> takes three arguments, not two - the first argument is the pinfo
> pointer.  That was changed at the end of October 2006; I don't know what
> Wireshark release first had that change.

I am using version 0.99.4. Using three arguments results in failure of
dissection in this version. The following message is given:
Warn Dissector bug, protocol CONDOR, in packet 18: tvbuff.c:387:
failed assertion "tvb && tvb->initialized"

>
> > static void
> > dissect_condor_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
> > {
> >  tcp_dissect_pdus(tvb, pinfo, tree, condor_desegment, 3, get_condor_pdu_len,
> >     dissect_condor_tcp_pdu);
>
> As already indicated, that should be 4, not 3, as the length part of the
> first 4 bytes, even though the length itself only takes 3 bytes (the 3
> bytes after the first byte).

Right, I have modified this. Please refer to my previous email.

>
> > I am using netcat to send files that contain Condor packets for my
> > tests. Attached is a captured file that contains condor packets of 42
> > bytes. The first packet that is tagged Malformed has 2 bytes in the
> > first TCP packets (0x20 and 0x00) and 40 bytes in the second TCP
> > packet.
>
> I build a skeleton dissector for Condor, based on your code, with the
> two changes in question (three arguments to get_condor_pdu_len(), a
> fixed length value of 4 in the tcp_dissect_pdus() call, and, reading
> your capture, I don't see any malformed packets.

A similar message as the above one is given in this case as well,
dissection fails.

>
> The TCP segments in frames 4, 6, 8, 10, 12, 14, 16, and 18 have a bunch
> of Condor packets in them; all but frame 4 also have a bit of the
> previous TCP segment frame reassembled in.
>
> After that things don't appear to work; that might be a bug in the TCP
> reassembly code.  I've attached the source to my skeleton Condor
> dissector in case anybody else wants to look at this.
>
> _______________________________________________
> Wireshark-dev mailing list
> Wireshark-dev@wireshark.org
> http://www.wireshark.org/mailman/listinfo/wireshark-dev
>
>
>
_______________________________________________
Wireshark-dev mailing list
Wireshark-dev@wireshark.org
http://www.wireshark.org/mailman/listinfo/wireshark-dev

Reply via email to