Allow wtap_read() and wtap_seek_read() to return records other than packets.
authorGuy Harris <guy@alum.mit.edu>
Sat, 24 May 2014 18:28:30 +0000 (11:28 -0700)
committerGuy Harris <guy@alum.mit.edu>
Sat, 24 May 2014 18:31:25 +0000 (18:31 +0000)
commit6db77b000fe58173eeed23b91b32c92c681feda2
tree5113821a7f5e1b43734eccf94783d37962b37712
parent33ae4cb024e36192ff7c6fa1d3d6bdcce9b25b7a
Allow wtap_read() and wtap_seek_read() to return records other than packets.

Add a "record type" field to "struct wtap_pkthdr"; currently, it can be
REC_TYPE_PACKET, for a record containing a packet, or
REC_TYPE_FILE_TYPE_SPECIFIC, for records containing file-type-specific
data.

Modify code that reads packets to be able to handle non-packet records,
even if that just means ignoring them.

Rename some routines to indicate that they handle more than just
packets.

We don't yet have any libwiretap code that supplies records other than
REC_TYPE_PACKET or that supporting writing records other than
REC_TYPE_PACKET, or any code to support plugins for handling
REC_TYPE_FILE_TYPE_SPECIFIC records; this is just the first step for bug
8590.

Change-Id: Idb40b78f17c2c3aea72031bcd252abf9bc11c813
Reviewed-on: https://code.wireshark.org/review/1773
Reviewed-by: Guy Harris <guy@alum.mit.edu>
78 files changed:
capinfos.c
editcap.c
epan/epan.c
epan/packet.c
epan/packet.h
epan/wslua/make-init-lua.pl
epan/wslua/template-init.lua
epan/wslua/wslua_dumper.c
epan/wslua/wslua_file.c
file.c
file.h
proto_hier_stats.c
randpkt.c
test/lua/acme_file.lua
test/lua/pcap_file.lua
ui/gtk/capture_file_dlg.c
ui/gtk/iax2_analysis.c
ui/gtk/main.c
ui/gtk/packet_list_store.c
ui/gtk/packet_win.c
ui/gtk/rlc_lte_graph.c
ui/gtk/rtp_analysis.c
ui/gtk/sctp_assoc_analyse.c
ui/qt/main_window.cpp
ui/qt/packet_list.cpp
ui/qt/packet_list_model.cpp
ui/tap-tcp-stream.c
ui/tap_export_pdu.c
ui/text_import.c
wiretap/5views.c
wiretap/aethra.c
wiretap/ber.c
wiretap/btsnoop.c
wiretap/camins.c
wiretap/catapult_dct2000.c
wiretap/commview.c
wiretap/cosine.c
wiretap/csids.c
wiretap/daintree-sna.c
wiretap/dbs-etherwatch.c
wiretap/dct3trace.c
wiretap/erf.c
wiretap/eyesdn.c
wiretap/hcidump.c
wiretap/i4btrace.c
wiretap/ipfix.c
wiretap/iptrace.c
wiretap/iseries.c
wiretap/k12.c
wiretap/k12text.l
wiretap/lanalyzer.c
wiretap/libpcap.c
wiretap/logcat.c
wiretap/mime_file.c
wiretap/mp2t.c
wiretap/mpeg.c
wiretap/netmon.c
wiretap/netscaler.c
wiretap/netscreen.c
wiretap/nettl.c
wiretap/network_instruments.c
wiretap/netxray.c
wiretap/ngsniffer.c
wiretap/packetlogger.c
wiretap/pcapng.c
wiretap/peekclassic.c
wiretap/peektagged.c
wiretap/pppdump.c
wiretap/radcom.c
wiretap/snoop.c
wiretap/stanag4607.c
wiretap/tnef.c
wiretap/toshiba.c
wiretap/visual.c
wiretap/vms.c
wiretap/vwr.c
wiretap/wtap.c
wiretap/wtap.h