aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-per.c
diff options
context:
space:
mode:
authorPascal Quantin <pascal.quantin@gmail.com>2015-09-02 12:43:23 +0200
committerAlexis La Goutte <alexis.lagoutte@gmail.com>2015-09-02 11:59:42 +0000
commit5518ae078745a2083006ed51e17f532cbf400b12 (patch)
treef9480244705b0b130a6dd4d9db9d45f71ff2127d /epan/dissectors/packet-per.c
parente1dee7cfb6d6fe4da16ea0321fca33e4df9b26f1 (diff)
PER: followup of g59453fb
Change-Id: I45c02a249444e5f17d99eeb0ca8dea6f7a012262 Reviewed-on: https://code.wireshark.org/review/10356 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-per.c')
-rw-r--r--epan/dissectors/packet-per.c23
1 files changed, 8 insertions, 15 deletions
diff --git a/epan/dissectors/packet-per.c b/epan/dissectors/packet-per.c
index 9248dc8b05..a5261bac7d 100644
--- a/epan/dissectors/packet-per.c
+++ b/epan/dissectors/packet-per.c
@@ -70,7 +70,6 @@ static int hf_per_integer_length = -1; /* Show integer length if "show internal
/* static int hf_per_debug_pos = -1; */
static int hf_per_internal_range = -1;
static int hf_per_internal_num_bits = -1;
-static int hf_per_internal_bitstring = -1;
static int hf_per_internal_min = -1;
static int hf_per_internal_value = -1;
@@ -1299,8 +1298,7 @@ DEBUG_ENTRY("dissect_per_constrained_integer");
proto_tree_add_uint(tree, hf_per_internal_min, tvb, val_start,val_length, min);
proto_tree_add_uint64(tree, hf_per_internal_range, tvb, val_start, val_length, range);
proto_tree_add_uint(tree, hf_per_internal_num_bits, tvb, val_start, val_length, num_bits);
- proto_tree_add_string(tree, hf_per_internal_bitstring, tvb, val_start, val_length, str);
- proto_tree_add_uint_format(tree, hf_per_internal_value, tvb, val_start, val_length, val+min, "%s: value: %u", hfi->name, val+min);
+ proto_tree_add_uint64_format_value(tree, hf_per_internal_value, tvb, val_start, val_length, val+min, "%s decimal value: %u", str, val+min);
}
/* The actual value */
val+=min;
@@ -1441,7 +1439,7 @@ DEBUG_ENTRY("dissect_per_constrained_integer_64b");
* number of bits necessary to represent the range.
*/
char *str;
- int i, bit, length, str_length, str_index;
+ int i, bit, length, str_length, str_index = 0;
guint64 mask,mask2;
/* We only handle 64 bit integers */
mask = G_GUINT64_CONSTANT(0x8000000000000000);
@@ -1461,10 +1459,9 @@ DEBUG_ENTRY("dissect_per_constrained_integer_64b");
num_bits=1;
}
- /* prepare the string (max number of bits + quartet separators + field name + ": ") */
- str_length = 512+128+(int)strlen(hfi->name)+2;
+ /* prepare the string (max number of bits + quartet separators) */
+ str_length = 512+128;
str = (char *)wmem_alloc(wmem_packet_scope(), str_length+1);
- str_index = g_snprintf(str, str_length+1, "%s: ", hfi->name);
for(bit=0;bit<((int)(offset&0x07));bit++){
if(bit&&(!(bit%4))){
if (str_index < str_length) str[str_index++] = ' ';
@@ -1502,7 +1499,7 @@ DEBUG_ENTRY("dissect_per_constrained_integer_64b");
if (display_internal_per_fields) {
proto_tree_add_uint64(tree, hf_per_internal_range, tvb, val_start, val_length, range);
proto_tree_add_uint(tree, hf_per_internal_num_bits, tvb, val_start,val_length, num_bits);
- proto_tree_add_string(tree, hf_per_internal_bitstring, tvb, val_start, val_length, str);
+ proto_tree_add_uint64_format_value(tree, hf_per_internal_value, tvb, val_start, val_length, val, "%s decimal value: %" G_GINT64_MODIFIER "u", str, val);
}
} else if(range==256){
/* 10.5.7.2 */
@@ -2706,17 +2703,13 @@ proto_register_per(void)
{ "Bitfield length", "per.internal.num_bits",
FT_UINT32, BASE_DEC, NULL, 0,
NULL, HFILL }},
- { &hf_per_internal_bitstring,
- { "arbitrary", "per.internal.bitstring",
- FT_STRING, BASE_NONE, NULL, 0,
- NULL, HFILL }},
{ &hf_per_internal_min,
- { "MIN", "per.internal.min",
+ { "Min", "per.internal.min",
FT_UINT32, BASE_DEC, NULL, 0,
NULL, HFILL }},
{ &hf_per_internal_value,
- { "Value", "per.internal.value",
- FT_UINT32, BASE_DEC, NULL, 0,
+ { "Bits", "per.internal.value",
+ FT_UINT64, BASE_DEC, NULL, 0,
NULL, HFILL }},
};