aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--capchild/capture_sync.c1
-rw-r--r--epan/exported_pdu.h3
-rw-r--r--epan/tap.h1
-rw-r--r--file.c52
-rw-r--r--fileset.c1
-rw-r--r--frame_tvbuff.c41
-rw-r--r--frame_tvbuff.h18
-rw-r--r--rawshark.c4
-rw-r--r--sharkd.c20
-rw-r--r--sharkd.h1
-rw-r--r--sharkd_session.c2
-rw-r--r--tfshark.c11
-rw-r--r--tshark.c12
-rw-r--r--ui/gtk/addr_resolution_dlg.c2
-rw-r--r--ui/gtk/capture_dlg.c2
-rw-r--r--ui/gtk/capture_file_dlg.h2
-rw-r--r--ui/gtk/conversations_table.c3
-rw-r--r--ui/gtk/dcerpc_stat.c3
-rw-r--r--ui/gtk/decode_as_dlg.c2
-rw-r--r--ui/gtk/drag_and_drop.c1
-rw-r--r--ui/gtk/edit_packet_comment_dlg.c3
-rw-r--r--ui/gtk/expert_comp_dlg.c2
-rw-r--r--ui/gtk/expert_comp_table.c2
-rw-r--r--ui/gtk/export_object_dlg.c2
-rw-r--r--ui/gtk/export_pdu_dlg.c1
-rw-r--r--ui/gtk/export_sslkeys.c1
-rw-r--r--ui/gtk/fileset_dlg.c2
-rw-r--r--ui/gtk/filter_expression_save_dlg.c1
-rw-r--r--ui/gtk/filter_expression_save_dlg.h1
-rw-r--r--ui/gtk/filter_utils.c2
-rw-r--r--ui/gtk/firewall_dlg.c2
-rw-r--r--ui/gtk/flow_graph.c3
-rw-r--r--ui/gtk/follow_stream.c2
-rw-r--r--ui/gtk/funnel_stat.c2
-rw-r--r--ui/gtk/graph_analysis.c2
-rw-r--r--ui/gtk/hostlist_table.c2
-rw-r--r--ui/gtk/iax2_analysis.c5
-rw-r--r--ui/gtk/io_stat.c1
-rw-r--r--ui/gtk/mac_lte_stat_dlg.c2
-rw-r--r--ui/gtk/main.c5
-rw-r--r--ui/gtk/main.h2
-rw-r--r--ui/gtk/main_filter_toolbar.c2
-rw-r--r--ui/gtk/main_statusbar.c2
-rw-r--r--ui/gtk/main_toolbar.c2
-rw-r--r--ui/gtk/main_welcome.c3
-rw-r--r--ui/gtk/manual_addr_resolv.c2
-rw-r--r--ui/gtk/packet_history.c3
-rw-r--r--ui/gtk/packet_list.c2
-rw-r--r--ui/gtk/packet_list_store.c4
-rw-r--r--ui/gtk/packet_panes.c1
-rw-r--r--ui/gtk/packet_win.c8
-rw-r--r--ui/gtk/prefs_dlg.c2
-rw-r--r--ui/gtk/prefs_gui.c1
-rw-r--r--ui/gtk/print_dlg.c2
-rw-r--r--ui/gtk/profile_dlg.c2
-rw-r--r--ui/gtk/proto_dlg.c6
-rw-r--r--ui/gtk/response_time_delay_table.c2
-rw-r--r--ui/gtk/rlc_lte_stat_dlg.c1
-rw-r--r--ui/gtk/rpc_stat.c2
-rw-r--r--ui/gtk/rtp_analysis.c7
-rw-r--r--ui/gtk/sctp_assoc_analyse.c6
-rw-r--r--ui/gtk/sctp_byte_graph_dlg.c2
-rw-r--r--ui/gtk/sctp_chunk_stat.c3
-rw-r--r--ui/gtk/sctp_chunk_stat_dlg.c3
-rw-r--r--ui/gtk/sctp_error_dlg.c2
-rw-r--r--ui/gtk/sctp_graph_dlg.c2
-rw-r--r--ui/gtk/sctp_stat_dlg.c2
-rw-r--r--ui/gtk/service_response_time_table.c2
-rw-r--r--ui/gtk/simple_stattable.c2
-rw-r--r--ui/gtk/stats_tree_stat.c2
-rw-r--r--ui/gtk/summary_dlg.c4
-rw-r--r--ui/gtk/supported_protos_dlg.c5
-rw-r--r--ui/gtk/uat_gui.c2
-rw-r--r--ui/gtk/wlan_stat_dlg.c2
-rw-r--r--ui/proto_hier_stats.c4
-rw-r--r--ui/qt/address_editor_frame.cpp3
-rw-r--r--ui/qt/export_pdu_dialog.cpp1
-rw-r--r--ui/qt/gsm_map_summary_dialog.cpp1
-rw-r--r--ui/qt/iax2_analysis_dialog.cpp3
-rw-r--r--ui/qt/lte_rlc_graph_dialog.cpp2
-rw-r--r--ui/qt/models/packet_list_record.cpp4
-rw-r--r--ui/qt/mtp3_summary_dialog.cpp1
-rw-r--r--ui/qt/packet_dialog.cpp2
-rw-r--r--ui/qt/packet_list.cpp4
-rw-r--r--ui/qt/rtp_analysis_dialog.cpp3
-rw-r--r--ui/qt/utils/frame_information.cpp2
-rw-r--r--ui/tap-rlc-graph.c4
-rw-r--r--ui/tap-rtp-common.c1
-rw-r--r--ui/tap-tcp-stream.c4
-rw-r--r--ui/tap_export_pdu.c2
-rw-r--r--ui/win32/file_dlg_win32.c2
91 files changed, 259 insertions, 104 deletions
diff --git a/capchild/capture_sync.c b/capchild/capture_sync.c
index 723449f701..e8d6fcf10b 100644
--- a/capchild/capture_sync.c
+++ b/capchild/capture_sync.c
@@ -75,7 +75,6 @@
#include <epan/packet.h>
#include <epan/prefs.h>
-#include "globals.h"
#include "file.h"
#include "ui/capture.h"
diff --git a/epan/exported_pdu.h b/epan/exported_pdu.h
index cda931397e..95019c402b 100644
--- a/epan/exported_pdu.h
+++ b/epan/exported_pdu.h
@@ -30,6 +30,9 @@
#include <glib.h>
+#include <epan/tvbuff.h>
+#include <epan/packet_info.h>
+
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
diff --git a/epan/tap.h b/epan/tap.h
index edaaa31474..395bf19ce8 100644
--- a/epan/tap.h
+++ b/epan/tap.h
@@ -24,6 +24,7 @@
#define __TAP_H__
#include <epan/epan.h>
+#include <epan/packet_info.h>
#include "ws_symbol_export.h"
#ifdef __cplusplus
diff --git a/file.c b/file.c
index d0080c4802..438ca5508d 100644
--- a/file.c
+++ b/file.c
@@ -1103,7 +1103,9 @@ add_packet_to_packet_list(frame_data *fdata, capture_file *cf,
}
/* Dissect the frame. */
- epan_dissect_run_with_taps(edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, buf), fdata, cinfo);
+ epan_dissect_run_with_taps(edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, buf),
+ fdata, cinfo);
/* If we don't have a display filter, set "passed_dfilter" to 1. */
if (dfcode != NULL) {
@@ -1177,7 +1179,9 @@ read_packet(capture_file *cf, dfilter_t *dfcode, epan_dissect_t *edt,
epan_dissect_init(&rf_edt, cf->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&rf_edt, cf->rfcode);
- epan_dissect_run(&rf_edt, cf->cd_t, phdr, frame_tvbuff_new(&fdlocal, buf), &fdlocal, NULL);
+ epan_dissect_run(&rf_edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, &fdlocal, buf),
+ &fdlocal, NULL);
passed = dfilter_apply_edt(cf->rfcode, &rf_edt);
epan_dissect_cleanup(&rf_edt);
}
@@ -2072,7 +2076,9 @@ retap_packet(capture_file *cf, frame_data *fdata,
{
retap_callback_args_t *args = (retap_callback_args_t *)argsp;
- epan_dissect_run_with_taps(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, args->cinfo);
+ epan_dissect_run_with_taps(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd),
+ fdata, args->cinfo);
epan_dissect_reset(&args->edt);
return TRUE;
@@ -2182,10 +2188,13 @@ print_packet(capture_file *cf, frame_data *fdata,
information. */
if (args->print_args->print_summary) {
col_custom_prime_edt(&args->edt, &cf->cinfo);
- epan_dissect_run(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, &cf->cinfo);
+ epan_dissect_run(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd),
+ fdata, &cf->cinfo);
epan_dissect_fill_in_columns(&args->edt, FALSE, TRUE);
} else
- epan_dissect_run(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, NULL);
+ epan_dissect_run(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd), fdata, NULL);
if (args->print_formfeed) {
if (!new_page(args->print_args->stream))
@@ -2501,7 +2510,8 @@ write_pdml_packet(capture_file *cf, frame_data *fdata,
write_packet_callback_args_t *args = (write_packet_callback_args_t *)argsp;
/* Create the protocol tree, but don't fill in the column information. */
- epan_dissect_run(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, NULL);
+ epan_dissect_run(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd), fdata, NULL);
/* Write out the information in that tree. */
write_pdml_proto_tree(NULL, NULL, PF_NONE, &args->edt, args->fh, FALSE);
@@ -2577,7 +2587,9 @@ write_psml_packet(capture_file *cf, frame_data *fdata,
/* Fill in the column information */
col_custom_prime_edt(&args->edt, &cf->cinfo);
- epan_dissect_run(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, &cf->cinfo);
+ epan_dissect_run(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd),
+ fdata, &cf->cinfo);
epan_dissect_fill_in_columns(&args->edt, FALSE, TRUE);
/* Write out the column information. */
@@ -2660,7 +2672,9 @@ write_csv_packet(capture_file *cf, frame_data *fdata,
/* Fill in the column information */
col_custom_prime_edt(&args->edt, &cf->cinfo);
- epan_dissect_run(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, &cf->cinfo);
+ epan_dissect_run(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd),
+ fdata, &cf->cinfo);
epan_dissect_fill_in_columns(&args->edt, FALSE, TRUE);
/* Write out the column information. */
@@ -2733,7 +2747,8 @@ carrays_write_packet(capture_file *cf, frame_data *fdata,
{
write_packet_callback_args_t *args = (write_packet_callback_args_t *)argsp;
- epan_dissect_run(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, NULL);
+ epan_dissect_run(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd), fdata, NULL);
write_carrays_hex_data(fdata->num, args->fh, &args->edt);
epan_dissect_reset(&args->edt);
@@ -2795,7 +2810,8 @@ write_json_packet(capture_file *cf, frame_data *fdata,
write_packet_callback_args_t *args = (write_packet_callback_args_t *)argsp;
/* Create the protocol tree, but don't fill in the column information. */
- epan_dissect_run(&args->edt, cf->cd_t, phdr, frame_tvbuff_new(fdata, pd), fdata, NULL);
+ epan_dissect_run(&args->edt, cf->cd_t, phdr,
+ frame_tvbuff_new(&cf->provider, fdata, pd), fdata, NULL);
/* Write out the information in that tree. */
write_json_proto_tree(NULL, args->print_args->print_dissections,
@@ -2902,7 +2918,9 @@ match_protocol_tree(capture_file *cf, frame_data *fdata, void *criterion)
/* Construct the protocol tree, including the displayed text */
epan_dissect_init(&edt, cf->epan, TRUE, TRUE);
/* We don't need the column information */
- epan_dissect_run(&edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(fdata, &cf->buf), fdata, NULL);
+ epan_dissect_run(&edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, NULL);
/* Iterate through all the nodes, seeing if they have text that matches. */
mdata->cf = cf;
@@ -3014,8 +3032,9 @@ match_summary_line(capture_file *cf, frame_data *fdata, void *criterion)
/* Don't bother constructing the protocol tree */
epan_dissect_init(&edt, cf->epan, FALSE, FALSE);
/* Get the column information */
- epan_dissect_run(&edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(fdata, &cf->buf), fdata,
- &cf->cinfo);
+ epan_dissect_run(&edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, &cf->cinfo);
/* Find the Info column */
for (colx = 0; colx < cf->cinfo.num_cols; colx++) {
@@ -3360,7 +3379,9 @@ match_dfilter(capture_file *cf, frame_data *fdata, void *criterion)
epan_dissect_init(&edt, cf->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&edt, sfcode);
- epan_dissect_run(&edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(fdata, &cf->buf), fdata, NULL);
+ epan_dissect_run(&edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, NULL);
result = dfilter_apply_edt(sfcode, &edt) ? MR_MATCHED : MR_NOTMATCHED;
epan_dissect_cleanup(&edt);
return result;
@@ -3646,7 +3667,8 @@ cf_select_packet(capture_file *cf, int row)
cf->edt = epan_dissect_new(cf->epan, TRUE, TRUE);
tap_build_interesting(cf->edt);
- epan_dissect_run(cf->edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(cf->current_frame, &cf->buf),
+ epan_dissect_run(cf->edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, cf->current_frame, &cf->buf),
cf->current_frame, NULL);
dfilter_macro_build_ftv_cache(cf->edt->tree);
diff --git a/fileset.c b/fileset.c
index 88d6996682..6e8ea01575 100644
--- a/fileset.c
+++ b/fileset.c
@@ -21,7 +21,6 @@
#include <wsutil/file_util.h>
#include <wsutil/filesystem.h>
-#include "globals.h"
#include <epan/strutil.h>
diff --git a/frame_tvbuff.c b/frame_tvbuff.c
index f2ad3e606b..e5309bd134 100644
--- a/frame_tvbuff.c
+++ b/frame_tvbuff.c
@@ -17,7 +17,6 @@
#include <epan/tvbuff.h>
#include "frame_tvbuff.h"
-#include "globals.h"
#include "wiretap/wtap-int.h" /* for ->random_fh */
@@ -26,7 +25,7 @@ struct tvb_frame {
Buffer *buf; /* Packet data */
- wtap *wth; /**< Wiretap session */
+ const struct packet_provider_data *prov; /* provider of packet information */
gint64 file_off; /**< File offset */
guint offset;
@@ -38,14 +37,10 @@ frame_read(struct tvb_frame *frame_tvb, struct wtap_pkthdr *phdr, Buffer *buf)
int err;
gchar *err_info;
- /* sanity check, capture file was closed? */
- if (cfile.provider.wth != frame_tvb->wth)
- return FALSE;
-
/* XXX, what if phdr->caplen isn't equal to
* frame_tvb->tvb.length + frame_tvb->offset?
*/
- if (!wtap_seek_read(frame_tvb->wth, frame_tvb->file_off, phdr, buf, &err, &err_info)) {
+ if (!wtap_seek_read(frame_tvb->prov->wth, frame_tvb->file_off, phdr, buf, &err, &err_info)) {
/* XXX - report error! */
switch (err) {
case WTAP_ERR_BAD_FILE:
@@ -165,7 +160,8 @@ static const struct tvb_ops tvb_frame_ops = {
/* based on tvb_new_real_data() */
tvbuff_t *
-frame_tvbuff_new(const frame_data *fd, const guint8 *buf)
+frame_tvbuff_new(const struct packet_provider_data *prov, const frame_data *fd,
+ const guint8 *buf)
{
struct tvb_frame *frame_tvb;
tvbuff_t *tvb;
@@ -208,12 +204,12 @@ frame_tvbuff_new(const frame_data *fd, const guint8 *buf)
frame_tvb = (struct tvb_frame *) tvb;
/* XXX, wtap_can_seek() */
- if (cfile.provider.wth && cfile.provider.wth->random_fh) {
- frame_tvb->wth = cfile.provider.wth;
+ if (prov->wth && prov->wth->random_fh) {
+ frame_tvb->prov = prov;
frame_tvb->file_off = fd->file_off;
frame_tvb->offset = 0;
} else
- frame_tvb->wth = NULL;
+ frame_tvb->prov = NULL;
frame_tvb->buf = NULL;
@@ -221,9 +217,10 @@ frame_tvbuff_new(const frame_data *fd, const guint8 *buf)
}
tvbuff_t *
-frame_tvbuff_new_buffer(const frame_data *fd, Buffer *buf)
+frame_tvbuff_new_buffer(const struct packet_provider_data *prov,
+ const frame_data *fd, Buffer *buf)
{
- return frame_tvbuff_new(fd, ws_buffer_start_ptr(buf));
+ return frame_tvbuff_new(prov, fd, ws_buffer_start_ptr(buf));
}
static tvbuff_t *
@@ -235,7 +232,7 @@ frame_clone(tvbuff_t *tvb, guint abs_offset, guint abs_length)
struct tvb_frame *cloned_frame_tvb;
/* file not seekable */
- if (!frame_tvb->wth)
+ if (!frame_tvb->prov)
return NULL;
abs_offset += frame_tvb->offset;
@@ -255,7 +252,7 @@ frame_clone(tvbuff_t *tvb, guint abs_offset, guint abs_length)
cloned_tvb->ds_tvb = cloned_tvb;
cloned_frame_tvb = (struct tvb_frame *) cloned_tvb;
- cloned_frame_tvb->wth = frame_tvb->wth;
+ cloned_frame_tvb->prov = frame_tvb->prov;
cloned_frame_tvb->file_off = frame_tvb->file_off;
cloned_frame_tvb->offset = abs_offset;
cloned_frame_tvb->buf = NULL;
@@ -266,7 +263,8 @@ frame_clone(tvbuff_t *tvb, guint abs_offset, guint abs_length)
/* based on tvb_new_real_data() */
tvbuff_t *
-file_tvbuff_new(const frame_data *fd, const guint8 *buf)
+file_tvbuff_new(const struct packet_provider_data *prov, const frame_data *fd,
+ const guint8 *buf)
{
struct tvb_frame *frame_tvb;
tvbuff_t *tvb;
@@ -309,12 +307,12 @@ file_tvbuff_new(const frame_data *fd, const guint8 *buf)
frame_tvb = (struct tvb_frame *) tvb;
/* XXX, wtap_can_seek() */
- if (cfile.provider.wth && cfile.provider.wth->random_fh) {
- frame_tvb->wth = cfile.provider.wth;
+ if (prov->wth && prov->wth->random_fh) {
+ frame_tvb->prov = prov;
frame_tvb->file_off = fd->file_off;
frame_tvb->offset = 0;
} else
- frame_tvb->wth = NULL;
+ frame_tvb->prov = NULL;
frame_tvb->buf = NULL;
@@ -322,9 +320,10 @@ file_tvbuff_new(const frame_data *fd, const guint8 *buf)
}
tvbuff_t *
-file_tvbuff_new_buffer(const frame_data *fd, Buffer *buf)
+file_tvbuff_new_buffer(const struct packet_provider_data *prov,
+ const frame_data *fd, Buffer *buf)
{
- return frame_tvbuff_new(fd, ws_buffer_start_ptr(buf));
+ return frame_tvbuff_new(prov, fd, ws_buffer_start_ptr(buf));
}
/*
diff --git a/frame_tvbuff.h b/frame_tvbuff.h
index d9428e709d..5b8edb4dd4 100644
--- a/frame_tvbuff.h
+++ b/frame_tvbuff.h
@@ -11,19 +11,25 @@
#ifndef __FRAME_TVBUFF_H__
#define __FRAME_TVBUFF_H__
+#include "cfile.h"
+
+#include <wiretap/wtap.h>
+
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
-#include <wiretap/wtap.h>
-
-extern tvbuff_t *frame_tvbuff_new(const frame_data *fd, const guint8 *buf);
+extern tvbuff_t *frame_tvbuff_new(const struct packet_provider_data *prov,
+ const frame_data *fd, const guint8 *buf);
-extern tvbuff_t *frame_tvbuff_new_buffer(const frame_data *fd, Buffer *buf);
+extern tvbuff_t *frame_tvbuff_new_buffer(const struct packet_provider_data *prov,
+ const frame_data *fd, Buffer *buf);
-extern tvbuff_t *file_tvbuff_new(const frame_data *fd, const guint8 *buf);
+extern tvbuff_t *file_tvbuff_new(const struct packet_provider_data *prov,
+ const frame_data *fd, const guint8 *buf);
-extern tvbuff_t *file_tvbuff_new_buffer(const frame_data *fd, Buffer *buf);
+extern tvbuff_t *file_tvbuff_new_buffer(const struct packet_provider_data *prov,
+ const frame_data *fd, Buffer *buf);
#ifdef __cplusplus
}
diff --git a/rawshark.c b/rawshark.c
index eb382fd5ba..68dedaddd4 100644
--- a/rawshark.c
+++ b/rawshark.c
@@ -1037,7 +1037,9 @@ process_packet(capture_file *cf, epan_dissect_t *edt, gint64 offset,
/* We only need the columns if we're printing packet info but we're
*not* verbose; in verbose mode, we print the protocol tree, not
the protocol summary. */
- epan_dissect_run_with_taps(edt, cf->cd_t, whdr, frame_tvbuff_new(&fdata, pd), &fdata, &cf->cinfo);
+ epan_dissect_run_with_taps(edt, cf->cd_t, whdr,
+ frame_tvbuff_new(&cf->provider, &fdata, pd),
+ &fdata, &cf->cinfo);
frame_data_set_after_dissect(&fdata, &cum_bytes);
prev_dis_frame = fdata;
diff --git a/sharkd.c b/sharkd.c
index d2be886e30..903d9bd540 100644
--- a/sharkd.c
+++ b/sharkd.c
@@ -301,7 +301,9 @@ process_packet(capture_file *cf, epan_dissect_t *edt,
cf->provider.ref = &ref_frame;
}
- epan_dissect_run(edt, cf->cd_t, whdr, frame_tvbuff_new(&fdlocal, pd), &fdlocal, NULL);
+ epan_dissect_run(edt, cf->cd_t, whdr,
+ frame_tvbuff_new(&cf->provider, &fdlocal, pd),
+ &fdlocal, NULL);
/* Run the read filter if we have one. */
if (cf->rfcode)
@@ -569,7 +571,9 @@ sharkd_dissect_request(unsigned int framenum, void (*cb)(epan_dissect_t *, proto
* XXX - need to catch an OutOfMemoryError exception and
* attempt to recover from it.
*/
- epan_dissect_run(&edt, cfile.cd_t, &phdr, frame_tvbuff_new_buffer(fdata, &buf), fdata, cinfo);
+ epan_dissect_run(&edt, cfile.cd_t, &phdr,
+ frame_tvbuff_new_buffer(&cfile.provider, fdata, &buf),
+ fdata, cinfo);
if (cinfo) {
/* "Stringify" non frame_data vals */
@@ -621,7 +625,9 @@ sharkd_dissect_columns(frame_data *fdata, column_info *cinfo, gboolean dissect_c
* XXX - need to catch an OutOfMemoryError exception and
* attempt to recover from it.
*/
- epan_dissect_run(&edt, cfile.cd_t, &phdr, frame_tvbuff_new_buffer(fdata, &buf), fdata, cinfo);
+ epan_dissect_run(&edt, cfile.cd_t, &phdr,
+ frame_tvbuff_new_buffer(&cfile.provider, fdata, &buf),
+ fdata, cinfo);
if (cinfo) {
/* "Stringify" non frame_data vals */
@@ -678,7 +684,9 @@ sharkd_retap(void)
if (!wtap_seek_read(cfile.provider.wth, fdata->file_off, &phdr, &buf, &err, &err_info))
break;
- epan_dissect_run_with_taps(&edt, cfile.cd_t, &phdr, frame_tvbuff_new(fdata, ws_buffer_start_ptr(&buf)), fdata, cinfo);
+ epan_dissect_run_with_taps(&edt, cfile.cd_t, &phdr,
+ frame_tvbuff_new(&cfile.provider, fdata, ws_buffer_start_ptr(&buf)),
+ fdata, cinfo);
epan_dissect_reset(&edt);
}
@@ -736,7 +744,9 @@ sharkd_filter(const char *dftext, guint8 **result)
/* frame_data_set_before_dissect */
epan_dissect_prime_with_dfilter(&edt, dfcode);
- epan_dissect_run(&edt, cfile.cd_t, &phdr, frame_tvbuff_new_buffer(fdata, &buf), fdata, NULL);
+ epan_dissect_run(&edt, cfile.cd_t, &phdr,
+ frame_tvbuff_new_buffer(&cfile.provider, fdata, &buf),
+ fdata, NULL);
if (dfilter_apply_edt(dfcode, &edt))
passed_bits |= (1 << (framenum % 8));
diff --git a/sharkd.h b/sharkd.h
index b08754c97a..d351cea71b 100644
--- a/sharkd.h
+++ b/sharkd.h
@@ -13,7 +13,6 @@
#define __SHARKD_H
#include <file.h>
-#include <globals.h>
/* sharkd.c */
cf_status_t sharkd_cf_open(const char *fname, unsigned int type, gboolean is_tempfile, int *err);
diff --git a/sharkd_session.c b/sharkd_session.c
index 1a165a9fa2..e9c9f702b2 100644
--- a/sharkd_session.c
+++ b/sharkd_session.c
@@ -69,6 +69,8 @@
#include <wsutil/glib-compat.h>
#include <wsutil/strtoi.h>
+#include "globals.h"
+
#include "sharkd.h"
static gboolean
diff --git a/tfshark.c b/tfshark.c
index d8cdfcbc04..3b69005802 100644
--- a/tfshark.c
+++ b/tfshark.c
@@ -1101,7 +1101,9 @@ process_packet_first_pass(capture_file *cf, epan_dissect_t *edt,
cf->provider.ref = &ref_frame;
}
- epan_dissect_file_run(edt, whdr, file_tvbuff_new(&fdlocal, pd), &fdlocal, NULL);
+ epan_dissect_file_run(edt, whdr,
+ file_tvbuff_new(&cf->provider, &fdlocal, pd),
+ &fdlocal, NULL);
/* Run the read filter if we have one. */
if (cf->rfcode)
@@ -1180,7 +1182,8 @@ process_packet_second_pass(capture_file *cf, epan_dissect_t *edt,
cf->provider.ref = &ref_frame;
}
- epan_dissect_file_run_with_taps(edt, phdr, file_tvbuff_new_buffer(fdata, buf), fdata, cinfo);
+ epan_dissect_file_run_with_taps(edt, phdr,
+ file_tvbuff_new_buffer(&cf->provider, fdata, buf), fdata, cinfo);
/* Run the read/display filter if we have one. */
if (cf->dfcode)
@@ -1623,7 +1626,9 @@ process_packet_single_pass(capture_file *cf, epan_dissect_t *edt, gint64 offset,
cf->provider.ref = &ref_frame;
}
- epan_dissect_file_run_with_taps(edt, whdr, frame_tvbuff_new(&fdata, pd), &fdata, cinfo);
+ epan_dissect_file_run_with_taps(edt, whdr,
+ frame_tvbuff_new(&cf->provider, &fdata, pd),
+ &fdata, cinfo);
/* Run the filter if we have it. */
if (cf->dfcode)
diff --git a/tshark.c b/tshark.c
index 099f49ff97..a8fefc2682 100644
--- a/tshark.c
+++ b/tshark.c
@@ -2912,7 +2912,9 @@ process_packet_first_pass(capture_file *cf, epan_dissect_t *edt,
cf->provider.ref = &ref_frame;
}
- epan_dissect_run(edt, cf->cd_t, whdr, frame_tvbuff_new(&fdlocal, pd), &fdlocal, NULL);
+ epan_dissect_run(edt, cf->cd_t, whdr,
+ frame_tvbuff_new(&cf->provider, &fdlocal, pd),
+ &fdlocal, NULL);
/* Run the read filter if we have one. */
if (cf->rfcode)
@@ -3002,7 +3004,9 @@ process_packet_second_pass(capture_file *cf, epan_dissect_t *edt,
fdata->flags.need_colorize = 1;
}
- epan_dissect_run_with_taps(edt, cf->cd_t, phdr, frame_tvbuff_new_buffer(fdata, buf), fdata, cinfo);
+ epan_dissect_run_with_taps(edt, cf->cd_t, phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, buf),
+ fdata, cinfo);
/* Run the read/display filter if we have one. */
if (cf->dfcode)
@@ -3517,7 +3521,9 @@ process_packet_single_pass(capture_file *cf, epan_dissect_t *edt, gint64 offset,
fdata.flags.need_colorize = 1;
}
- epan_dissect_run_with_taps(edt, cf->cd_t, whdr, frame_tvbuff_new(&fdata, pd), &fdata, cinfo);
+ epan_dissect_run_with_taps(edt, cf->cd_t, whdr,
+ frame_tvbuff_new(&cf->provider, &fdata, pd),
+ &fdata, cinfo);
/* Run the filter if we have it. */
if (cf->dfcode)
diff --git a/ui/gtk/addr_resolution_dlg.c b/ui/gtk/addr_resolution_dlg.c
index a8fe7a2c87..77580470cb 100644
--- a/ui/gtk/addr_resolution_dlg.c
+++ b/ui/gtk/addr_resolution_dlg.c
@@ -37,6 +37,8 @@
#include "ui/gtk/main.h"
#include "ui/gtk/addr_resolution_dlg.h"
+#include "globals.h"
+
static GtkWidget *addr_resolution_dlg_w = NULL;
diff --git a/ui/gtk/capture_dlg.c b/ui/gtk/capture_dlg.c
index 5f1516695e..7e0e2a4496 100644
--- a/ui/gtk/capture_dlg.c
+++ b/ui/gtk/capture_dlg.c
@@ -89,6 +89,8 @@
#include "ui/gtk/extcap_gtk.h"
#endif
+#include "globals.h"
+
/*
* Symbolic names for column indices.
*/
diff --git a/ui/gtk/capture_file_dlg.h b/ui/gtk/capture_file_dlg.h
index 02d544abc4..deda5f8943 100644
--- a/ui/gtk/capture_file_dlg.h
+++ b/ui/gtk/capture_file_dlg.h
@@ -23,6 +23,8 @@
#ifndef __CAPTURE_FILE_DLG_H__
#define __CAPTURE_FILE_DLG_H__
+#include "cfile.h"
+
/** @file
* "Open" / "Close" / "Save" / "Save As" / etc dialog boxes.
* @ingroup dialog_group
diff --git a/ui/gtk/conversations_table.c b/ui/gtk/conversations_table.c
index f6acef1a8f..790a132130 100644
--- a/ui/gtk/conversations_table.c
+++ b/ui/gtk/conversations_table.c
@@ -29,7 +29,6 @@
#include <epan/addr_resolv.h>
-
#include <epan/stat_groups.h>
#include "ui/simple_dialog.h"
@@ -49,6 +48,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
#define COL_STR_LEN 16
#define CONV_PTR_KEY "conversations-pointer"
#define NB_PAGES_KEY "notebook-pages"
diff --git a/ui/gtk/dcerpc_stat.c b/ui/gtk/dcerpc_stat.c
index d4d3a9956a..bf5006d39d 100644
--- a/ui/gtk/dcerpc_stat.c
+++ b/ui/gtk/dcerpc_stat.c
@@ -39,7 +39,6 @@
#include <epan/tap.h>
#include <epan/dissectors/packet-dcerpc.h>
-
#include "ui/simple_dialog.h"
#include "ui/gtk/gui_stat_menu.h"
@@ -54,6 +53,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
void register_tap_listener_gtkdcerpcstat(void);
/* used to keep track of the statistics for an entire program interface */
diff --git a/ui/gtk/decode_as_dlg.c b/ui/gtk/decode_as_dlg.c
index b7c6808baa..5f615e8721 100644
--- a/ui/gtk/decode_as_dlg.c
+++ b/ui/gtk/decode_as_dlg.c
@@ -47,6 +47,8 @@
#include "ui/gtk/packet_win.h"
#include "ui/gtk/stock_icons.h"
+#include "globals.h"
+
#undef DEBUG
/**************************************************/
diff --git a/ui/gtk/drag_and_drop.c b/ui/gtk/drag_and_drop.c
index 8c4f30fbb4..963e503023 100644
--- a/ui/gtk/drag_and_drop.c
+++ b/ui/gtk/drag_and_drop.c
@@ -45,6 +45,7 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
enum { DND_TARGET_STRING, DND_TARGET_ROOTWIN, DND_TARGET_URL };
diff --git a/ui/gtk/edit_packet_comment_dlg.c b/ui/gtk/edit_packet_comment_dlg.c
index 95caa6cc83..a1e6cba7ed 100644
--- a/ui/gtk/edit_packet_comment_dlg.c
+++ b/ui/gtk/edit_packet_comment_dlg.c
@@ -27,7 +27,6 @@
#include <gtk/gtk.h>
-
#include "ui/main_statusbar.h"
#include "ui/gtk/dlg_utils.h"
@@ -37,6 +36,8 @@
#include "ui/gtk/packet_list.h"
#include "ui/gtk/edit_packet_comment_dlg.h"
+#include "globals.h"
+
static GtkWidget *edit_or_add_pkt_comment_dlg = NULL;
static GtkWidget *edit_or_add_capture_comment_dlg = NULL;
diff --git a/ui/gtk/expert_comp_dlg.c b/ui/gtk/expert_comp_dlg.c
index 6bfed3112d..8f6e1270a9 100644
--- a/ui/gtk/expert_comp_dlg.c
+++ b/ui/gtk/expert_comp_dlg.c
@@ -49,6 +49,8 @@
#include "ui/gtk/edit_packet_comment_dlg.h"
#include "ui/gtk/gtkglobals.h"
+#include "globals.h"
+
void register_tap_listener_expert_comp(void);
enum
diff --git a/ui/gtk/expert_comp_table.c b/ui/gtk/expert_comp_table.c
index 53bd0c3dac..beb07bc719 100644
--- a/ui/gtk/expert_comp_table.c
+++ b/ui/gtk/expert_comp_table.c
@@ -51,6 +51,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
const char *packet = "Packet:";
enum
diff --git a/ui/gtk/export_object_dlg.c b/ui/gtk/export_object_dlg.c
index ee0783827e..d56acd9f2b 100644
--- a/ui/gtk/export_object_dlg.c
+++ b/ui/gtk/export_object_dlg.c
@@ -35,6 +35,8 @@
#include <ui/export_object_ui.h>
#include <ui/simple_dialog.h>
+#include "globals.h"
+
#include "dlg_utils.h"
#include "file_dlg.h"
#include "gui_utils.h"
diff --git a/ui/gtk/export_pdu_dlg.c b/ui/gtk/export_pdu_dlg.c
index 929cce92d4..a9a239683d 100644
--- a/ui/gtk/export_pdu_dlg.c
+++ b/ui/gtk/export_pdu_dlg.c
@@ -24,7 +24,6 @@
#include <gtk/gtk.h>
-#include "globals.h"
#include <wiretap/pcap-encap.h>
#include <epan/exported_pdu.h>
diff --git a/ui/gtk/export_sslkeys.c b/ui/gtk/export_sslkeys.c
index 4ac2c51b43..be52722645 100644
--- a/ui/gtk/export_sslkeys.c
+++ b/ui/gtk/export_sslkeys.c
@@ -25,6 +25,7 @@
#include "config.h"
#include <string.h>
+#include <errno.h>
#include <wsutil/file_util.h>
#include <wsutil/str_util.h>
diff --git a/ui/gtk/fileset_dlg.c b/ui/gtk/fileset_dlg.c
index aa2945edfc..e684583309 100644
--- a/ui/gtk/fileset_dlg.c
+++ b/ui/gtk/fileset_dlg.c
@@ -27,7 +27,7 @@
#include "ui/gtk/fileset_dlg.h"
#include "ui/gtk/old-gtk-compat.h"
-
+#include "globals.h"
/*
* Keep a static pointer to the current "File Set" window, if
diff --git a/ui/gtk/filter_expression_save_dlg.c b/ui/gtk/filter_expression_save_dlg.c
index f02037df90..f9da20e3d0 100644
--- a/ui/gtk/filter_expression_save_dlg.c
+++ b/ui/gtk/filter_expression_save_dlg.c
@@ -41,6 +41,7 @@
#include "ui/gtk/filter_autocomplete.h"
#include "ui/gtk/help_dlg.h"
+#include "globals.h"
#include "main.h"
diff --git a/ui/gtk/filter_expression_save_dlg.h b/ui/gtk/filter_expression_save_dlg.h
index 5730b693aa..319e49f76f 100644
--- a/ui/gtk/filter_expression_save_dlg.h
+++ b/ui/gtk/filter_expression_save_dlg.h
@@ -23,7 +23,6 @@
#ifndef __FILTER_EXPRESSIONS_SAVE_DLG_H__
#define __FILTER_EXPRESSIONS_SAVE_DLG_H__
-#include "globals.h"
#include "epan/filter_expressions.h"
enum {
diff --git a/ui/gtk/filter_utils.c b/ui/gtk/filter_utils.c
index d5dc2da64f..1eca642d8c 100644
--- a/ui/gtk/filter_utils.c
+++ b/ui/gtk/filter_utils.c
@@ -32,6 +32,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
void
apply_selected_filter (guint callback_action, const char *filter)
{
diff --git a/ui/gtk/firewall_dlg.c b/ui/gtk/firewall_dlg.c
index 1de148d7f6..f671465c17 100644
--- a/ui/gtk/firewall_dlg.c
+++ b/ui/gtk/firewall_dlg.c
@@ -50,6 +50,8 @@
#include "ui/gtk/old-gtk-compat.h"
#include "ui/gtk/firewall_dlg.h"
+#include "globals.h"
+
#define MAX_RULE_LEN 200
/* Copied from packet_info struct */
diff --git a/ui/gtk/flow_graph.c b/ui/gtk/flow_graph.c
index 018138efaf..0b79053a03 100644
--- a/ui/gtk/flow_graph.c
+++ b/ui/gtk/flow_graph.c
@@ -26,7 +26,6 @@
#include "config.h"
#include <string.h>
-
#include <epan/packet.h>
#include <epan/stat_tap_ui.h>
@@ -39,6 +38,8 @@
#include "ui/gtk/old-gtk-compat.h"
#include "ui/gtk/gtkglobals.h"
+#include "globals.h"
+
void register_tap_listener_flow_graph(void);
static seq_analysis_info_t *graph_analysis = NULL;
diff --git a/ui/gtk/follow_stream.c b/ui/gtk/follow_stream.c
index fe8578347c..e172d67556 100644
--- a/ui/gtk/follow_stream.c
+++ b/ui/gtk/follow_stream.c
@@ -63,6 +63,8 @@
#include "ui/win32/print_win32.h"
#endif
+#include "globals.h"
+
/* static variable declarations to speed up the performance
* of follow_load_text and follow_add_to_gtk_text
*/
diff --git a/ui/gtk/funnel_stat.c b/ui/gtk/funnel_stat.c
index d9c3f2fd21..a17ebef0d6 100644
--- a/ui/gtk/funnel_stat.c
+++ b/ui/gtk/funnel_stat.c
@@ -56,6 +56,8 @@
#include "ui/gtk/gtkglobals.h"
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
void register_tap_listener_gtkfunnel(void);
struct _funnel_text_window_t {
diff --git a/ui/gtk/graph_analysis.c b/ui/gtk/graph_analysis.c
index 407eb3c1ab..e85a044a87 100644
--- a/ui/gtk/graph_analysis.c
+++ b/ui/gtk/graph_analysis.c
@@ -64,6 +64,8 @@
#include "ui/gtk/old-gtk-compat.h"
#include "ui/gtk/stock_icons.h"
+#include "globals.h"
+
/****************************************************************************/
#define MAX_LABEL 50
diff --git a/ui/gtk/hostlist_table.c b/ui/gtk/hostlist_table.c
index 25aa75e99e..7e593cdc21 100644
--- a/ui/gtk/hostlist_table.c
+++ b/ui/gtk/hostlist_table.c
@@ -56,6 +56,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
#define HOST_PTR_KEY "hostlist-pointer"
#define NB_PAGES_KEY "notebook-pages"
#define HL_DLG_HEIGHT 550
diff --git a/ui/gtk/iax2_analysis.c b/ui/gtk/iax2_analysis.c
index a4d3b5b8a4..b52d996586 100644
--- a/ui/gtk/iax2_analysis.c
+++ b/ui/gtk/iax2_analysis.c
@@ -79,6 +79,8 @@
#include "frame_tvbuff.h"
+#include "globals.h"
+
void register_tap_listener_iax2_analysis(void);
enum
@@ -3568,7 +3570,8 @@ void iax2_analysis_cb(GtkAction *action _U_, gpointer user_data _U_)
epan_dissect_init(&edt, cf->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&edt, sfcode);
epan_dissect_run(&edt, cf->cd_t, &cf->phdr,
- frame_tvbuff_new_buffer(fdata, &cf->buf), fdata, NULL);
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, NULL);
/* if it is not an iax2 packet, show an error dialog */
if (!dfilter_apply_edt(sfcode, &edt)) {
diff --git a/ui/gtk/io_stat.c b/ui/gtk/io_stat.c
index a5afd6fcbe..b4c54ce600 100644
--- a/ui/gtk/io_stat.c
+++ b/ui/gtk/io_stat.c
@@ -46,6 +46,7 @@
#include "ui/gtk/filter_autocomplete.h"
#include "ui/main_statusbar.h"
+#include "globals.h"
void register_tap_listener_gtk_iostat(void);
diff --git a/ui/gtk/mac_lte_stat_dlg.c b/ui/gtk/mac_lte_stat_dlg.c
index 6986a53c00..ed3e957fec 100644
--- a/ui/gtk/mac_lte_stat_dlg.c
+++ b/ui/gtk/mac_lte_stat_dlg.c
@@ -44,6 +44,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
void register_tap_listener_mac_lte_stat(void);
/**********************************************/
diff --git a/ui/gtk/main.c b/ui/gtk/main.c
index 79b8c05882..6c0e1c1466 100644
--- a/ui/gtk/main.c
+++ b/ui/gtk/main.c
@@ -533,7 +533,8 @@ get_ip_address_list_from_packet_list_row(gpointer data)
col_custom_prime_edt(&edt, &cfile.cinfo);
epan_dissect_run(&edt, cfile.cd_t, &cfile.phdr,
- frame_tvbuff_new_buffer(fdata, &cfile.buf), fdata, &cfile.cinfo);
+ frame_tvbuff_new_buffer(&cfile.provider, fdata, &cfile.buf),
+ fdata, &cfile.cinfo);
epan_dissect_fill_in_columns(&edt, TRUE, TRUE);
/* First check selected column */
@@ -574,7 +575,7 @@ get_filter_from_packet_list_row_and_column(gpointer data)
col_custom_prime_edt(&edt, &cfile.cinfo);
epan_dissect_run(&edt, cfile.cd_t, &cfile.phdr,
- frame_tvbuff_new_buffer(fdata, &cfile.buf),
+ frame_tvbuff_new_buffer(&cfile.provider, fdata, &cfile.buf),
fdata, &cfile.cinfo);
epan_dissect_fill_in_columns(&edt, TRUE, TRUE);
diff --git a/ui/gtk/main.h b/ui/gtk/main.h
index 4c3064f5cd..6444dfad6b 100644
--- a/ui/gtk/main.h
+++ b/ui/gtk/main.h
@@ -23,7 +23,7 @@
#ifndef __MAIN_H__
#define __MAIN_H__
-#include "globals.h"
+#include "cfile.h"
#include "capture_opts.h"
/** @defgroup main_window_group Main window
diff --git a/ui/gtk/main_filter_toolbar.c b/ui/gtk/main_filter_toolbar.c
index b555cd55c4..24b8c862d4 100644
--- a/ui/gtk/main_filter_toolbar.c
+++ b/ui/gtk/main_filter_toolbar.c
@@ -51,6 +51,8 @@
#include "main_filter_toolbar.h"
#include "filter_expression_save_dlg.h"
+#include "globals.h"
+
#define MENU_BAR_PATH_FILE_OPEN "/Menubar/FileMenu/Open"
#define MENU_BAR_PATH_EDIT_COPY_AS_FLT "/Menubar/EditMenu/Copy/AsFilter"
#define MENU_BAR_PATH_ANALYZE_DISPLAY_FLT "/Menubar/AnalyzeMenu/DisplayFilters"
diff --git a/ui/gtk/main_statusbar.c b/ui/gtk/main_statusbar.c
index 4974a25e83..45f1ef0129 100644
--- a/ui/gtk/main_statusbar.c
+++ b/ui/gtk/main_statusbar.c
@@ -65,6 +65,8 @@
#include "ui/gtk/menus.h"
#include "ui/gtk/edit_packet_comment_dlg.h"
+#include "globals.h"
+
/*
* The order below defines the priority of info bar contexts.
*/
diff --git a/ui/gtk/main_toolbar.c b/ui/gtk/main_toolbar.c
index 3d107a82dd..bec7e1ec84 100644
--- a/ui/gtk/main_toolbar.c
+++ b/ui/gtk/main_toolbar.c
@@ -59,6 +59,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
static gboolean toolbar_init = FALSE;
#ifdef HAVE_LIBPCAP
diff --git a/ui/gtk/main_welcome.c b/ui/gtk/main_welcome.c
index 27b0f21434..8ab92a6f4a 100644
--- a/ui/gtk/main_welcome.c
+++ b/ui/gtk/main_welcome.c
@@ -21,6 +21,7 @@
#include "config.h"
+#include <errno.h>
#include <gtk/gtk.h>
@@ -79,6 +80,8 @@
#include "airpcap_gui_utils.h"
#endif
+#include "file.h"
+
/* XXX */
static GtkWidget *welcome_hb = NULL;
static GtkWidget *header_lb = NULL;
diff --git a/ui/gtk/manual_addr_resolv.c b/ui/gtk/manual_addr_resolv.c
index 085dc0637c..fbb28d3782 100644
--- a/ui/gtk/manual_addr_resolv.c
+++ b/ui/gtk/manual_addr_resolv.c
@@ -39,6 +39,8 @@
#include "ui/gtk/packet_win.h"
#include "simple_dialog.h"
+#include "globals.h"
+
GtkWidget *man_addr_resolv_dlg = NULL;
static void
diff --git a/ui/gtk/packet_history.c b/ui/gtk/packet_history.c
index 3b7dfefc0d..9e5b7a05b7 100644
--- a/ui/gtk/packet_history.c
+++ b/ui/gtk/packet_history.c
@@ -22,13 +22,12 @@
#include "config.h"
-
#include <gtk/gtk.h>
-
#include "ui/gtk/main.h"
#include "ui/gtk/packet_history.h"
+#include "globals.h"
static GList *history_current = NULL;
static GList *history_list = NULL;
diff --git a/ui/gtk/packet_list.c b/ui/gtk/packet_list.c
index 5504c7db07..566e2e4abf 100644
--- a/ui/gtk/packet_list.c
+++ b/ui/gtk/packet_list.c
@@ -61,6 +61,8 @@
#include <wsutil/str_util.h>
+#include "globals.h"
+
#define COLUMN_WIDTH_MIN 40
#define MAX_COMMENTS_TO_FETCH 20000000 /* Arbitrary */
diff --git a/ui/gtk/packet_list_store.c b/ui/gtk/packet_list_store.c
index 5af1dd4df1..57f2ba1bdc 100644
--- a/ui/gtk/packet_list_store.c
+++ b/ui/gtk/packet_list_store.c
@@ -1176,7 +1176,9 @@ packet_list_dissect_and_cache_record(PacketList *packet_list, PacketListRecord *
* XXX - need to catch an OutOfMemoryError exception and
* attempt to recover from it.
*/
- epan_dissect_run(&edt, cfile.cd_t, &phdr, frame_tvbuff_new_buffer(fdata, &buf), fdata, cinfo);
+ epan_dissect_run(&edt, cfile.cd_t, &phdr,
+ frame_tvbuff_new_buffer(&cfile.provider, fdata, &buf),
+ fdata, cinfo);
if (dissect_columns) {
/* "Stringify" non frame_data vals */
diff --git a/ui/gtk/packet_panes.c b/ui/gtk/packet_panes.c
index ac6e7b582e..37b875a887 100644
--- a/ui/gtk/packet_panes.c
+++ b/ui/gtk/packet_panes.c
@@ -71,6 +71,7 @@
#include "ui/gtk/old-gtk-compat.h"
#endif
+#include "globals.h"
#define E_BYTE_VIEW_TREE_PTR "byte_view_tree_ptr"
#define E_BYTE_VIEW_TREE_VIEW_PTR "byte_view_tree_view_ptr"
diff --git a/ui/gtk/packet_win.c b/ui/gtk/packet_win.c
index 98d8bab527..6cf084ac2c 100644
--- a/ui/gtk/packet_win.c
+++ b/ui/gtk/packet_win.c
@@ -68,6 +68,8 @@
#include "frame_tvbuff.h"
+#include "globals.h"
+
#define BV_SIZE 75
#define TV_SIZE 95
@@ -157,7 +159,9 @@ redissect_packet_window(gpointer object, gpointer user_data _U_)
proto_tree_draw(NULL, DataPtr->tree_view);
epan_dissect_cleanup(&(DataPtr->edt));
epan_dissect_init(&(DataPtr->edt), cfile.epan, TRUE, TRUE);
- epan_dissect_run(&(DataPtr->edt), cfile.cd_t, &DataPtr->phdr, frame_tvbuff_new(DataPtr->frame, DataPtr->pd), DataPtr->frame, NULL);
+ epan_dissect_run(&(DataPtr->edt), cfile.cd_t, &DataPtr->phdr,
+ frame_tvbuff_new(&cfile.provider, DataPtr->frame, DataPtr->pd),
+ DataPtr->frame, NULL);
add_byte_views(&(DataPtr->edt), DataPtr->tree_view, DataPtr->bv_nb_ptr);
proto_tree_draw(DataPtr->edt.tree, DataPtr->tree_view);
@@ -226,7 +230,7 @@ void new_packet_window(GtkWidget *w _U_, gboolean reference, gboolean editable _
epan_dissect_init(&(DataPtr->edt), cfile.epan, TRUE, TRUE);
epan_dissect_run(&(DataPtr->edt), cfile.cd_t, &DataPtr->phdr,
- frame_tvbuff_new(DataPtr->frame, DataPtr->pd),
+ frame_tvbuff_new(&cfile.provider, DataPtr->frame, DataPtr->pd),
DataPtr->frame, &cfile.cinfo);
epan_dissect_fill_in_columns(&(DataPtr->edt), FALSE, TRUE);
diff --git a/ui/gtk/prefs_dlg.c b/ui/gtk/prefs_dlg.c
index d597365837..99098eb230 100644
--- a/ui/gtk/prefs_dlg.c
+++ b/ui/gtk/prefs_dlg.c
@@ -66,6 +66,8 @@
#endif
#endif
+#include "globals.h"
+
static void prefs_main_ok_cb(GtkWidget *, gpointer);
static void prefs_main_apply_cb(GtkWidget *, gpointer);
static void prefs_main_save_cb(GtkWidget *, gpointer);
diff --git a/ui/gtk/prefs_gui.c b/ui/gtk/prefs_gui.c
index 072d177fa1..72ae5ec5c2 100644
--- a/ui/gtk/prefs_gui.c
+++ b/ui/gtk/prefs_gui.c
@@ -43,6 +43,7 @@
#include "ui/gtk/webbrowser.h"
#include "ui/gtk/main_welcome.h"
+#include "globals.h"
static gint fetch_enum_value(gpointer control, const enum_val_t *enumvals);
static gboolean fileopen_dir_changed_cb(GtkWidget *myentry, GdkEvent *event _U_, gpointer parent_w _U_);
diff --git a/ui/gtk/print_dlg.c b/ui/gtk/print_dlg.c
index e8f7b5814a..ed88fea9e5 100644
--- a/ui/gtk/print_dlg.c
+++ b/ui/gtk/print_dlg.c
@@ -35,6 +35,8 @@
#include "ui/util.h"
#include <wsutil/file_util.h>
+#include "globals.h"
+
#include "ui/gtk/gtkglobals.h"
#include "ui/gtk/keys.h"
#include "ui/gtk/gui_utils.h"
diff --git a/ui/gtk/profile_dlg.c b/ui/gtk/profile_dlg.c
index 9f51c79812..d6ee0bb2ff 100644
--- a/ui/gtk/profile_dlg.c
+++ b/ui/gtk/profile_dlg.c
@@ -23,6 +23,8 @@
#include "config.h"
+#include <errno.h>
+
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
#if GTK_CHECK_VERSION(3,0,0)
diff --git a/ui/gtk/proto_dlg.c b/ui/gtk/proto_dlg.c
index 012e128be8..e2a03588fe 100644
--- a/ui/gtk/proto_dlg.c
+++ b/ui/gtk/proto_dlg.c
@@ -29,10 +29,12 @@
# include <gdk/gdkkeysyms-compat.h>
#endif
+#include <epan/packet.h>
#include <epan/prefs.h>
-#include <wsutil/filesystem.h>
#include <epan/disabled_protos.h>
+#include <wsutil/filesystem.h>
+
#include "ui/util.h"
#include "ui/gtk/main.h"
@@ -42,6 +44,8 @@
#include "ui/gtk/help_dlg.h"
#include "simple_dialog.h"
+#include "globals.h"
+
static gboolean set_proto_selection(GtkWidget *);
static gboolean revert_proto_selection(void);
diff --git a/ui/gtk/response_time_delay_table.c b/ui/gtk/response_time_delay_table.c
index e7d8b94ca4..7e4f934299 100644
--- a/ui/gtk/response_time_delay_table.c
+++ b/ui/gtk/response_time_delay_table.c
@@ -42,6 +42,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
enum
{
TYPE_COLUMN,
diff --git a/ui/gtk/rlc_lte_stat_dlg.c b/ui/gtk/rlc_lte_stat_dlg.c
index fde6cf5276..134661d996 100644
--- a/ui/gtk/rlc_lte_stat_dlg.c
+++ b/ui/gtk/rlc_lte_stat_dlg.c
@@ -54,6 +54,7 @@
#include "ui/recent.h"
+#include "globals.h"
void register_tap_listener_rlc_lte_stat(void);
diff --git a/ui/gtk/rpc_stat.c b/ui/gtk/rpc_stat.c
index 175460c590..4f1b456878 100644
--- a/ui/gtk/rpc_stat.c
+++ b/ui/gtk/rpc_stat.c
@@ -51,6 +51,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
void register_tap_listener_gtkrpcstat(void);
/* used to keep track of the statistics for an entire program interface */
diff --git a/ui/gtk/rtp_analysis.c b/ui/gtk/rtp_analysis.c
index a3f3435631..3f05f46f4a 100644
--- a/ui/gtk/rtp_analysis.c
+++ b/ui/gtk/rtp_analysis.c
@@ -62,7 +62,6 @@
#include "ui/simple_dialog.h"
#include <wsutil/utf8_entities.h>
-
#include "ui/gtk/gtkglobals.h"
#include "ui/gtk/dlg_utils.h"
#include "ui/gtk/file_dlg.h"
@@ -85,6 +84,8 @@
#include "frame_tvbuff.h"
+#include "globals.h"
+
void register_tap_listener_rtp_analysis(void);
enum
@@ -3899,7 +3900,9 @@ rtp_analysis_cb(GtkAction *action _U_, gpointer user_data _U_)
epan_dissect_init(&edt, cf->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&edt, sfcode);
epan_dissect_prime_with_hfid(&edt, hfid_rtp_ssrc);
- epan_dissect_run(&edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(fdata, &cf->buf), fdata, NULL);
+ epan_dissect_run(&edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, NULL);
/*
* Packet must be an RTPv2 packet with an SSRC; we use the filter to
diff --git a/ui/gtk/sctp_assoc_analyse.c b/ui/gtk/sctp_assoc_analyse.c
index b942cf3b72..4d6d98fed1 100644
--- a/ui/gtk/sctp_assoc_analyse.c
+++ b/ui/gtk/sctp_assoc_analyse.c
@@ -39,6 +39,8 @@
#include "frame_tvbuff.h"
+#include "globals.h"
+
static sctp_assoc_info_t static_assoc;
void
@@ -1001,7 +1003,9 @@ sctp_analyse_cb(struct sctp_analyse *u_data, gboolean ext)
epan_dissect_init(&edt, cf->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&edt, sfcode);
- epan_dissect_run(&edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(fdata, &cf->buf), fdata, NULL);
+ epan_dissect_run(&edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, NULL);
/* if it is not an sctp packet, show the dialog */
if (!dfilter_apply_edt(sfcode, &edt)) {
diff --git a/ui/gtk/sctp_byte_graph_dlg.c b/ui/gtk/sctp_byte_graph_dlg.c
index 2cef094fe5..8970e011c8 100644
--- a/ui/gtk/sctp_byte_graph_dlg.c
+++ b/ui/gtk/sctp_byte_graph_dlg.c
@@ -40,6 +40,8 @@
#include "ui/gtk/stock_icons.h"
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
#define DEFAULT_PIXELS_PER_TICK 2
#define MAX_PIXELS_PER_TICK 4
#define AUTO_MAX_YSCALE 0
diff --git a/ui/gtk/sctp_chunk_stat.c b/ui/gtk/sctp_chunk_stat.c
index edb5de543d..54b2b1af5d 100644
--- a/ui/gtk/sctp_chunk_stat.c
+++ b/ui/gtk/sctp_chunk_stat.c
@@ -27,7 +27,6 @@
#include <string.h>
-
#include <epan/to_str.h>
#include <epan/value_string.h>
#include <epan/tap.h>
@@ -41,6 +40,8 @@
#include "ui/gtk/main.h"
#include "ui/gtk/sctp_stat_gtk.h"
+#include "globals.h"
+
void register_tap_listener_sctpstat(void);
static void sctpstat_init(const char *opt_arg, void *userdata);
diff --git a/ui/gtk/sctp_chunk_stat_dlg.c b/ui/gtk/sctp_chunk_stat_dlg.c
index 7ff8fb32e4..8acf310d03 100644
--- a/ui/gtk/sctp_chunk_stat_dlg.c
+++ b/ui/gtk/sctp_chunk_stat_dlg.c
@@ -28,12 +28,13 @@
#include "epan/to_str.h"
-
#include "ui/gtk/gui_utils.h"
#include "ui/gtk/main.h"
#include "ui/gtk/sctp_stat_gtk.h"
#include "ui/gtk/stock_icons.h"
+#include "globals.h"
+
static GtkWidget *clist = NULL;
static GList *last_list = NULL;
static sctp_assoc_info_t *selected_stream = NULL; /* current selection */
diff --git a/ui/gtk/sctp_error_dlg.c b/ui/gtk/sctp_error_dlg.c
index e9c72137f9..1e2df622f4 100644
--- a/ui/gtk/sctp_error_dlg.c
+++ b/ui/gtk/sctp_error_dlg.c
@@ -32,6 +32,8 @@
#include "ui/gtk/sctp_stat_gtk.h"
#include "ui/gtk/stock_icons.h"
+#include "globals.h"
+
static GtkWidget *sctp_error_dlg=NULL;
static GtkWidget *clist = NULL;
static GList *last_list = NULL;
diff --git a/ui/gtk/sctp_graph_dlg.c b/ui/gtk/sctp_graph_dlg.c
index 21809e7c0d..9fde663b14 100644
--- a/ui/gtk/sctp_graph_dlg.c
+++ b/ui/gtk/sctp_graph_dlg.c
@@ -39,6 +39,8 @@
#include "ui/gtk/stock_icons.h"
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
#define DEFAULT_PIXELS_PER_TICK 2
#define MAX_PIXELS_PER_TICK 4
#define AUTO_MAX_YSCALE 0
diff --git a/ui/gtk/sctp_stat_dlg.c b/ui/gtk/sctp_stat_dlg.c
index de1362ac97..04ade4faa1 100644
--- a/ui/gtk/sctp_stat_dlg.c
+++ b/ui/gtk/sctp_stat_dlg.c
@@ -38,6 +38,8 @@
#include "ui/gtk/old-gtk-compat.h"
#include "ui/gtk/stock_icons.h"
+#include "globals.h"
+
static GtkWidget *sctp_stat_dlg = NULL;
static GtkWidget *clist = NULL;
static GList *last_list = NULL;
diff --git a/ui/gtk/service_response_time_table.c b/ui/gtk/service_response_time_table.c
index 590c01a2c7..1a3884e3cd 100644
--- a/ui/gtk/service_response_time_table.c
+++ b/ui/gtk/service_response_time_table.c
@@ -45,6 +45,8 @@
#include "epan/conversation.h"
#include "epan/dissectors/packet-scsi.h"
+#include "globals.h"
+
#define NANOSECS_PER_SEC 1000000000
enum
diff --git a/ui/gtk/simple_stattable.c b/ui/gtk/simple_stattable.c
index 7ba64658f0..3ab99ca084 100644
--- a/ui/gtk/simple_stattable.c
+++ b/ui/gtk/simple_stattable.c
@@ -42,6 +42,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
typedef struct _gtk_simplestat_t {
GtkWidget *vbox;
GtkWidget *win;
diff --git a/ui/gtk/stats_tree_stat.c b/ui/gtk/stats_tree_stat.c
index b2420fd96b..9be6bbdd07 100644
--- a/ui/gtk/stats_tree_stat.c
+++ b/ui/gtk/stats_tree_stat.c
@@ -62,6 +62,8 @@
#include "ui/win32/file_dlg_win32.h"
#endif
+#include "globals.h"
+
void register_tap_listener_stats_tree_stat(void);
struct _st_node_pres {
diff --git a/ui/gtk/summary_dlg.c b/ui/gtk/summary_dlg.c
index 990b9df8e5..2a7bfe7f99 100644
--- a/ui/gtk/summary_dlg.c
+++ b/ui/gtk/summary_dlg.c
@@ -26,8 +26,6 @@
#include <gtk/gtk.h>
-
-
#include <version_info.h>
#include "../../file.h"
@@ -45,6 +43,8 @@
#include "ui/gtk/help_dlg.h"
#include "ui/gtk/packet_list.h"
+#include "globals.h"
+
#define SUM_STR_MAX 1024
#define FILTER_SNIP_LEN 50
#define SHB_STR_SNIP_LEN 50
diff --git a/ui/gtk/supported_protos_dlg.c b/ui/gtk/supported_protos_dlg.c
index d1eda40d52..e34aad9027 100644
--- a/ui/gtk/supported_protos_dlg.c
+++ b/ui/gtk/supported_protos_dlg.c
@@ -27,17 +27,14 @@
#include <gtk/gtk.h>
+#include <epan/proto.h>
#include <epan/prefs.h>
-#include "../../globals.h"
-
#include "ui/gtk/supported_protos_dlg.h"
#include "ui/gtk/gui_utils.h"
#include "ui/gtk/dlg_utils.h"
#include "ui/gtk/font_utils.h"
-
-
static const char *proto_supported =
"The following %d protocols (and packet types) are currently\n"
"supported by Wireshark:\n\n";
diff --git a/ui/gtk/uat_gui.c b/ui/gtk/uat_gui.c
index d18e840d62..0b67d38d26 100644
--- a/ui/gtk/uat_gui.c
+++ b/ui/gtk/uat_gui.c
@@ -68,6 +68,8 @@
#include "ui/gtk/old-gtk-compat.h"
#include "ui/gtk/packet_win.h"
+#include "globals.h"
+
# define BUTTON_SIZE_X -1
# define BUTTON_SIZE_Y -1
diff --git a/ui/gtk/wlan_stat_dlg.c b/ui/gtk/wlan_stat_dlg.c
index e95254c2de..56e5d56306 100644
--- a/ui/gtk/wlan_stat_dlg.c
+++ b/ui/gtk/wlan_stat_dlg.c
@@ -50,6 +50,8 @@
#include "ui/gtk/old-gtk-compat.h"
+#include "globals.h"
+
void register_tap_listener_wlanstat(void);
enum {
diff --git a/ui/proto_hier_stats.c b/ui/proto_hier_stats.c
index e58c6f1ba5..66a550b491 100644
--- a/ui/proto_hier_stats.c
+++ b/ui/proto_hier_stats.c
@@ -165,7 +165,9 @@ process_record(capture_file *cf, frame_data *frame, column_info *cinfo, ph_stats
epan_dissect_init(&edt, cf->epan, TRUE, FALSE);
/* Don't fake protocols. We need them for the protocol hierarchy */
epan_dissect_fake_protocols(&edt, FALSE);
- epan_dissect_run(&edt, cf->cd_t, &phdr, frame_tvbuff_new_buffer(frame, &buf), frame, cinfo);
+ epan_dissect_run(&edt, cf->cd_t, &phdr,
+ frame_tvbuff_new_buffer(&cf->provider, frame, &buf),
+ frame, cinfo);
/* Get stats from this protocol tree */
process_tree(edt.tree, ps);
diff --git a/ui/qt/address_editor_frame.cpp b/ui/qt/address_editor_frame.cpp
index a56464b76e..45f4ad0ec2 100644
--- a/ui/qt/address_editor_frame.cpp
+++ b/ui/qt/address_editor_frame.cpp
@@ -83,7 +83,8 @@ void AddressEditorFrame::editAddresses(CaptureFile &cf, int column)
col_custom_prime_edt(&edt, &cap_file_->cinfo);
epan_dissect_run(&edt, cap_file_->cd_t, &cap_file_->phdr,
- frame_tvbuff_new_buffer(cap_file_->current_frame, &cap_file_->buf), cap_file_->current_frame, &cap_file_->cinfo);
+ frame_tvbuff_new_buffer(&cap_file_->provider, cap_file_->current_frame, &cap_file_->buf),
+ cap_file_->current_frame, &cap_file_->cinfo);
epan_dissect_fill_in_columns(&edt, TRUE, TRUE);
/* First check selected column */
diff --git a/ui/qt/export_pdu_dialog.cpp b/ui/qt/export_pdu_dialog.cpp
index 7316c680a7..98edce311f 100644
--- a/ui/qt/export_pdu_dialog.cpp
+++ b/ui/qt/export_pdu_dialog.cpp
@@ -25,7 +25,6 @@
#include "export_pdu_dialog.h"
#include <ui_export_pdu_dialog.h>
-#include "globals.h"
#include <wiretap/pcap-encap.h>
#include <epan/tap.h>
diff --git a/ui/qt/gsm_map_summary_dialog.cpp b/ui/qt/gsm_map_summary_dialog.cpp
index e32ee545f4..a7a00d62a1 100644
--- a/ui/qt/gsm_map_summary_dialog.cpp
+++ b/ui/qt/gsm_map_summary_dialog.cpp
@@ -30,7 +30,6 @@
#include <glib.h>
-#include "globals.h"
#include "summary.h"
#include <epan/packet.h>
diff --git a/ui/qt/iax2_analysis_dialog.cpp b/ui/qt/iax2_analysis_dialog.cpp
index 92707f8cd3..2958ad95ab 100644
--- a/ui/qt/iax2_analysis_dialog.cpp
+++ b/ui/qt/iax2_analysis_dialog.cpp
@@ -335,7 +335,8 @@ Iax2AnalysisDialog::Iax2AnalysisDialog(QWidget &parent, CaptureFile &cf) :
epan_dissect_init(&edt, cap_file_.capFile()->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&edt, sfcode);
epan_dissect_run(&edt, cap_file_.capFile()->cd_t, &cap_file_.capFile()->phdr,
- frame_tvbuff_new_buffer(fdata, &cap_file_.capFile()->buf), fdata, NULL);
+ frame_tvbuff_new_buffer(&cap_file_.capFile()->provider, fdata, &cap_file_.capFile()->buf),
+ fdata, NULL);
// This shouldn't happen (the menu item should be disabled) but check anyway
if (!dfilter_apply_edt(sfcode, &edt)) {
diff --git a/ui/qt/lte_rlc_graph_dialog.cpp b/ui/qt/lte_rlc_graph_dialog.cpp
index 71478dddfb..922a9bcb37 100644
--- a/ui/qt/lte_rlc_graph_dialog.cpp
+++ b/ui/qt/lte_rlc_graph_dialog.cpp
@@ -40,8 +40,6 @@
#include "wireshark_application.h"
#include "simple_dialog.h"
-#include "globals.h"
-
#include <epan/dissectors/packet-rlc-lte.h>
#include <ui/tap-rlc-graph.h>
diff --git a/ui/qt/models/packet_list_record.cpp b/ui/qt/models/packet_list_record.cpp
index 8e1551071b..176e6d5998 100644
--- a/ui/qt/models/packet_list_record.cpp
+++ b/ui/qt/models/packet_list_record.cpp
@@ -185,7 +185,9 @@ void PacketListRecord::dissect(capture_file *cap_file, bool dissect_color)
* XXX - need to catch an OutOfMemoryError exception and
* attempt to recover from it.
*/
- epan_dissect_run(&edt, cap_file->cd_t, &phdr, frame_tvbuff_new_buffer(fdata_, &buf), fdata_, cinfo);
+ epan_dissect_run(&edt, cap_file->cd_t, &phdr,
+ frame_tvbuff_new_buffer(&cap_file->provider, fdata_, &buf),
+ fdata_, cinfo);
if (dissect_columns) {
/* "Stringify" non frame_data vals */
diff --git a/ui/qt/mtp3_summary_dialog.cpp b/ui/qt/mtp3_summary_dialog.cpp
index b97294f78e..9b30cbd533 100644
--- a/ui/qt/mtp3_summary_dialog.cpp
+++ b/ui/qt/mtp3_summary_dialog.cpp
@@ -30,7 +30,6 @@
#include <glib.h>
-#include "globals.h"
#include "summary.h"
#include <epan/tap.h>
diff --git a/ui/qt/packet_dialog.cpp b/ui/qt/packet_dialog.cpp
index ea17a20cd4..bf3e481b58 100644
--- a/ui/qt/packet_dialog.cpp
+++ b/ui/qt/packet_dialog.cpp
@@ -63,7 +63,7 @@ PacketDialog::PacketDialog(QWidget &parent, CaptureFile &cf, frame_data *fdata)
col_custom_prime_edt(&edt_, &(cap_file_.capFile()->cinfo));
epan_dissect_run(&edt_, cap_file_.capFile()->cd_t, &phdr_,
- frame_tvbuff_new(fdata, packet_data_),
+ frame_tvbuff_new(&cap_file_.capFile()->provider, fdata, packet_data_),
fdata, &(cap_file_.capFile()->cinfo));
epan_dissect_fill_in_columns(&edt_, TRUE, TRUE);
diff --git a/ui/qt/packet_list.cpp b/ui/qt/packet_list.cpp
index 7163a10a20..a7966b7f33 100644
--- a/ui/qt/packet_list.cpp
+++ b/ui/qt/packet_list.cpp
@@ -1024,7 +1024,9 @@ QString PacketList::getFilterFromRowAndColumn()
epan_dissect_init(&edt, cap_file_->epan, have_custom_cols(&cap_file_->cinfo), FALSE);
col_custom_prime_edt(&edt, &cap_file_->cinfo);
- epan_dissect_run(&edt, cap_file_->cd_t, &cap_file_->phdr, frame_tvbuff_new_buffer(fdata, &cap_file_->buf), fdata, &cap_file_->cinfo);
+ epan_dissect_run(&edt, cap_file_->cd_t, &cap_file_->phdr,
+ frame_tvbuff_new_buffer(&cap_file_->provider, fdata, &cap_file_->buf),
+ fdata, &cap_file_->cinfo);
epan_dissect_fill_in_columns(&edt, TRUE, TRUE);
if ((cap_file_->cinfo.columns[ctx_column_].col_custom_occurrence) ||
diff --git a/ui/qt/rtp_analysis_dialog.cpp b/ui/qt/rtp_analysis_dialog.cpp
index 145fad1f75..bdc8c44179 100644
--- a/ui/qt/rtp_analysis_dialog.cpp
+++ b/ui/qt/rtp_analysis_dialog.cpp
@@ -1607,7 +1607,8 @@ void RtpAnalysisDialog::findStreams()
epan_dissect_prime_with_dfilter(&edt, sfcode);
epan_dissect_prime_with_hfid(&edt, hfid_rtp_ssrc);
epan_dissect_run(&edt, cap_file_.capFile()->cd_t, &cap_file_.capFile()->phdr,
- frame_tvbuff_new_buffer(fdata, &cap_file_.capFile()->buf), fdata, NULL);
+ frame_tvbuff_new_buffer(&cap_file_.capFile()->provider, fdata, &cap_file_.capFile()->buf),
+ fdata, NULL);
/*
* Packet must be an RTPv2 packet with an SSRC; we use the filter to
diff --git a/ui/qt/utils/frame_information.cpp b/ui/qt/utils/frame_information.cpp
index c81b6736c2..5f2aa8277e 100644
--- a/ui/qt/utils/frame_information.cpp
+++ b/ui/qt/utils/frame_information.cpp
@@ -61,7 +61,7 @@ void FrameInformation::loadFrameTree()
col_custom_prime_edt(&edt_, &(cap_file_->capFile()->cinfo));
epan_dissect_run(&edt_, cap_file_->capFile()->cd_t, &phdr_,
- frame_tvbuff_new(fi_, packet_data_),
+ frame_tvbuff_new(&cap_file_->capFile()->provider, fi_, packet_data_),
fi_, &(cap_file_->capFile()->cinfo));
epan_dissect_fill_in_columns(&edt_, TRUE, TRUE);
}
diff --git a/ui/tap-rlc-graph.c b/ui/tap-rlc-graph.c
index 5ff9676e9d..817b4c08e9 100644
--- a/ui/tap-rlc-graph.c
+++ b/ui/tap-rlc-graph.c
@@ -146,7 +146,9 @@ rlc_lte_tap_info *select_rlc_lte_session(capture_file *cf,
epan_dissect_init(&edt, cf->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&edt, sfcode);
- epan_dissect_run_with_taps(&edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(fdata, &cf->buf), fdata, NULL);
+ epan_dissect_run_with_taps(&edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, NULL);
rel_ts = edt.pi.rel_ts;
epan_dissect_cleanup(&edt);
remove_tap_listener(&th);
diff --git a/ui/tap-rtp-common.c b/ui/tap-rtp-common.c
index 28fea44e24..2fd78d70b9 100644
--- a/ui/tap-rtp-common.c
+++ b/ui/tap-rtp-common.c
@@ -20,7 +20,6 @@
#include <glib.h>
#include <math.h>
-#include "globals.h"
#include <string.h>
#include <epan/rtp_pt.h>
diff --git a/ui/tap-tcp-stream.c b/ui/tap-tcp-stream.c
index 69b7a87ee7..3f17c43896 100644
--- a/ui/tap-tcp-stream.c
+++ b/ui/tap-tcp-stream.c
@@ -319,7 +319,9 @@ select_tcpip_session(capture_file *cf, struct segment *hdrs)
epan_dissect_init(&edt, cf->epan, TRUE, FALSE);
epan_dissect_prime_with_dfilter(&edt, sfcode);
- epan_dissect_run_with_taps(&edt, cf->cd_t, &cf->phdr, frame_tvbuff_new_buffer(fdata, &cf->buf), fdata, NULL);
+ epan_dissect_run_with_taps(&edt, cf->cd_t, &cf->phdr,
+ frame_tvbuff_new_buffer(&cf->provider, fdata, &cf->buf),
+ fdata, NULL);
rel_ts = edt.pi.rel_ts;
epan_dissect_cleanup(&edt);
remove_tap_listener(&th);
diff --git a/ui/tap_export_pdu.c b/ui/tap_export_pdu.c
index d5e9b23a49..e538545140 100644
--- a/ui/tap_export_pdu.c
+++ b/ui/tap_export_pdu.c
@@ -22,8 +22,6 @@
#include "config.h"
-
-#include "globals.h"
#include "wiretap/pcap-encap.h"
#include "wsutil/os_version_info.h"
#include "version_info.h"
diff --git a/ui/win32/file_dlg_win32.c b/ui/win32/file_dlg_win32.c
index 5ac3afecb9..ebfc575900 100644
--- a/ui/win32/file_dlg_win32.c
+++ b/ui/win32/file_dlg_win32.c
@@ -19,7 +19,7 @@
#include <richedit.h>
#include <strsafe.h>
-#include "file.h"
+#include "globals.h"
#include "wsutil/file_util.h"
#include "wsutil/str_util.h"