aboutsummaryrefslogtreecommitdiffstats
path: root/tshark.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2014-05-24 17:04:44 -0700
committerGuy Harris <guy@alum.mit.edu>2014-05-25 00:05:07 +0000
commit318cf8a6782d8911c7c2891c395062f98eb0a316 (patch)
treec078f54d1ac8b39bb0b8bbe99226394bbcb98055 /tshark.c
parent6dffc3b7e364b7446c30db54d2193476a5f0fa93 (diff)
Add support for dissecting non-packet records.
Add a dissector table indexed by the file type, and, for the file-type-specific records, have the frame dissector skip the usual pseudo-header processing, as the pseudo-header has a file-type-specific record subtype in it, and call the dissector for that file type's records. Change-Id: Ibe97cf6340ffb0dabc08f355891bc346391b91f9 Reviewed-on: https://code.wireshark.org/review/1782 Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'tshark.c')
-rw-r--r--tshark.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/tshark.c b/tshark.c
index f52b00502f..e2c2047287 100644
--- a/tshark.c
+++ b/tshark.c
@@ -2918,7 +2918,7 @@ process_packet_first_pass(capture_file *cf, epan_dissect_t *edt,
ref = &ref_frame;
}
- epan_dissect_run(edt, whdr, frame_tvbuff_new(&fdlocal, pd), &fdlocal, NULL);
+ epan_dissect_run(edt, cf->cd_t, whdr, frame_tvbuff_new(&fdlocal, pd), &fdlocal, NULL);
/* Run the read filter if we have one. */
if (cf->rfcode)
@@ -3001,7 +3001,7 @@ process_packet_second_pass(capture_file *cf, epan_dissect_t *edt, frame_data *fd
ref = &ref_frame;
}
- epan_dissect_run_with_taps(edt, phdr, frame_tvbuff_new_buffer(fdata, buf), fdata, cinfo);
+ epan_dissect_run_with_taps(edt, cf->cd_t, phdr, frame_tvbuff_new_buffer(fdata, buf), fdata, cinfo);
/* Run the read/display filter if we have one. */
if (cf->dfcode)
@@ -3534,7 +3534,7 @@ process_packet(capture_file *cf, epan_dissect_t *edt, gint64 offset, struct wtap
ref = &ref_frame;
}
- epan_dissect_run_with_taps(edt, whdr, frame_tvbuff_new(&fdata, pd), &fdata, cinfo);
+ epan_dissect_run_with_taps(edt, cf->cd_t, whdr, frame_tvbuff_new(&fdata, pd), &fdata, cinfo);
/* Run the filter if we have it. */
if (cf->dfcode)