forked from osmocom/wireshark
frame: print debug line according to new console preference.
Change-Id: I4e4b7d08e7765c43904469bbf8ba5c0581428382 Reviewed-on: https://code.wireshark.org/review/18231 Petri-Dish: Dario Lombardo <lomato@gmail.com> Reviewed-by: Jörg Mayer <jmayer@loplof.de> Reviewed-by: Dario Lombardo <lomato@gmail.com>
This commit is contained in:
parent
51f316194d
commit
5546400b55
|
@ -680,11 +680,12 @@ dissect_frame(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void*
|
|||
if (!(decoded[byte] & (1 << bit))) {
|
||||
field_info* fi = proto_find_field_from_offset(tree, i, tvb);
|
||||
if (fi && fi->hfinfo->id != proto_frame) {
|
||||
g_log(LOG_DOMAIN_CAPTURE, G_LOG_LEVEL_WARNING,
|
||||
"Dissector %s incomplete in frame %u: undecoded byte number %u "
|
||||
"(0x%.4X+%u)",
|
||||
(fi ? fi->hfinfo->abbrev : "[unknown]"),
|
||||
pinfo->num, i, i - i % 16, i % 16);
|
||||
if (prefs.incomplete_dissectors_check_debug)
|
||||
g_log(LOG_DOMAIN_CAPTURE, G_LOG_LEVEL_WARNING,
|
||||
"Dissector %s incomplete in frame %u: undecoded byte number %u "
|
||||
"(0x%.4X+%u)",
|
||||
(fi ? fi->hfinfo->abbrev : "[unknown]"),
|
||||
pinfo->num, i, i - i % 16, i % 16);
|
||||
proto_tree_add_expert_format(tree, pinfo, &ei_incomplete, tvb, i, 1, "Undecoded byte number: %u (0x%.4X+%u)", i, i - i % 16, i % 16);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2518,6 +2518,11 @@ prefs_register_modules(void)
|
|||
prefs_register_uint_custom_preference(console_module, "log.level", "logging level",
|
||||
"A bitmask of GLib log levels", &custom_cbs, &prefs.console_log_level);
|
||||
|
||||
prefs_register_bool_preference(console_module, "incomplete_dissectors_check_debug",
|
||||
"Print debug line for incomplete dissectors",
|
||||
"Look for dissectors that left some bytes undecoded (debug)",
|
||||
&prefs.incomplete_dissectors_check_debug);
|
||||
|
||||
/* Capture
|
||||
* These are preferences that can be read/written using the
|
||||
* preference module API. These preferences still use their own
|
||||
|
|
|
@ -215,6 +215,7 @@ typedef struct _e_prefs {
|
|||
gboolean display_hidden_proto_items;
|
||||
gboolean display_byte_fields_with_spaces;
|
||||
gboolean enable_incomplete_dissectors_check;
|
||||
gboolean incomplete_dissectors_check_debug;
|
||||
gpointer filter_expressions;/* Actually points to &head */
|
||||
gboolean gui_update_enabled;
|
||||
software_update_channel_e gui_update_channel;
|
||||
|
|
Loading…
Reference in New Issue