summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorMichael Mann <mmann78@netscape.net>2013-07-18 02:49:06 +0000
committerMichael Mann <mmann78@netscape.net>2013-07-18 02:49:06 +0000
commit617925c48213feebc84f7337b65c794be816b32b (patch)
treef2b7010fbc60e89099ce0ccd70976d4e07e62f57 /tools
parent9736e08445537363b410fefafc78c76bba0ea249 (diff)
downloadwireshark-617925c48213feebc84f7337b65c794be816b32b.tar.gz
Add better detection of strings and byte arrays.
svn path=/trunk/; revision=50714
Diffstat (limited to 'tools')
-rwxr-xr-xtools/convert_proto_tree_add_text.pl15
1 files changed, 11 insertions, 4 deletions
diff --git a/tools/convert_proto_tree_add_text.pl b/tools/convert_proto_tree_add_text.pl
index 0cffd6b13a..4868e23a1c 100755
--- a/tools/convert_proto_tree_add_text.pl
+++ b/tools/convert_proto_tree_add_text.pl
@@ -220,13 +220,15 @@ sub generate_hfs {
#encoding
if (($proto_tree_item[6] eq "1") ||
- ($args[5] =~ /tvb_get_guint8/)) {
+ ($args[5] =~ /tvb_get_guint8/) ||
+ ($args[5] =~ /tvb_bytes_to_str/)) {
$proto_tree_item[7] = "ENC_NA";
} elsif ($args[5] =~ /tvb_get_ntoh/) {
$proto_tree_item[7] = "ENC_BIG_ENDIAN";
} elsif ($args[5] =~ /tvb_get_letoh/) {
$proto_tree_item[7] = "ENC_LITTLE_ENDIAN";
- } elsif ($args[5] =~ /tvb_get_ephemeral_string/) {
+ } elsif (($args[5] =~ /tvb_get_ephemeral_string/) ||
+ ($args[5] =~ /tvb_format_text/)){
$proto_tree_item[7] = "ENC_NA|ENC_ASCII";
} elsif ($encoding ne "") {
$proto_tree_item[7] = $encoding;
@@ -241,10 +243,12 @@ sub generate_hfs {
#hf name
$proto_tree_item[3] = sprintf("hf_%s_%s", $protabbrev, lc($proto_tree_item[8]));
$proto_tree_item[3] =~ s/\s+/_/g;
+ $proto_tree_item[3] =~ s/\-/_/g;
#filter name
$proto_tree_item[10] = sprintf("%s.%s", $protabbrev, lc($proto_tree_item[8]));
$proto_tree_item[10] =~ s/\s+/_/g;
+ $proto_tree_item[10] =~ s/\-/_/g;
#VALS
if ($str =~ /val_to_str(_const)?\([^\,]*\,([^\,]*)\,/) {
@@ -295,9 +299,12 @@ sub generate_hfs {
$proto_tree_item[9] = "FT_GUID";
} elsif ($args[5] =~ /tvb_get_ephemeral_stringz/) {
$proto_tree_item[9] = "FT_STRINGZ";
- } elsif ($args[5] =~ /tvb_get_ephemeral_string/) {
+ } elsif (($args[5] =~ /tvb_get_ephemeral_string/) ||
+ ($args[5] =~ /tvb_format_text/)){
$proto_tree_item[9] = "FT_STRING";
- }
+ } elsif ($args[5] =~ /tvb_bytes_to_str/) {
+ $proto_tree_item[9] = "FT_BYTES";
+ }
#display base