wireshark/epan
Jason Cohen 0875845e90 f5ethtrailer: Continued clean-up from plug-in import
This dissector was iniitally a plug-in and was converted to a built-in
on Change: https://code.wireshark.org/review/#/c/26428/
There is still a fair bit of clean up necessary.  I'm attempting some of
that here.  Detailed below are steps of each of the consecutive patch
sets as I work through it.  They are in a top (oldest) down (newest)
order.  If there is another way I should do this please let me know.

f5ethtrailer: Fix indiscriminate consumption of trailers

Dissector was not discriminating in consuming trailers.  Rewrote
the heuristic to look for specific signatures and return if they
are not found. Setting heuristic back to enabled since it now only
consumes trailers that it should be able to dissect.

f5ehtrailer: remove unneeded () from around return values

f5ethtrailer: Remove macros

Macros were left over from using the same same code base to compile the
plugin against differed API versions (versions of Wireshark).  Now that
the code is part of the core repository, it only needs to apply to the
branch it exists in.

f5ethtrailer: Correct FILEINFO mappings

f5ethtrailer: Eliminate compile time option to exclude POP_OTHER_FIELDS

This is now a runtime pref that is disabled by defualt.

Remove unnecessary NULL check

f5ethtrailer: Comment clean up

Clean up a few comments, make sure every function has a doc comment

f5ethtrailer: Trailer detection improved

Skip over leading zeros
Add prefrence to walk remaining data looking for trailer.
Disabled (default) Only look for trailers at first non-zero byte
Enabled start at first non-zero byte looking for trailers.  Walk the
remaining data byte-by-byte looking for a matching trailer.

Change-Id: I6499ed6c6a760b668efe86632011cd07a7e447b2
Reviewed-on: https://code.wireshark.org/review/36012
Reviewed-by: Jason Cohen <kryojenik2@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-02-24 07:42:59 +00:00
..
crypt dot11decrypt: Fix MIC calc for HMAC-SHA384 2019-11-14 08:27:54 +00:00
dfilter HTTPS In Even More Places, update some links. 2019-07-28 04:21:18 +00:00
dissectors f5ethtrailer: Continued clean-up from plug-in import 2020-02-24 07:42:59 +00:00
ftypes Get rid of some unnecessary string operations 2019-10-08 22:10:25 +00:00
wmem Protobuf: Add show_details preferences. Fix two bugs. 2019-10-14 06:47:30 +00:00
wslua De-camel-ize "Wireshark" in a few places. 2019-12-18 04:31:03 +00:00
.editorconfig HTTPS In Even More Places, update some links. 2019-07-28 04:21:18 +00:00
CMakeLists.txt Use symbolic values for Cisco's LLC PIDs 2020-01-10 23:36:33 +00:00
addr_and_mask.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
addr_and_mask.h
addr_resolv.c Add c-ares to the required library list. 2019-11-23 22:45:59 +00:00
addr_resolv.h Add support for "custom" DNS servers to be used in address resolution 2019-09-15 14:10:38 +00:00
address.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
address_types.c ax25: Fix addresses with non-zero SSIDs 2019-11-03 13:15:49 +00:00
address_types.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
afn.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
afn.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
aftypes.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
aftypes.h
app_mem_usage.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
app_mem_usage.h
arcnet_pids.h
arptypes.h
asn1.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
asn1.h
ax25_pids.h
bridged_pids.h
capture_dissectors.c Load environment vars to globals for efficency. 2019-09-04 12:31:53 +00:00
capture_dissectors.h
charsets.c HTTPS In Still More Places, update more URLs. 2019-07-27 22:56:35 +00:00
charsets.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
chdlctypes.h
cisco_pid.h Use symbolic values for Cisco's LLC PIDs 2020-01-10 23:36:33 +00:00
color_filters.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
color_filters.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
column-info.h
column-utils.c
column-utils.h
column.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
column.h
conv_id.h
conversation.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
conversation.h conversation.h: Whitespace fixes 2019-11-24 21:33:18 +00:00
conversation_debug.h conversation.c: do not use wmem packet scope for debug strings 2019-06-05 10:29:13 +00:00
conversation_filter.c epan: Rename dissector_filters.c to conversation_filter.c 2019-11-04 10:17:16 +00:00
conversation_filter.h epan: Rename dissector_filters.c to conversation_filter.c 2019-11-04 10:17:16 +00:00
conversation_table.c
conversation_table.h
crc6-tvb.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
crc6-tvb.h
crc8-tvb.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
crc8-tvb.h
crc10-tvb.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
crc10-tvb.h
crc16-tvb.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
crc16-tvb.h USBLL: Verify DATA packets CRC-16 2019-07-25 08:58:13 +00:00
crc32-tvb.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
crc32-tvb.h
decode_as.c register_decode_as_next_proto: remove the "title" parameter 2019-06-13 05:38:22 +00:00
decode_as.h doxygen: Try to fix warnings. 2019-07-10 16:49:37 +00:00
diam_dict.h
diam_dict.l
disabled_protos.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
disabled_protos.h
dtd.h
dtd_grammar.lemon
dtd_parse.h
dtd_parse.l
dtd_preparse.l
dvb_chartbl.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
dvb_chartbl.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
eap.h EAP: Add TEAP (Tunnel EAP) 2020-02-14 07:46:22 +00:00
eapol_keydes_types.h
epan.c Add c-ares to the required library list. 2019-11-23 22:45:59 +00:00
epan.h Load environment vars to globals for efficency. 2019-09-04 12:31:53 +00:00
epan_dissect.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
etypes.h LLDP: Add ONOS Ether Type (0x8942) 2020-01-30 08:25:51 +00:00
ex-opt.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
ex-opt.h
except.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
except.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
exceptions.h
exntest.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
expert.c Load environment vars to globals for efficency. 2019-09-04 12:31:53 +00:00
expert.h expert.h: Reorder includes 2019-12-01 07:34:03 +00:00
export_object.c HTTPS In Still More Places, update more URLs. 2019-07-27 22:56:35 +00:00
export_object.h
exported_pdu.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
exported_pdu.h
filter_expressions.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
filter_expressions.h Doxygen: Fix some warnings. 2019-07-11 11:03:00 +00:00
follow.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
follow.h QUIC: Add Follow QUIC Stream support to Qt and tshark 2019-10-04 04:36:09 +00:00
frame_data.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
frame_data.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
frame_data_sequence.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
frame_data_sequence.h
funnel.c funnel: Free callback data 2019-11-05 15:21:30 +00:00
funnel.h funnel: Free callback data 2019-11-05 15:21:30 +00:00
garrayfix.h
golay.c
golay.h
guid-utils.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
guid-utils.h
iana_charsets.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
iana_charsets.h
iax2_codec_type.h
in_cksum.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
in_cksum.h
ip_opts.h
ipproto.c
ipproto.h
ipv4.h
ipv6.h
lapd_sapi.h
llcsaps.h
maxmind_db.c HTTPS In Still More Places, update more URLs. 2019-07-27 22:56:35 +00:00
maxmind_db.h
media_params.c
media_params.h
next_tvb.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
next_tvb.h
nlpid.h
oids.c epan,packaging: convert http URLs to https 2019-07-20 20:50:59 +00:00
oids.h
oids_test.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
osi-utils.c
osi-utils.h
oui.h LLDP: Add ONOS TLV (Chassis, Port and TTL) 2020-01-29 14:17:39 +00:00
packet.c Restrict allowed characters in "short name" of heuristic_protos 2019-12-01 17:07:42 +00:00
packet.h Restrict allowed characters in "short name" of heuristic_protos 2019-12-01 17:07:42 +00:00
packet_info.h
params.h
plugin_if.c
plugin_if.h
ppptypes.h
prefs-int.h Protobuf: add dissecting protobuf fields as wireshark fields preferences, etc. 2019-12-19 05:04:17 +00:00
prefs.c Prefs: Fix name of deprecated TPNCP port preference 2020-01-14 13:52:03 +00:00
prefs.h Qt: Fix PacketListHeader column 2020-01-09 12:32:34 +00:00
print.c print: remove assert in get_field_data(). 2019-11-21 08:03:46 +00:00
print.h
print.ps
print_stream.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
print_stream.h
proto.c proto: fix get_time_value() for ENC_TIME_CLASSIC_MAC_OS_SECS 2020-01-26 19:23:29 +00:00
proto.h Add support for "classic Mac OS" timestamps and use them in file-mp4.c. 2020-01-21 20:54:25 +00:00
proto_data.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
proto_data.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
protobuf-helper.c Get rid of %debug, so protobuf_lang.y can be processed by Berkeley YACC. 2020-01-06 10:25:18 +00:00
protobuf-helper.h Protobuf: add dissecting protobuf fields as wireshark fields preferences, etc. 2019-12-19 05:04:17 +00:00
protobuf_lang.y Get rid of %debug, so protobuf_lang.y can be processed by Berkeley YACC. 2020-01-06 10:25:18 +00:00
protobuf_lang_scanner.l Protobuf: Add show_details preferences. Fix two bugs. 2019-10-14 06:47:30 +00:00
protobuf_lang_tree.c Protobuf: add dissecting protobuf fields as wireshark fields preferences, etc. 2019-12-19 05:04:17 +00:00
protobuf_lang_tree.h Get rid of %debug, so protobuf_lang.y can be processed by Berkeley YACC. 2020-01-06 10:25:18 +00:00
ps.h
ptvcursor.h
radius_dict.l HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
range.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
range.h
reassemble.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
reassemble.h Reassemble: Fix typo 2019-11-12 13:43:16 +00:00
reassemble_test.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
reedsolomon.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
reedsolomon.h
register-int.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
register.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
register.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
req_resp_hdrs.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
req_resp_hdrs.h
rtd_table.c
rtd_table.h
rtp_pt.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
sctpppids.h
secrets.c Fix UAT PKCS #11 Library handle leak 2020-01-15 04:52:04 +00:00
secrets.h
sequence_analysis.c
sequence_analysis.h
show_exception.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
show_exception.h
slow_protocol_subtypes.h
sminmpec.h Netflow: Add decodes for Niagara Networks IPFIX information elements. 2019-07-08 11:40:44 +00:00
srt_table.c
srt_table.h
stat_groups.h
stat_tap_ui.c
stat_tap_ui.h
stats_tree.c WSUG: Add a Packet Lengths dialog section. 2020-01-03 16:37:08 +00:00
stats_tree.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
stats_tree_priv.h
stream.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
stream.h
strutil.c Add format_size_wmem 2019-12-02 05:01:16 +00:00
strutil.h Add format_size_wmem 2019-12-02 05:01:16 +00:00
t35.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
t35.h
tap-voip.h
tap.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
tap.h
tfs.c
tfs.h
time_fmt.h Add proto_tree_add_item_ret_time_string 2019-08-29 13:31:48 +00:00
timestamp.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
timestamp.h
timestats.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
timestats.h
to_str-int.h
to_str.c epan/to_str: change MAX_BYTE_STR_LEN from 48 to 72 2020-01-26 19:31:34 +00:00
to_str.h
tvbparse.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
tvbparse.h
tvbtest.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
tvbuff-int.h
tvbuff.c Find the line ending using tvb_find_line_end(). 2019-12-26 18:08:27 +00:00
tvbuff.h tvbuff.h: Fix formatting inside a comment. 2020-01-09 14:52:10 +00:00
tvbuff_base64.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
tvbuff_brotli.c
tvbuff_composite.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
tvbuff_lz77.c Note the Microsoft standard, fix the LZNT1 comment. 2019-08-04 01:09:47 +00:00
tvbuff_lz77huff.c TVB(LZ77+Huffman): return proper value on error (CID1451652) 2019-10-21 07:11:40 +00:00
tvbuff_lznt1.c Note the Microsoft standard, fix the LZNT1 comment. 2019-08-04 01:09:47 +00:00
tvbuff_real.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
tvbuff_subset.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
tvbuff_zlib.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
uat-int.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
uat.c
uat.h
uat_load.l
unit_strings.c IEEE80211: handle symbol proprietary tag seperately 2019-07-21 13:11:20 +00:00
unit_strings.h IEEE80211: handle symbol proprietary tag seperately 2019-07-21 13:11:20 +00:00
value_string.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
value_string.h HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
x264_prt_id.h
xdlc.c HTTPS (almost) everywhere. 2019-07-26 18:44:40 +00:00
xdlc.h Fix whitespace. 2019-07-15 08:02:20 +00:00