path: root/file.c
diff options
authorJim Young <jyoung@gsu.edu>2017-01-30 02:45:15 -0500
committerAnders Broman <a.broman58@gmail.com>2017-02-09 11:31:59 +0000
commit520a1b20660f6ce071d8b4e535f12c93a5699d6f (patch)
tree35caae71ed8b96b055aa13ed060230e0ee33c8d1 /file.c
parent9e2366a2e505791a5dde59f5563aaad68af71885 (diff)
Make the capture file's interface description filterable
This patch introduces the frame.interface_description field. While testing this new functionality it became obvious that we have a non-optimal interaction between the existing cfile.c's cap_file_get_interface_name(), the recently added frame.interface_name field and this new frame.interface_description field. The string returned from cap_file_get_interface_name() may in fact come from one of three different sources: the idb's interface name (if it exists) or the idb's interface description (if that exists) or a default text of "unknown". The string ultimately becomes the rame.interface_name whether or not the idb had an interface name option to begin with. This behavior does not allow one to test for the simple presence of frame.interface_name. The new peer function cap_file_get_interface_description() added by this patch returns NULL instead of "unknown" if the idb does not have an interface description. Should cap_file_get_interface_name() be similarly modified to return NULL if the idb does not have an interface name? Bug: 9781 Change-Id: Ie479f373c5080c004dd22bd88919838feca71e95 Reviewed-on: https://code.wireshark.org/review/19861 Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'file.c')
1 files changed, 1 insertions, 0 deletions
diff --git a/file.c b/file.c
index c8c9c13449..ff39a9dffe 100644
--- a/file.c
+++ b/file.c
@@ -283,6 +283,7 @@ ws_epan_new(capture_file *cf)
epan->data = cf;
epan->get_frame_ts = ws_get_frame_ts;
epan->get_interface_name = cap_file_get_interface_name;
+ epan->get_interface_description = cap_file_get_interface_description;
epan->get_user_comment = ws_get_user_comment;
return epan;