Thank you very much for your reply and help. Now it works now.

But I have to mention, that if i use proto_tree_set_visible, my dissector
fails to link. May be this happens because proto_tree_set_visible are not
in export table.
I copied body of this method to my code, and all works fine.
What is correct way to solve this? Should I add this method to export table
and commit it?
Personally, i prefer to have this function in my code, because such way it
will work with old versions of wireshark

And one more note
I do not know what you meant, but packet-jxta.c does not contain any
example of using proto_tree_set_visible. I found examples packet-frame.c
and in packet-wsp.c
--
With best regards
Ilya 'Akhil' Shvetsov



On 7 February 2013 01:29, Jaap Keuter <[email protected]> wrote:

> On 02/06/2013 01:08 PM, Ilya Shvetsov wrote:
> > Hi, there.
> >
> > Thank you guys for greate product.
> >
> > I successuly wrote my dissector and few days ago found failure in it.
> >
> > I have next situatioin:
> > I dissect last packet in some sequence and get new tvbuffer from
> >
> > process_reassembled_data
> >
> > Next step i do is parsing of this new tvbuffer.
> > I parse it and add new items to tree under my protocol item.
> >
> > And this is a place where problem is.
> > I parse new tvbuff from begin, this means that offset is ZERO,
> > tvbuff it self has raw_offset == -1
> >
> > When I parse, i do not know a length of element, so i add item to tree
> and later
> > call
> >
> > proto_item_set_end
> >
> > to set end of element in data buffer. if element, which i have read, has
> quite
> > big size, then all works fine. if it has small size, then i get assert
> from
> > proto_item_set_end.
> >
> > It's turned out that every item in tree has 'finfo', which contains filed
> > 'start'. For me this start is usually 28. if my first item in reassebled
> tvbuff
> > is less then 28, i get assert.
> >
> > As I can see, the problem happens because all items in tree has 'finfo'
> field
> > from parent (not reassebled) tvbuff.
> >
> > So, what i have to do to fix this? how to add items from new tvbuff
> correctly ?
> >
> > I use wireshark 1.8.5 on Windows 7
> > --
> > With best regards
> > Ilya 'Akhil' Shvetsov
> >
>
> Hi,
>
> Try calling proto_tree_set_visible(tree, TRUE); before you create the item
> you
> want to call proto_item_set_end() on. See packet-jxta.c for example.
>
> Thanks,
> Jaap
>
>
>
>
> ___________________________________________________________________________
> Sent via:    Wireshark-dev mailing list <[email protected]>
> Archives:    http://www.wireshark.org/lists/wireshark-dev
> Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
>              mailto:[email protected]
> ?subject=unsubscribe
>
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <[email protected]>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:[email protected]?subject=unsubscribe

Reply via email to