aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2016-09-18 18:48:50 -0700
committerGuy Harris <guy@alum.mit.edu>2016-09-19 02:51:13 +0000
commitd7fe514fc05e95e3a99fd211768de5abdc3f6486 (patch)
tree68b3e2a24ee11c7dd223089bc9a21ac9ccae302b /epan/dissectors
parent630b64613567c268b2b08966707c81d3ec8661a5 (diff)
Improve support for single-character fields and filter expressions.
Add an FT_CHAR type, which is like FT_UINT8 except that the value is displayed as a C-style character constant. Allow use of C-style character constants in filter expressions; they can be used in comparisons with all integral types, and in "contains" operators. Use that type for some fields that appear (based on the way they're displayed, or on the use of C-style character constants in their value_string tables) to be 1-byte characters rather than 8-bit numbers. Change-Id: I39a9f0dda0bd7f4fa02a9ca8373216206f4d7135 Reviewed-on: https://code.wireshark.org/review/17787 Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'epan/dissectors')
-rw-r--r--epan/dissectors/packet-alljoyn.c4
-rw-r--r--epan/dissectors/packet-beep.c4
-rw-r--r--epan/dissectors/packet-bzr.c8
-rw-r--r--epan/dissectors/packet-dcerpc.c20
-rw-r--r--epan/dissectors/packet-dcerpc.h4
-rw-r--r--epan/dissectors/packet-eap.c12
-rw-r--r--epan/dissectors/packet-gdb.c10
-rw-r--r--epan/dissectors/packet-ged125.c8
-rw-r--r--epan/dissectors/packet-gopher.c4
-rw-r--r--epan/dissectors/packet-gsm_a_dtap.c6
-rw-r--r--epan/dissectors/packet-ipx.c2
-rw-r--r--epan/dissectors/packet-nasdaq-itch.c20
-rw-r--r--epan/dissectors/packet-nasdaq-soup.c8
-rw-r--r--epan/dissectors/packet-ouch.c340
-rw-r--r--epan/dissectors/packet-rtpproxy.c28
-rw-r--r--epan/dissectors/packet-soupbintcp.c47
-rw-r--r--epan/dissectors/packet-telnet.c18
-rw-r--r--epan/dissectors/packet-ucp.c62
-rw-r--r--epan/dissectors/packet-usb.c6
-rw-r--r--epan/dissectors/x11-fields4
-rw-r--r--epan/dissectors/x11-glx-render-enum.h23
-rw-r--r--epan/dissectors/x11-register-info.h4
22 files changed, 198 insertions, 444 deletions
diff --git a/epan/dissectors/packet-alljoyn.c b/epan/dissectors/packet-alljoyn.c
index 21e76057e9..6dcaf18dd0 100644
--- a/epan/dissectors/packet-alljoyn.c
+++ b/epan/dissectors/packet-alljoyn.c
@@ -1564,7 +1564,7 @@ handle_message_header_body(tvbuff_t *tvb,
header_item = proto_tree_add_item(message_tree, hf_alljoyn_mess_header, tvb, offset, MESSAGE_HEADER_LENGTH, ENC_NA);
header_tree = proto_item_add_subtree(header_item, ett_alljoyn_header);
- proto_tree_add_item(header_tree, hf_alljoyn_mess_header_endian, tvb, offset + ENDIANNESS_OFFSET, 1, ENC_NA);
+ proto_tree_add_item(header_tree, hf_alljoyn_mess_header_endian, tvb, offset + ENDIANNESS_OFFSET, 1, ENC_ASCII|ENC_NA);
proto_tree_add_item(header_tree, hf_alljoyn_mess_header_type, tvb, offset + TYPE_OFFSET, 1, ENC_NA);
/* The flags byte. */
@@ -2674,7 +2674,7 @@ proto_register_AllJoyn(void)
},
{&hf_alljoyn_mess_header_endian,
{"Endianness", "alljoyn.mess_header.endianess",
- FT_UINT8, BASE_DEC, VALS(endian_encoding_vals), 0x0,
+ FT_CHAR, BASE_HEX, VALS(endian_encoding_vals), 0x0,
NULL, HFILL}
},
{&hf_alljoyn_mess_header_type,
diff --git a/epan/dissectors/packet-beep.c b/epan/dissectors/packet-beep.c
index ba8a96e810..56bd7883fa 100644
--- a/epan/dissectors/packet-beep.c
+++ b/epan/dissectors/packet-beep.c
@@ -222,7 +222,7 @@ dissect_beep_more(tvbuff_t *tvb, packet_info *pinfo, int offset,
int ret = 0;
guint8 more = tvb_get_guint8(tvb, offset);
- hidden_item = proto_tree_add_item(tree, hf_beep_more, tvb, offset, 1, ENC_BIG_ENDIAN);
+ hidden_item = proto_tree_add_item(tree, hf_beep_more, tvb, offset, 1, ENC_ASCII|ENC_NA);
PROTO_ITEM_SET_HIDDEN(hidden_item);
switch(more) {
@@ -916,7 +916,7 @@ proto_register_beep(void)
{ "Sequence Channel Number", "beep.seq.channel", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
{ &hf_beep_more,
- { "More", "beep.more", FT_UINT8, BASE_HEX, VALS(beep_more_vals), 0x0, NULL, HFILL }},
+ { "More", "beep.more", FT_CHAR, BASE_HEX, VALS(beep_more_vals), 0x0, NULL, HFILL }},
{ &hf_beep_msgno,
{ "Msgno", "beep.msgno", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }},
diff --git a/epan/dissectors/packet-bzr.c b/epan/dissectors/packet-bzr.c
index 6f8a5111f5..e1ddb62971 100644
--- a/epan/dissectors/packet-bzr.c
+++ b/epan/dissectors/packet-bzr.c
@@ -176,7 +176,7 @@ dissect_body(tvbuff_t *tvb, gint offset, packet_info *pinfo, proto_tree *tree)
while (tvb_reported_length_remaining(tvb, offset) > 0) {
cmd = tvb_get_guint8(tvb, offset);
- proto_tree_add_item(tree, hf_bzr_packet_kind, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_bzr_packet_kind, tvb, offset, 1, ENC_ASCII|ENC_NA);
offset += 1;
switch (cmd) {
@@ -188,7 +188,7 @@ dissect_body(tvbuff_t *tvb, gint offset, packet_info *pinfo, proto_tree *tree)
break;
case 'o':
proto_tree_add_item(tree, hf_bzr_result, tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
case 'e':
@@ -258,7 +258,7 @@ proto_register_bzr(void)
{
static hf_register_info hf[] = {
{ &hf_bzr_packet_kind,
- { "Packet kind", "bzr.kind", FT_UINT8, BASE_DEC,
+ { "Packet kind", "bzr.kind", FT_CHAR, BASE_HEX,
VALS(message_part_kind), 0x0, NULL, HFILL },
},
{ &hf_bzr_packet_protocol_version,
@@ -287,7 +287,7 @@ proto_register_bzr(void)
NULL, 0x0, NULL, HFILL },
},
{ &hf_bzr_result,
- { "Result", "bzr.result", FT_UINT8, BASE_HEX,
+ { "Result", "bzr.result", FT_CHAR, BASE_HEX,
VALS(message_results), 0x0,
"Command result (success or failure with error message)", HFILL
},
diff --git a/epan/dissectors/packet-dcerpc.c b/epan/dissectors/packet-dcerpc.c
index d4c0d11b39..4029904ff4 100644
--- a/epan/dissectors/packet-dcerpc.c
+++ b/epan/dissectors/packet-dcerpc.c
@@ -2042,6 +2042,26 @@ dcerpcstat_param(register_srt_t* srt, const char* opt_arg, char** err)
*/
int
+dissect_dcerpc_char(tvbuff_t *tvb, gint offset, packet_info *pinfo _U_,
+ proto_tree *tree, guint8 *drep,
+ int hfindex, guint8 *pdata)
+{
+ guint8 data;
+
+ /*
+ * XXX - fix to handle EBCDIC if we ever support EBCDIC FT_CHAR.
+ */
+ data = tvb_get_guint8(tvb, offset);
+ if (hfindex != -1) {
+ proto_tree_add_item(tree, hfindex, tvb, offset, 1, ENC_ASCII|DREP_ENC_INTEGER(drep));
+ }
+ if (pdata)
+ *pdata = data;
+ tvb_ensure_bytes_exist(tvb, offset, 1);
+ return offset + 1;
+}
+
+int
dissect_dcerpc_uint8(tvbuff_t *tvb, gint offset, packet_info *pinfo _U_,
proto_tree *tree, guint8 *drep,
int hfindex, guint8 *pdata)
diff --git a/epan/dissectors/packet-dcerpc.h b/epan/dissectors/packet-dcerpc.h
index eb7e7799dc..480ad28c9e 100644
--- a/epan/dissectors/packet-dcerpc.h
+++ b/epan/dissectors/packet-dcerpc.h
@@ -205,6 +205,10 @@ guint16 dcerpc_tvb_get_ntohs (tvbuff_t *tvb, gint offset, guint8 *drep);
guint32 dcerpc_tvb_get_ntohl (tvbuff_t *tvb, gint offset, guint8 *drep);
void dcerpc_tvb_get_uuid (tvbuff_t *tvb, gint offset, guint8 *drep, e_guid_t *uuid);
WS_DLL_PUBLIC
+int dissect_dcerpc_char (tvbuff_t *tvb, gint offset, packet_info *pinfo,
+ proto_tree *tree, guint8 *drep,
+ int hfindex, guint8 *pdata);
+WS_DLL_PUBLIC
int dissect_dcerpc_uint8 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
proto_tree *tree, guint8 *drep,
int hfindex, guint8 *pdata);
diff --git a/epan/dissectors/packet-eap.c b/epan/dissectors/packet-eap.c
index 0cbe057dfe..837bb8cbe4 100644
--- a/epan/dissectors/packet-eap.c
+++ b/epan/dissectors/packet-eap.c
@@ -660,9 +660,8 @@ dissect_eap_aka(proto_tree *eap_tree, tvbuff_t *tvb, int offset, gint size)
/*
* XXX - see previous comment.
*/
- proto_tree_add_uint_format_value(attr_tree, hf_eap_identity_prefix,
- tvb, aoffset+2, 1, eap_identity_prefix, "%s ('%c')",
- eap_identity_prefix_str, eap_identity_prefix);
+ proto_tree_add_uint(attr_tree, hf_eap_identity_prefix,
+ tvb, aoffset+2, 1, eap_identity_prefix);
}
proto_tree_add_item(attr_tree, hf_eap_identity, tvb, aoffset + 2, aleft - 2, ENC_ASCII|ENC_NA);
}
@@ -854,9 +853,8 @@ dissect_eap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
* of the identity is a value that happens to be a valid
* prefix, that doesn't *ipso facto* mean it *is* a prefix.
*/
- proto_tree_add_uint_format_value(eap_identity_tree, hf_eap_identity_prefix,
- tvb, offset, 1, eap_identity_prefix, "%s ('%c')",
- eap_identity_prefix_str, eap_identity_prefix);
+ proto_tree_add_uint(eap_identity_tree, hf_eap_identity_prefix,
+ tvb, offset, 1, eap_identity_prefix);
}
}
if(!pinfo->fd->flags.visited) {
@@ -1313,7 +1311,7 @@ proto_register_eap(void)
{ &hf_eap_identity_prefix, {
"Identity Prefix", "eap.identity.prefix",
- FT_UINT8, BASE_HEX, VALS(eap_identity_prefix_vals), 0x0, NULL, HFILL }},
+ FT_CHAR, BASE_HEX, VALS(eap_identity_prefix_vals), 0x0, NULL, HFILL }},
{ &hf_eap_identity_actual_len, {
"Identity Actual Length", "eap.identity.actual_len",
diff --git a/epan/dissectors/packet-gdb.c b/epan/dissectors/packet-gdb.c
index e5c9187df9..d930708bca 100644
--- a/epan/dissectors/packet-gdb.c
+++ b/epan/dissectors/packet-gdb.c
@@ -72,7 +72,6 @@ dissect_gdb_token(void *tvbparse_data, const void *wanted_data, tvbparse_elem_t
{
proto_tree *tree;
guint token;
- guint8 ack;
if (!tok) /* XXX - is this check necessary? */
return;
@@ -83,11 +82,8 @@ dissect_gdb_token(void *tvbparse_data, const void *wanted_data, tvbparse_elem_t
/* XXX - check that tok->len is what we expect? */
switch (token) {
case GDB_TOK_ACK:
- ack = tvb_get_guint8(tok->tvb, tok->offset);
- proto_tree_add_uint_format(tree, hf_gdb_ack,
- tok->tvb, tok->offset, tok->len, ack,
- "Acknowledgement: %s (%c)",
- val_to_str_const(ack, gdb_ack, "unknown"), ack);
+ proto_tree_add_item(tree, hf_gdb_ack,
+ tok->tvb, tok->offset, tok->len, ENC_ASCII|ENC_NA);
break;
case GDB_TOK_START:
proto_tree_add_item(tree, hf_gdb_start,
@@ -200,7 +196,7 @@ proto_register_gdb(void)
{
static hf_register_info hf[] = {
{ &hf_gdb_ack,
- { "Acknowledge", "gdb.ack", FT_UINT8, BASE_HEX,
+ { "Acknowledge", "gdb.ack", FT_CHAR, BASE_HEX,
VALS(gdb_ack), 0, NULL, HFILL } },
{ &hf_gdb_start,
{ "Start character", "gdb.start", FT_STRING, BASE_NONE,
diff --git a/epan/dissectors/packet-ged125.c b/epan/dissectors/packet-ged125.c
index 9f732f86ae..460958fae9 100644
--- a/epan/dissectors/packet-ged125.c
+++ b/epan/dissectors/packet-ged125.c
@@ -590,7 +590,7 @@ Media_Specifier_dissect(tvbuff_t* tvb, proto_tree* tree, gint* offset, guint32 l
guint8 media_protocol;
media_protocol = tvb_get_guint8(tvb, *offset);
- proto_tree_add_item(tree, hf_ged125_floating_media_protocol, tvb, *offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_ged125_floating_media_protocol, tvb, *offset, 1, ENC_NA|ENC_ASCII);
*offset += 1;
switch (media_protocol)
@@ -599,7 +599,7 @@ Media_Specifier_dissect(tvbuff_t* tvb, proto_tree* tree, gint* offset, guint32 l
case 'S':
case 'O':
case 'F':
- proto_tree_add_item(tree, hf_ged125_floating_library_designator, tvb, *offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_ged125_floating_library_designator, tvb, *offset, 1, ENC_NA|ENC_ASCII);
*offset += 1;
proto_tree_add_item(tree, hf_ged125_floating_payload_strg, tvb, *offset, length - 2, ENC_NA|ENC_ASCII);
break;
@@ -1696,12 +1696,12 @@ proto_register_ged125 (void)
{ &hf_ged125_floating_media_protocol,
{ "Media Protocol", "ged125.media_protocol",
- FT_UINT8, BASE_DEC, VALS(floating_media_protocol_vals), 0x0,
+ FT_CHAR, BASE_HEX, VALS(floating_media_protocol_vals), 0x0,
"Type of media", HFILL }},
{ &hf_ged125_floating_library_designator,
{ "Library Designator", "ged125.library_designator",
- FT_UINT8, BASE_DEC, VALS(floating_media_library_designator_vals), 0x0,
+ FT_CHAR, BASE_HEX, VALS(floating_media_library_designator_vals), 0x0,
"System or Application", HFILL }},
{ &hf_ged125_Data_Playback_Type,
diff --git a/epan/dissectors/packet-gopher.c b/epan/dissectors/packet-gopher.c
index 8d0db445ea..f8d0e3e633 100644
--- a/epan/dissectors/packet-gopher.c
+++ b/epan/dissectors/packet-gopher.c
@@ -175,7 +175,7 @@ dissect_gopher(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _
ti = proto_tree_add_string(gopher_tree, hf_gopher_dir_item, tvb,
offset, line_len + 1, name);
dir_tree = proto_item_add_subtree(ti, ett_dir_item);
- proto_tree_add_item(dir_tree, hf_gopher_di_type, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(dir_tree, hf_gopher_di_type, tvb, offset, 1, ENC_ASCII|ENC_NA);
proto_tree_add_item(dir_tree, hf_gopher_di_name, tvb, offset + 1,
sel_start - offset - 2, ENC_ASCII|ENC_NA);
proto_tree_add_item(dir_tree, hf_gopher_di_selector, tvb, sel_start,
@@ -238,7 +238,7 @@ proto_register_gopher(void)
},
{ &hf_gopher_di_type,
{ "Type", "gopher.directory.type",
- FT_UINT8, BASE_HEX, VALS(item_types), 0,
+ FT_CHAR, BASE_HEX, VALS(item_types), 0,
NULL, HFILL }
},
{ &hf_gopher_di_name,
diff --git a/epan/dissectors/packet-gsm_a_dtap.c b/epan/dissectors/packet-gsm_a_dtap.c
index 3d5397a139..587affd4d2 100644
--- a/epan/dissectors/packet-gsm_a_dtap.c
+++ b/epan/dissectors/packet-gsm_a_dtap.c
@@ -2706,8 +2706,8 @@ de_keypad_facility(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32
proto_tree_add_bits_item(tree, hf_gsm_a_spare_bits, tvb, curr_offset<<3, 1, ENC_BIG_ENDIAN);
- item = proto_tree_add_uint_format_value(tree, hf_gsm_a_dtap_keypad_information, tvb, curr_offset, 1,
- keypad_char, "%c", keypad_char);
+ item = proto_tree_add_uint(tree, hf_gsm_a_dtap_keypad_information, tvb, curr_offset, 1,
+ keypad_char);
if (((keypad_char < '0') || (keypad_char > '9')) &&
((keypad_char < 'A') || (keypad_char > 'D')) &&
@@ -8026,7 +8026,7 @@ proto_register_gsm_a_dtap(void)
},
{ &hf_gsm_a_dtap_keypad_information,
{ "Keypad information", "gsm_a.dtap.keypad_information",
- FT_UINT8, BASE_DEC, NULL, 0x7f,
+ FT_CHAR, BASE_HEX, NULL, 0x7f,
NULL, HFILL }
},
{ &hf_gsm_a_dtap_repeat_indicator,
diff --git a/epan/dissectors/packet-ipx.c b/epan/dissectors/packet-ipx.c
index a0b85871d5..acdbf29a6e 100644
--- a/epan/dissectors/packet-ipx.c
+++ b/epan/dissectors/packet-ipx.c
@@ -1520,7 +1520,7 @@ proto_register_ipx(void)
{ &hf_msg_sigchar,
{ "Signature Char", "ipxmsg.sigchar",
- FT_UINT8, BASE_DEC, VALS(ipxmsg_sigchar_vals), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ipxmsg_sigchar_vals), 0x0,
NULL, HFILL }}
};
diff --git a/epan/dissectors/packet-nasdaq-itch.c b/epan/dissectors/packet-nasdaq-itch.c
index 4e62be271e..3695de10a1 100644
--- a/epan/dissectors/packet-nasdaq-itch.c
+++ b/epan/dissectors/packet-nasdaq-itch.c
@@ -308,7 +308,7 @@ dissect_nasdaq_itch(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* d
offset = time_stamp (tvb, nasdaq_itch_tree, hf_nasdaq_itch_millisecond, offset, 8);
}
- proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_message_type, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_message_type, tvb, offset, 1, ENC_ASCII|ENC_NA);
offset += 1;
if (version == 3) {
@@ -325,20 +325,20 @@ dissect_nasdaq_itch(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* d
switch (nasdaq_itch_type) {
case 'S': /* system event */
- proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_system_event, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_system_event, tvb, offset, 1, ENC_ASCII|ENC_NA);
/*offset += 1;*/
break;
case 'R': /* Stock Directory */
offset = stock(tvb, pinfo, nasdaq_itch_tree, offset);
- proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_market_category, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_market_category, tvb, offset, 1, ENC_ASCII|ENC_NA);
offset += 1;
- proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_financial_status, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_financial_status, tvb, offset, 1, ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_round_lot_size, tvb, offset, 6, ENC_ASCII|ENC_NA);
offset += 6;
- proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_round_lots_only, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(nasdaq_itch_tree, hf_nasdaq_itch_round_lots_only, tvb, offset, 1, ENC_ASCII|ENC_NA);
/*offset += 1;*/
break;
@@ -451,7 +451,7 @@ proto_register_nasdaq_itch(void)
{ &hf_nasdaq_itch_message_type,
{ "Message Type", "nasdaq-itch.message_type",
- FT_UINT8, BASE_DEC, VALS(message_types_val), 0x0,
+ FT_CHAR, BASE_HEX, VALS(message_types_val), 0x0,
NULL, HFILL }},
{ &hf_nasdaq_itch_second,
@@ -466,17 +466,17 @@ proto_register_nasdaq_itch(void)
{ &hf_nasdaq_itch_system_event,
{ "System Event", "nasdaq-itch.system_event",
- FT_UINT8, BASE_DEC, VALS(system_event_val), 0x0,
+ FT_CHAR, BASE_HEX, VALS(system_event_val), 0x0,
NULL, HFILL }},
{ &hf_nasdaq_itch_market_category,
{ "Market Category", "nasdaq-itch.market_category",
- FT_UINT8, BASE_DEC, VALS(market_category_val), 0x0,
+ FT_CHAR, BASE_HEX, VALS(market_category_val), 0x0,
NULL, HFILL }},
{ &hf_nasdaq_itch_financial_status,
{ "Financial Status Indicator", "nasdaq-itch.financial_status",
- FT_UINT8, BASE_DEC, VALS(financial_status_val), 0x0,
+ FT_CHAR, BASE_HEX, VALS(financial_status_val), 0x0,
NULL, HFILL }},
{ &hf_nasdaq_itch_stock,
@@ -491,7 +491,7 @@ proto_register_nasdaq_itch(void)
{ &hf_nasdaq_itch_round_lots_only,
{ "Round Lots Only", "nasdaq-itch.round_lots_only",
- FT_UINT8, BASE_DEC, VALS(round_lots_only_val), 0x0,
+ FT_CHAR, BASE_HEX, VALS(round_lots_only_val), 0x0,
NULL, HFILL }},
{ &hf_nasdaq_itch_trading_state,
diff --git a/epan/dissectors/packet-nasdaq-soup.c b/epan/dissectors/packet-nasdaq-soup.c
index 2645ab0d52..84b8260a29 100644
--- a/epan/dissectors/packet-nasdaq-soup.c
+++ b/epan/dissectors/packet-nasdaq-soup.c
@@ -84,7 +84,7 @@ dissect_nasdaq_soup_packet(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent
tvbuff_t *new_tvb = NULL;
nasdaq_soup_type = tvb_get_guint8(tvb, offset);
- proto_tree_add_item(tree, hf_nasdaq_soup_packet_type, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_nasdaq_soup_packet_type, tvb, offset, 1, ENC_ASCII|ENC_NA);
offset++;
switch (nasdaq_soup_type) {
@@ -100,7 +100,7 @@ dissect_nasdaq_soup_packet(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent
offset += 10;
break;
case 'J': /* login reject */
- proto_tree_add_item(tree, hf_nasdaq_soup_reject_code, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_nasdaq_soup_reject_code, tvb, offset, 1, ENC_ASCII|ENC_NA);
offset++;
break;
@@ -214,12 +214,12 @@ proto_register_nasdaq_soup(void)
{ &hf_nasdaq_soup_packet_type,
{ "Packet Type", "nasdaq-soup.packet_type",
- FT_UINT8, BASE_DEC, VALS(message_types_val), 0x0,
+ FT_CHAR, BASE_HEX, VALS(message_types_val), 0x0,
NULL, HFILL }},
{ &hf_nasdaq_soup_reject_code,
{ "Login Reject Code", "nasdaq-soup.reject_code",
- FT_UINT8, BASE_DEC, VALS(reject_code_val), 0x0,
+ FT_CHAR, BASE_HEX, VALS(reject_code_val), 0x0,
NULL, HFILL }},
{ &hf_nasdaq_soup_message,
diff --git a/epan/dissectors/packet-ouch.c b/epan/dissectors/packet-ouch.c
index 5d6e1dc298..c2eb1641b6 100644
--- a/epan/dissectors/packet-ouch.c
+++ b/epan/dissectors/packet-ouch.c
@@ -350,201 +350,6 @@ ouch_tree_add_timestamp(
proto_tree_add_string(tree, hf, tvb, offset, 8, buf);
}
-static void
-packet_type_format(
- gchar *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, pkt_type_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for BBO weight indicator code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_bbo_weight_indicator(
- gchar *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value,
- ouch_bbo_weight_indicator_val,
- "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for broken trade reason code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_broken_trade_reason(
- gchar *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value,
- ouch_broken_trade_reason_val,
- "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for buy/sell indicator code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_buy_sell_indicator(
- gchar *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_buy_sell_indicator_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for cancel reason code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_cancel_reason(
- gchar *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_cancel_reason_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for the capacity code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_capacity(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_capacity_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for the cross type code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_cross_type(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_cross_type_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for the customer type code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_customer_type(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_customer_type_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for the display code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_display(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_display_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for the system event code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_event_code(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_event_code_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for the ISO eligibility code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_iso_eligibility(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_iso_eligibility_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for the liquidity flag code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_liquidity_flag(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_liquidity_flag_val, "Unknown"),
- value);
-}
-
-/** BASE_CUSTOM formatter for order state code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_order_state(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_order_state_val, "Unknown"),
- value);
-}
-
/** BASE_CUSTOM formatter for prices
*
* OUCH prices are integers, with four implicit decimal places. So we
@@ -563,23 +368,6 @@ format_price(
}
}
-/** BASE_CUSTOM formatter for price correction reason code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_price_correction_reason(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value,
- ouch_price_correction_reason_val,
- "Unknown"),
- value);
-}
-
/** BASE_CUSTOM formatter for reference price type code
*
* Displays the code value as a character, not its ASCII value, as
@@ -597,21 +385,6 @@ format_reference_price_type(
value);
}
-/** BASE_CUSTOM formatter for the reject reason code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_reject_reason(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value, ouch_reject_reason_val, "Unknown"),
- value);
-}
-
/** BASE_CUSTOM formatter for the Time In Force (TIF) code
*
* There are three reserved values for the TIF: 0, 99998 and 99999.
@@ -653,23 +426,6 @@ format_tif(
}
}
-/** BASE_CUSTOM formatter for the trade correction reason code
- *
- * Displays the code value as a character, not its ASCII value, as
- * would be done by BASE_DEC and friends. */
-static void
-format_trade_correction_reason(
- char *buf,
- guint32 value)
-{
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)",
- val_to_str_const(value,
- ouch_trade_correction_reason_val,
- "Unknown"),
- value);
-}
-
static int
dissect_ouch(
@@ -729,7 +485,7 @@ dissect_ouch(
/* Packet type (using the cooked value). */
proto_tree_add_item(ouch_tree, hf_ouch_packet_type,
- tvb, offset, 1, ENC_NA);
+ tvb, offset, 1, ENC_ASCII|ENC_NA);
offset += 1;
switch (pkt_type) {
@@ -743,7 +499,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_buy_sell_indicator,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -779,19 +535,19 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_display,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
hf_ouch_capacity,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
hf_ouch_iso_eligible,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -803,14 +559,14 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_cross_type,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
if (reported_len >= 49) { /* Added in 4.1 */
proto_tree_add_item(ouch_tree,
hf_ouch_customer_type,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
}
break;
@@ -866,7 +622,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_display,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -878,13 +634,13 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_capacity,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
hf_ouch_iso_eligible,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -896,20 +652,20 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_cross_type,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
hf_ouch_order_state,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
if (reported_len >= 66) { /* Added in 4.2 */
proto_tree_add_item(ouch_tree,
hf_ouch_bbo_weight_indicator,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
}
break;
@@ -948,13 +704,13 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_display,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
hf_ouch_iso_eligible,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1007,7 +763,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_event_code,
tvb, offset, 1,
- ENC_ASCII);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
@@ -1062,7 +818,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_display,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1074,13 +830,13 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_capacity,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
hf_ouch_iso_eligible,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1092,13 +848,13 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_cross_type,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
hf_ouch_order_state,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1137,7 +893,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_cancel_reason,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
@@ -1162,7 +918,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_cancel_reason,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1180,7 +936,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_liquidity_flag,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
@@ -1211,7 +967,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_liquidity_flag,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1242,7 +998,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_broken_trade_reason,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
@@ -1273,7 +1029,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_liquidity_flag,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1285,7 +1041,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_trade_correction_reason,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
@@ -1316,7 +1072,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_liquidity_flag,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1365,7 +1121,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_price_correction_reason,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
@@ -1384,7 +1140,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_reject_reason,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
break;
@@ -1435,7 +1191,7 @@ dissect_ouch(
proto_tree_add_item(ouch_tree,
hf_ouch_display,
tvb, offset, 1,
- ENC_BIG_ENDIAN);
+ ENC_ASCII|ENC_NA);
offset += 1;
proto_tree_add_item(ouch_tree,
@@ -1638,37 +1394,37 @@ proto_register_ouch(void)
{ &hf_ouch_bbo_weight_indicator,
{ "BBO Weight Indicator", "ouch.bbo_weight_indicator",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_bbo_weight_indicator), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_bbo_weight_indicator_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_broken_trade_reason,
{ "Broken Trade Reason", "ouch.broken_trade_reason",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_broken_trade_reason), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_broken_trade_reason_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_buy_sell_indicator,
{ "Buy/Sell Indicator", "ouch.buy_sell_indicator",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_buy_sell_indicator), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_buy_sell_indicator_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_cancel_reason,
{ "Cancel Reason", "ouch.cancel_reason",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_cancel_reason), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_cancel_reason_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_capacity,
{ "Capacity", "ouch.capacity",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_capacity), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_capacity_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_cross_type,
{ "Cross Type", "ouch.cross_type",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_cross_type), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_cross_type_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_customer_type,
{ "Customer Type", "ouch.customer_type",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_customer_type), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_customer_type_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_decrement_shares,
@@ -1678,12 +1434,12 @@ proto_register_ouch(void)
{ &hf_ouch_display,
{ "Display", "ouch.display",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_display), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_display_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_event_code,
{ "Event Code", "ouch.event_code",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_event_code), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_event_code_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_executed_shares,
@@ -1708,12 +1464,12 @@ proto_register_ouch(void)
{ &hf_ouch_iso_eligible,
{ "Intermarket Sweep Eligibility", "ouch.iso_eligible",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_iso_eligibility), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_iso_eligibility_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_liquidity_flag,
{ "Liquidity Flag", "ouch.liquidity_flag",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_liquidity_flag), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_liquidity_flag_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_match_number,
@@ -1743,7 +1499,7 @@ proto_register_ouch(void)
{ &hf_ouch_order_state,
{ "Order State", "ouch.order_state",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_order_state), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_order_state_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_order_token,
@@ -1753,7 +1509,7 @@ proto_register_ouch(void)
{ &hf_ouch_packet_type,
{ "Packet Type", "ouch.packet_type",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(packet_type_format), 0x0,
+ FT_CHAR, BASE_HEX, VALS(pkt_type_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_previous_order_token,
@@ -1768,7 +1524,7 @@ proto_register_ouch(void)
{ &hf_ouch_price_correction_reason,
{ "Price Correction Reason", "ouch.price_correction_reason",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_price_correction_reason), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_price_correction_reason_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_quantity_prevented_from_trading,
@@ -1789,7 +1545,7 @@ proto_register_ouch(void)
{ &hf_ouch_reject_reason,
{ "Reject Reason", "ouch.reject_reason",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_reject_reason), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_reject_reason_val), 0x0,
NULL, HFILL }},
{ &hf_ouch_replacement_order_token,
@@ -1819,7 +1575,7 @@ proto_register_ouch(void)
{ &hf_ouch_trade_correction_reason,
{ "Trade Correction Reason", "ouch.trade_correction_reason",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_trade_correction_reason), 0x0,
+ FT_CHAR, BASE_HEX, VALS(ouch_trade_correction_reason_val), 0x0,
NULL, HFILL }}
};
diff --git a/epan/dissectors/packet-rtpproxy.c b/epan/dissectors/packet-rtpproxy.c
index dafb30aa16..fb4002678f 100644
--- a/epan/dissectors/packet-rtpproxy.c
+++ b/epan/dissectors/packet-rtpproxy.c
@@ -342,7 +342,7 @@ rtpproxy_add_parameter(tvbuff_t *tvb, packet_info *pinfo, proto_tree *rtpproxy_t
rawstr = tvb_get_string_enc(wmem_packet_scope(), tvb, begin, realsize, ENC_ASCII);
while(offset < realsize){
- ti = proto_tree_add_item(rtpproxy_tree, hf_rtpproxy_command_parameter, tvb, begin + offset, 1, ENC_BIG_ENDIAN);
+ ti = proto_tree_add_item(rtpproxy_tree, hf_rtpproxy_command_parameter, tvb, begin + offset, 1, ENC_ASCII | ENC_NA);
offset++; /* Skip 1-byte parameter's type */
switch (g_ascii_tolower(tvb_get_guint8(tvb, begin+offset-1)))
{
@@ -414,7 +414,7 @@ rtpproxy_add_parameter(tvbuff_t *tvb, packet_info *pinfo, proto_tree *rtpproxy_t
break;
case 'p':
another_tree = proto_item_add_subtree(ti, ett_rtpproxy_command_parameters_proto);
- proto_tree_add_item(another_tree, hf_rtpproxy_command_parameter_proto, tvb, begin+offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(another_tree, hf_rtpproxy_command_parameter_proto, tvb, begin+offset, 1, ENC_ASCII | ENC_NA);
offset++;
break;
case 't':
@@ -427,7 +427,7 @@ rtpproxy_add_parameter(tvbuff_t *tvb, packet_info *pinfo, proto_tree *rtpproxy_t
break;
case 'u':
another_tree = proto_item_add_subtree(ti, ett_rtpproxy_command_parameters_acc);
- proto_tree_add_item(another_tree, hf_rtpproxy_command_parameter_acc, tvb, begin+offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(another_tree, hf_rtpproxy_command_parameter_acc, tvb, begin+offset, 1, ENC_ASCII | ENC_NA);
offset++;
break;
default:
@@ -655,7 +655,7 @@ dissect_rtpproxy(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data
}
/* All other commands */
- ti = proto_tree_add_item(rtpproxy_tree, hf_rtpproxy_command, tvb, offset, 1, ENC_BIG_ENDIAN);
+ ti = proto_tree_add_item(rtpproxy_tree, hf_rtpproxy_command, tvb, offset, 1, ENC_ASCII | ENC_NA);
/* A specific case - handshake/ping */
if (tmp == 'v')
@@ -964,8 +964,8 @@ proto_register_rtpproxy(void)
{
"Ok",
"rtpproxy.ok",
- FT_UINT8,
- BASE_DEC,
+ FT_CHAR,
+ BASE_HEX,
VALS(oktypenames),
0x0,
NULL,
@@ -1042,8 +1042,8 @@ proto_register_rtpproxy(void)
{
"Command",
"rtpproxy.command",
- FT_UINT8,
- BASE_DEC,
+ FT_CHAR,
+ BASE_HEX,
VALS(commandtypenames),
0x0,
NULL,
@@ -1068,8 +1068,8 @@ proto_register_rtpproxy(void)
{
"Parameter",
"rtpproxy.command_parameter",
- FT_UINT8,
- BASE_DEC,
+ FT_CHAR,
+ BASE_HEX,
VALS(paramtypenames),
0x0,
NULL,
@@ -1146,8 +1146,8 @@ proto_register_rtpproxy(void)
{
"RTP tramsission protocol",
"rtpproxy.command_parameter_proto",
- FT_UINT8,
- BASE_DEC,
+ FT_CHAR,
+ BASE_HEX,
VALS(prototypenames),
0x0,
NULL,
@@ -1172,8 +1172,8 @@ proto_register_rtpproxy(void)
{
"Accounting",
"rtpproxy.command_parameter_acc",
- FT_UINT8,
- BASE_DEC,
+ FT_CHAR,
+ BASE_HEX,
VALS(acctypenames),
0x0,
NULL,
diff --git a/epan/dissectors/packet-soupbintcp.c b/epan/dissectors/packet-soupbintcp.c
index 2e94e3222b..3afb49af7c 100644
--- a/epan/dissectors/packet-soupbintcp.c
+++ b/epan/dissectors/packet-soupbintcp.c
@@ -133,45 +133,6 @@ static int hf_soupbintcp_req_seq_num = -1;
static int hf_soupbintcp_reject_code = -1;
-/** Format the display of the packet type code
- *
- * This function is called via BASE_CUSTOM, and displays the packet
- * type code as a character like it is in the specification, rather
- * than using BASE_DEC which shows it as an integer value. */
-static void
-format_packet_type(
- gchar *buf,
- guint32 value)
-{
- gchar* tmp_str;
-
- tmp_str = val_to_str_wmem(NULL, value, pkt_type_val, "Unknown packet");
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)", tmp_str, (char)(value & 0xff));
- wmem_free(NULL, tmp_str);
-}
-
-
-/** Format the display of the login rejection reason code
- *
- * This function is called via BASE_CUSTOM, and displays the login
- * rejection reason code as a character like it is in the
- * specification, rather than using BASE_DEC which show it as an
- * integer value. */
-static void
-format_reject_code(
- gchar *buf,
- guint32 value)
-{
- gchar* tmp_str;
-
- tmp_str = val_to_str_wmem(NULL, value, reject_code_val, "Unknown reject code");
- g_snprintf(buf, ITEM_LABEL_LENGTH,
- "%s (%c)", tmp_str, (char)(value & 0xff));
- wmem_free(NULL, tmp_str);
-}
-
-
/** Dissector for SoupBinTCP messages */
static void
dissect_soupbintcp_common(
@@ -317,7 +278,7 @@ dissect_soupbintcp_common(
/* Type */
proto_tree_add_item(soupbintcp_tree,
hf_soupbintcp_packet_type,
- tvb, offset, 1, ENC_BIG_ENDIAN);
+ tvb, offset, 1, ENC_ASCII|ENC_NA);
offset += 1;
switch (pkt_type) {
@@ -343,7 +304,7 @@ dissect_soupbintcp_common(
case 'J': /* Login Reject */
proto_tree_add_item(soupbintcp_tree,
hf_soupbintcp_reject_code,
- tvb, offset, 1, ENC_BIG_ENDIAN);
+ tvb, offset, 1, ENC_ASCII|ENC_NA);
break;
case 'U': /* Unsequenced Data */
@@ -518,13 +479,13 @@ proto_register_soupbintcp(void)
{ &hf_soupbintcp_packet_type,
{ "Packet Type", "soupbintcp.packet_type",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_packet_type), 0x0,
+ FT_CHAR, BASE_HEX, VALS(pkt_type_val), 0x0,
"Message type code",
HFILL }},
{ &hf_soupbintcp_reject_code,
{ "Login Reject Code", "soupbintcp.reject_code",
- FT_UINT8, BASE_CUSTOM, CF_FUNC(format_reject_code), 0x0,
+ FT_CHAR, BASE_HEX, VALS(reject_code_val), 0x0,
"Login reject reason code",
HFILL }},
diff --git a/epan/dissectors/packet-telnet.c b/epan/dissectors/packet-telnet.c
index 05ab652c97..8fb6d2a791 100644
--- a/epan/dissectors/packet-telnet.c
+++ b/epan/dissectors/packet-telnet.c
@@ -488,13 +488,13 @@ dissect_starttls_subopt(packet_info *pinfo _U_, const char *optname _U_, tvbuff_
}
static const value_string telnet_outmark_subopt_cmd_vals[] = {
- { 6, "ACK" },
- { 21, "NAK" },
- { 'D', "Default" },
- { 'T', "Top" },
- { 'B', "Bottom" },
- { 'L', "Left" },
- { 'R', "Right" },
+ { '\x06', "ACK" },
+ { '\x15', "NAK" },
+ { 'D', "Default" },
+ { 'T', "Top" },
+ { 'B', "Bottom" },
+ { 'L', "Left" },
+ { 'R', "Right" },
{ 0, NULL }
};
@@ -505,7 +505,7 @@ dissect_outmark_subopt(packet_info *pinfo _U_, const char *optname _U_, tvbuff_t
int gs_offset, datalen;
while (len > 0) {
- proto_tree_add_item(tree, hf_telnet_outmark_subopt_cmd, tvb, offset, 1, ENC_BIG_ENDIAN);
+ proto_tree_add_item(tree, hf_telnet_outmark_subopt_cmd, tvb, offset, 1, ENC_ASCII | ENC_NA);
offset++;
len--;
@@ -1985,7 +1985,7 @@ proto_register_telnet(void)
NULL, 0, NULL, HFILL }
},
{ &hf_telnet_outmark_subopt_cmd,
- { "Command", "telnet.outmark_subopt.cmd", FT_UINT8, BASE_DEC,
+ { "Command", "telnet.outmark_subopt.cmd", FT_CHAR, BASE_HEX,
VALS(telnet_outmark_subopt_cmd_vals), 0, NULL, HFILL }
},
{ &hf_telnet_outmark_subopt_banner,
diff --git a/epan/dissectors/packet-ucp.c b/epan/dissectors/packet-ucp.c
index 05185ff82b..40b8dd6575 100644
--- a/epan/dissectors/packet-ucp.c
+++ b/epan/dissectors/packet-ucp.c
@@ -2020,7 +2020,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_hdr_O_R,
{ "Type", "ucp.hdr.O_R",
- FT_UINT8, BASE_DEC, VALS(vals_hdr_O_R), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_hdr_O_R), 0x00,
"Your basic 'is a request or response'.",
HFILL
}
@@ -2083,14 +2083,14 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_BAS,
{ "BAS", "ucp.parm.BAS",
- FT_UINT8, BASE_DEC, VALS(vals_parm_BAS), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_BAS), 0x00,
"Barring status flag.",
HFILL
}
},
{ &hf_ucp_parm_LAR,
{ "LAR", "ucp.parm.LAR",
- FT_UINT8, BASE_DEC, VALS(vals_parm_LAR), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_LAR), 0x00,
"Leg. code for all calls flag.",
HFILL
}
@@ -2104,7 +2104,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_L1R,
{ "L1R", "ucp.parm.L1R",
- FT_UINT8, BASE_DEC, VALS(vals_parm_L1R), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_L1R), 0x00,
"Leg. code for priority 1 flag.",
HFILL
}
@@ -2118,7 +2118,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_L3R,
{ "L3R", "ucp.parm.L3R",
- FT_UINT8, BASE_DEC, VALS(vals_parm_L3R), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_L3R), 0x00,
"Leg. code for priority 3 flag.",
HFILL
}
@@ -2132,28 +2132,28 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_LCR,
{ "LCR", "ucp.parm.LCR",
- FT_UINT8, BASE_DEC, VALS(vals_parm_LCR), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_LCR), 0x00,
"Leg. code for reverse charging flag.",
HFILL
}
},
{ &hf_ucp_parm_LUR,
{ "LUR", "ucp.parm.LUR",
- FT_UINT8, BASE_DEC, VALS(vals_parm_LUR), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_LUR), 0x00,
"Leg. code for urgent message flag.",
HFILL
}
},
{ &hf_ucp_parm_LRR,
{ "LRR", "ucp.parm.LRR",
- FT_UINT8, BASE_DEC, VALS(vals_parm_LRR), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_LRR), 0x00,
"Leg. code for repetition flag.",
HFILL
}
},
{ &hf_ucp_parm_RT,
{ "RT", "ucp.parm.RT",
- FT_UINT8, BASE_DEC, VALS(vals_parm_RT), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_RT), 0x00,
"Receiver type.",
HFILL
}
@@ -2181,7 +2181,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_PNC,
{ "PNC", "ucp.parm.PNC",
- FT_UINT8, BASE_DEC, VALS(vals_parm_PNC), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_PNC), 0x00,
"Paging network controller.",
HFILL
}
@@ -2244,7 +2244,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_RP,
{ "RP", "ucp.parm.RP",
- FT_UINT8, BASE_DEC, VALS(vals_parm_RP), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_RP), 0x00,
"Repetition requested.",
HFILL
}
@@ -2272,7 +2272,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_UM,
{ "UM", "ucp.parm.UM",
- FT_UINT8, BASE_DEC, VALS(vals_parm_UM), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_UM), 0x00,
"Urgent message indicator.",
HFILL
}
@@ -2286,7 +2286,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_RC,
{ "RC", "ucp.parm.RC",
- FT_UINT8, BASE_DEC, VALS(vals_parm_RC), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_RC), 0x00,
"Reverse charging request.",
HFILL
}
@@ -2300,7 +2300,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_NRq,
{ "NRq", "ucp.parm.NRq",
- FT_UINT8, BASE_DEC, VALS(vals_parm_NRq), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_NRq), 0x00,
"Notification request.",
HFILL
}
@@ -2314,7 +2314,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_A_D,
{ "A_D", "ucp.parm.A_D",
- FT_UINT8, BASE_DEC, VALS(vals_parm_A_D), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_A_D), 0x00,
"Add to/delete from fixed subscriber address list record.",
HFILL
}
@@ -2342,7 +2342,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_R_T,
{ "R_T", "ucp.parm.R_T",
- FT_UINT8, BASE_DEC, VALS(vals_parm_R_T), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_R_T), 0x00,
"Message number.",
HFILL
}
@@ -2356,7 +2356,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_NT,
{ "NT", "ucp.parm.NT",
- FT_UINT8, BASE_DEC, VALS(vals_parm_NT), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_NT), 0x00,
"Notification type.",
HFILL
}
@@ -2370,14 +2370,14 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_REQ_OT,
{ "REQ_OT", "ucp.parm.REQ_OT",
- FT_UINT8, BASE_DEC, VALS(vals_parm_REQ_OT), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_REQ_OT), 0x00,
"UCP release number supported/accepted.",
HFILL
}
},
{ &hf_ucp_parm_SSTAT,
{ "SSTAT", "ucp.parm.SSTAT",
- FT_UINT8, BASE_DEC, VALS(vals_parm_SSTAT), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_SSTAT), 0x00,
"Supplementary services for which status is requested.",
HFILL
}
@@ -2405,7 +2405,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_LRq,
{ "LRq", "ucp.parm.LRq",
- FT_UINT8, BASE_DEC, VALS(vals_parm_LRq), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_LRq), 0x00,
"Last resort address request.",
HFILL
}
@@ -2426,7 +2426,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_DD,
{ "DD", "ucp.parm.DD",
- FT_UINT8, BASE_DEC, VALS(vals_parm_DD), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_DD), 0x00,
"Deferred delivery requested.",
HFILL
}
@@ -2482,7 +2482,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_Dst,
{ "Dst", "ucp.parm.Dst",
- FT_UINT8, BASE_DEC, VALS(vals_parm_Dst), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_Dst), 0x00,
"Delivery status.",
HFILL
}
@@ -2503,7 +2503,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_MT,
{ "MT", "ucp.parm.MT",
- FT_UINT8, BASE_DEC, VALS(vals_parm_MT), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_MT), 0x00,
"Message type.",
HFILL
}
@@ -2531,21 +2531,21 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_DCs,
{ "DCs", "ucp.parm.DCs",
- FT_UINT8, BASE_DEC, VALS(vals_parm_DCs), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_DCs), 0x00,
"Data coding scheme (deprecated).",
HFILL
}
},
{ &hf_ucp_parm_MCLs,
{ "MCLs", "ucp.parm.MCLs",
- FT_UINT8, BASE_DEC, VALS(vals_parm_MCLs), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_MCLs), 0x00,
"Message class.",
HFILL
}
},
{ &hf_ucp_parm_RPI,
{ "RPI", "ucp.parm.RPI",
- FT_UINT8, BASE_DEC, VALS(vals_parm_RPI), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_RPI), 0x00,
"Reply path.",
HFILL
}
@@ -2601,28 +2601,28 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_OTON,
{ "OTON", "ucp.parm.OTON",
- FT_UINT8, BASE_DEC, VALS(vals_parm_OTON), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_OTON), 0x00,
"Originator type of number.",
HFILL
}
},
{ &hf_ucp_parm_ONPI,
{ "ONPI", "ucp.parm.ONPI",
- FT_UINT8, BASE_DEC, VALS(vals_parm_ONPI), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_ONPI), 0x00,
"Originator numbering plan id.",
HFILL
}
},
{ &hf_ucp_parm_STYP0,
{ "STYP0", "ucp.parm.STYP0",
- FT_UINT8, BASE_DEC, VALS(vals_parm_STYP0), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_STYP0), 0x00,
"Subtype of operation.",
HFILL
}
},
{ &hf_ucp_parm_STYP1,
{ "STYP1", "ucp.parm.STYP1",
- FT_UINT8, BASE_DEC, VALS(vals_parm_STYP1), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_STYP1), 0x00,
"Subtype of operation.",
HFILL
}
@@ -2692,7 +2692,7 @@ proto_register_ucp(void)
},
{ &hf_ucp_parm_ACK,
{ "(N)Ack", "ucp.parm.ACK",
- FT_UINT8, BASE_DEC, VALS(vals_parm_ACK), 0x00,
+ FT_CHAR, BASE_HEX, VALS(vals_parm_ACK), 0x00,
"Positive or negative acknowledge of the operation.",
HFILL
}
diff --git a/epan/dissectors/packet-usb.c b/epan/dissectors/packet-usb.c
index 7146da0b18..dd41021226 100644
--- a/epan/dissectors/packet-usb.c
+++ b/epan/dissectors/packet-usb.c
@@ -3396,9 +3396,7 @@ dissect_linux_usb_pseudo_header(tvbuff_t *tvb, packet_info *pinfo, proto_tree *t
/* show the urb type of this URB as string and as a character */
urb_type = tvb_get_guint8(tvb, 8);
usb_conv_info->is_request = (urb_type==URB_SUBMIT);
- proto_tree_add_uint_format_value(tree, hf_usb_linux_urb_type, tvb, 8, 1,
- urb_type, "%s ('%c')", val_to_str(urb_type, usb_linux_urb_type_vals, "Unknown %d"),
- g_ascii_isprint(urb_type) ? urb_type : '.');
+ proto_tree_add_uint(tree, hf_usb_linux_urb_type, tvb, 8, 1, urb_type);
proto_tree_add_item(tree, hf_usb_linux_transfer_type, tvb, 9, 1, ENC_LITTLE_ENDIAN);
transfer_type = tvb_get_guint8(tvb, 9);
@@ -4593,7 +4591,7 @@ proto_register_usb(void)
{ &hf_usb_linux_urb_type,
{ "URB type", "usb.urb_type",
- FT_UINT8, BASE_DEC, VALS(usb_linux_urb_type_vals), 0x0,
+ FT_CHAR, BASE_HEX, VALS(usb_linux_urb_type_vals), 0x0,
NULL, HFILL }},
{ &hf_usb_linux_transfer_type,
diff --git a/epan/dissectors/x11-fields b/epan/dissectors/x11-fields
index 5b4d6b829e..6b74142e18 100644
--- a/epan/dissectors/x11-fields
+++ b/epan/dissectors/x11-fields
@@ -74,7 +74,7 @@ border-pixel UINT32 HEX
border-pixmap UINT32 HEX VALS
border-width UINT16 DEC
button UINT8 DEC VALS
-byte-order UINT8 HEX VALS
+byte-order CHAR HEX VALS
childwindow UINT32 HEX
cap-style UINT8 DEC VALS
@@ -263,7 +263,7 @@ grab-status UINT8 DEC VALS
grab-window UINT32 HEX
graphics-exposures BOOLEAN NONE
height UINT16 DEC
-image-byte-order UINT8 HEX VALS
+image-byte-order CHAR HEX VALS
initial-connection NONE NONE undecoded
image-format UINT8 DEC VALS
image-pixmap-format UINT8 DEC VALS
diff --git a/epan/dissectors/x11-glx-render-enum.h b/epan/dissectors/x11-glx-render-enum.h
index 29ebb7e660..1b6ff9a22b 100644
--- a/epan/dissectors/x11-glx-render-enum.h
+++ b/epan/dissectors/x11-glx-render-enum.h
@@ -1,6 +1,6 @@
/* Do not modify this file. */
/* It was automatically generated by ../../tools/process-x11-xcb.pl
- using mesa version 12.0-branchpoint-413-g44e0c0e */
+ using mesa version 12.0-branchpoint-2878-g15804c4 */
/*
* Copyright 2008, 2009, 2013, 2014 Open Text Corporation <pharris[AT]opentext.com>
*
@@ -1330,6 +1330,27 @@ static const value_string mesa_enum[] = {
/* OpenGL extension ARB_cull_distance */
{ 0x82F9, "MAX_CULL_DISTANCES" },
{ 0x82FA, "MAX_COMBINED_CLIP_AND_CULL_DISTANCES" },
+/* OpenGL extension KHR_blend_equation_advanced */
+ { 0x9285, "BLEND_ADVANCED_COHERENT_KHR" },
+ { 0x9294, "MULTIPLY_KHR" },
+ { 0x9295, "SCREEN_KHR" },
+ { 0x9296, "OVERLAY_KHR" },
+ { 0x9297, "DARKEN_KHR" },
+ { 0x9298, "LIGHTEN_KHR" },
+ { 0x9299, "COLORDODGE_KHR" },
+ { 0x929A, "COLORBURN_KHR" },
+ { 0x929B, "HARDLIGHT_KHR" },
+ { 0x929C, "SOFTLIGHT_KHR" },
+ { 0x929E, "DIFFERENCE_KHR" },
+ { 0x92A0, "EXCLUSION_KHR" },
+ { 0x92AD, "HSL_HUE_KHR" },
+ { 0x92AE, "HSL_SATURATION_KHR" },
+ { 0x92AF, "HSL_COLOR_KHR" },
+ { 0x92B0, "HSL_LUMINOSITY_KHR" },
+/* OpenGL extension ARB_ES3_2_compatibility */
+ { 0x92BE, "PRIMITIVE_BOUNDING_BOX_ARB" },
+ { 0x9381, "MULTISAMPLE_LINE_WIDTH_RANGE_ARB" },
+ { 0x9382, "MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB" },
/* OpenGL extension GL_EXT_blend_color */
{ 0x8001, "CONSTANT_COLOR_EXT" },
{ 0x8002, "ONE_MINUS_CONSTANT_COLOR_EXT" },
diff --git a/epan/dissectors/x11-register-info.h b/epan/dissectors/x11-register-info.h
index 9ccb81ca7e..171c6e081f 100644
--- a/epan/dissectors/x11-register-info.h
+++ b/epan/dissectors/x11-register-info.h
@@ -71,7 +71,7 @@
{ &hf_x11_border_pixmap, { "border-pixmap", "x11.border-pixmap", FT_UINT32, BASE_HEX, VALS(border_pixmap_vals), 0, NULL, HFILL }},
{ &hf_x11_border_width, { "border-width", "x11.border-width", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
{ &hf_x11_button, { "button", "x11.button", FT_UINT8, BASE_DEC, VALS(button_vals), 0, NULL, HFILL }},
-{ &hf_x11_byte_order, { "byte-order", "x11.byte-order", FT_UINT8, BASE_HEX, VALS(byte_order_vals), 0, NULL, HFILL }},
+{ &hf_x11_byte_order, { "byte-order", "x11.byte-order", FT_CHAR, BASE_HEX, VALS(byte_order_vals), 0, NULL, HFILL }},
{ &hf_x11_childwindow, { "childwindow", "x11.childwindow", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
{ &hf_x11_cap_style, { "cap-style", "x11.cap-style", FT_UINT8, BASE_DEC, VALS(cap_style_vals), 0, NULL, HFILL }},
{ &hf_x11_change_host_mode, { "change-host-mode", "x11.change-host-mode", FT_UINT8, BASE_DEC, VALS(insert_delete_vals), 0, NULL, HFILL }},
@@ -246,7 +246,7 @@
{ &hf_x11_grab_window, { "grab-window", "x11.grab-window", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
{ &hf_x11_graphics_exposures, { "graphics-exposures", "x11.graphics-exposures", FT_BOOLEAN, BASE_NONE, NULL, 0, NULL, HFILL }},
{ &hf_x11_height, { "height", "x11.height", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
-{ &hf_x11_image_byte_order, { "image-byte-order", "x11.image-byte-order", FT_UINT8, BASE_HEX, VALS(image_byte_order_vals), 0, NULL, HFILL }},
+{ &hf_x11_image_byte_order, { "image-byte-order", "x11.image-byte-order", FT_CHAR, BASE_HEX, VALS(image_byte_order_vals), 0, NULL, HFILL }},
{ &hf_x11_initial_connection, { "initial-connection", "x11.initial-connection", FT_NONE, BASE_NONE, NULL, 0, "undecoded", HFILL }},
{ &hf_x11_image_format, { "image-format", "x11.image-format", FT_UINT8, BASE_DEC, VALS(image_format_vals), 0, NULL, HFILL }},
{ &hf_x11_image_pixmap_format, { "image-pixmap-format", "x11.image-pixmap-format", FT_UINT8, BASE_DEC, VALS(image_pixmap_format_vals), 0, NULL, HFILL }},