Wireshark-bugs: [Wireshark-bugs] [Bug 9450] More generic Decode As interface

Date: Wed, 20 Nov 2013 04:59:32 +0000

changed bug 9450

What Removed Added
Attachment #12128 Flags   review_for_checkin?

Comment # 1 on bug 9450 from
Created attachment 12128 [details]
Refactored Decode As functionality

Here is new Decode As functionality.

It works by creating a tab for each dissector in a packet that has registered a
"decode as item" and contains a dissector table.  All currently supported
dissectors were converted to this new architecture and I think going forward it
will be a lot easier to give other dissectors Decode As functionality (bug 9445
is probably the first test of that) because they shouldn't have to modify the
GUI.

Some notes (in no particular order)
1. I wrapped the new functionality in decode_as_dlg.c in NEW_DECODE_AS.  If
this functionality is "approved", I'll do a more thorough cleanup of this
module as well as removing the now unnecessary dcerpc/ber GUI modules (as
removed by the makefiles in this patch) before committing it.

2. Similiarly some of the dissector (especially packet-dcerpc.c) probably need
some cleanup regarding more static functions.  I was a little guilty of
copy/paste from the decode_as_dcerpc and may not have always applied the static
keyword (or removed functions from the .h).  This will be done before
committing.

3. Some "GUI text" (UTF8_LEFTWARDS_ARROW and similar) made their way into the
dissector code.  Not sure how necessary it is and if reformatting the strings
to avoid the macros is desired (TCP/UDP use it, SCTP doesn't).

4. I converted the SCTP functionality to have 2 tabs (instead of radio button),
currently both are labeled "Transport" which could be confusing to users. 
Naming suggestions welcome (as well as for naming of tabs from other
dissectors).

5. BER and DCERPC have more opportunity to use Decode As now that they are
selected based on dissector presense, not packet_info values.

6. Catapult DCT2000 populates pinfo->ipproto, yet under new design will not
show up to do Decode As.  Should a "decode as item" be created for it?

7. BER dissector doesn't have Clear/Show Current functionality working (never
did)

8. Bluetooth (in old design) could have been used "capture wide" instead of
single packet (creating tabs of values not present in current packet), which
goes against what I believe to be in the intent of Decode As, but I'm willing
to hear counter-arguments.


Comments are encouraged!


You are receiving this mail because:
  • You are watching all bug changes.