On Thu, Feb 26, 2009 at 19:26, Luca Ceresoli <l...@lucaceresoli.net> wrote:
> wsgd ha scritto: > > From proto.h : > > /** A protocol tree element. */ > > typedef proto_node proto_tree; > > /** A protocol item element. */ > > typedef proto_node proto_item; > > > Wow. > > From my superficial knowledge of wireshark's internals I've always > found it very strange that item and tree are two distinct "objects". > What's a tree node if not the root of a (possibly empty) subtree? > I really can't figure out the reason for such a choice. > > Back to the original issue, it seems that a text item created by > ptvcursor_add_text_with_subtree() cannot be _legally_ changed. > yes, ptvcursor API is made to simplify dissection code at the cost of less flexibility in some cases. :) Actually, two items are created during ptvcursor_add_text_with_subtree() function call, but only one returned by the function ... the subtree item. Therefore you could then do what you want with something like the following : it = proto_tree_add_text(ptvcursor_tree(cursor), ptvcursor_tvbuff(cursor), ptvcursor_current_offset(cursor), length, "foo"); my_tree = ptvcursor_add_subtree_item(cursor, it, ...); /* do what you want to decode further information */ my_string = val_to_str(...); proto_item_set_text(it, "<%s>", my_string); Regards, Sebastien Tandel
___________________________________________________________________________ Sent via: Wireshark-dev mailing list <wireshark-dev@wireshark.org> Archives: http://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe