diff options
author | Sake Blok <sake@euronet.nl> | 2022-02-27 15:35:58 +0100 |
---|---|---|
committer | Sake Blok <sake.blok@syn-bit.nl> | 2023-01-06 23:15:48 +0000 |
commit | f870c6085dc3d34c68eae36b5d6de860c6a7b11a (patch) | |
tree | fdfc7fe4f6cf332e658b8a6dea46d794ca898f77 /tshark.c | |
parent | 693dc40936a9eeac0e1c10ff496b3d327e25642b (diff) |
epan: Allow nested dependent packets
Save all dependent frames when there are multiple levels
of reassembly.
This is a retry of !6329, combined with the fix in !6509 which
were reverted in !6545.
epan: fix a segfault, introduced in !6329
Diffstat (limited to 'tshark.c')
-rw-r--r-- | tshark.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -3050,14 +3050,14 @@ process_packet_first_pass(capture_file *cf, epan_dissect_t *edt, cf->provider.prev_cap = cf->provider.prev_dis = frame_data_sequence_add(cf->provider.frames, &fdlocal); /* If we're not doing dissection then there won't be any dependent frames. - * More importantly, edt.pi.dependent_frames won't be initialized because + * More importantly, edt.pi.fd.dependent_frames won't be initialized because * epan hasn't been initialized. * if we *are* doing dissection, then mark the dependent frames, but only * if a display filter was given and it matches this packet. */ if (edt && cf->dfcode) { if (dfilter_apply_edt(cf->dfcode, edt)) { - g_slist_foreach(edt->pi.dependent_frames, find_and_mark_frame_depended_upon, cf->provider.frames); + g_slist_foreach(edt->pi.fd->dependent_frames, find_and_mark_frame_depended_upon, cf->provider.frames); } if (selected_frame_number != 0 && selected_frame_number == cf->count + 1) { |