Wireshark-dev: [Wireshark-dev] Reusing the code for various things in ieee802.11 in other disse
From: Richard Sharpe <realrichardsharpe@xxxxxxxxx>
Date: Sat, 14 Oct 2017 10:45:46 -0700
Hi folks,

I am almost finished a dissector for the IEEE1905 Multi-AP technical
specification draft from August 2017. The work was done for an
organization in the industry. It is pretty complete and has undergone
testing with real traffic.

Unfortunately, they make references to elements in IEEE802.11 2016.

One specific item is 9.4.2.22.7 Beacon Reports from IEEE802.11 2016.
There is another such reference as well.

These raise problems:

1. I don't want to duplicate code
2. The code in the current packet-ieee80211.c dissector is incomplete
WRT the 2016 version of the spec. (Eg, it does not handle Vendor
specific  or Wide Bandwidth Channel Switch optional sub-elements.)
3. The references in IEE1905 are to the underlying structures not the
tagged structures.
4. The code in packet-ieee80211.c is declared static so I can't call
it if I wanted to.

We have mechanisms for dealing with this. One is dissector tables.
Another is to declare certain functions non-static and put the
definitions in header files. There might be others.

Are there any suggestions?

-- 
Regards,
Richard Sharpe
(何以解憂?唯有杜康。--曹操)