Wireshark-dev: Re: [Wireshark-dev] The recent changes to proto.c appear to have broken things b
On 08/03/14 23:32, Evan Huus wrote:
On Sun, Aug 3, 2014 at 11:20 PM, Bill Meier <wmeier@xxxxxxxxxxx
<mailto:wmeier@xxxxxxxxxxx>> wrote:
Specifically:
For some/many/all? dissectors, the protocol never appears in the
'protocol' column', isn't in the list of protos, filters for the
protocol don't work. etc etc
I guess something fails with respect to the
proto_tree_add_item(..., proto_..., ...) call.
Oddly enough, the actual dissection for the protocol does appear in
the details pane.
I believe the changes (5460d7f & 3da89d6) should be reverted until
they are properly tested/fixed.
(When i reverted these two commits to proto.c, things were OK again.
Bill
OK, yes, this is very strange.
The result of that change should be only that we *don't* fake the tree
item in certain uncommon cases - it certainly shouldn't be causing wider
problems like this. My understanding is that we should be able to, e.g.
randomly not fake the tree 10% of the time without causing problems as
it is an optimization only, so I'm not sure why adding *any* extra
condition at all would break things like this.
Is TRY_TO_FAKE_THIS_ITEM ever more than an optimization? Does anyone
else know why *not* faking the tree could cause problems?
I noticed this morning that I get warnings like:
09:11:52 Warn Dissector bug, protocol TCP, in packet 1: "Kind" - "tcp.option_kind" tfi->tree_type: 4294967295 invalid (../../epan/proto.c:3791)
09:47:37 Warn Dissector bug, protocol GTPv2, in packet 1: "Mobile Country Code (MCC)" - "e212.mcc" tfi->tree_type: 4294967295 invalid (../../epan/proto.c:3791)
If I back out the quoted changes the warnings go away.