diff options
author | Michael Mann <mmann78@netscape.net> | 2013-12-19 22:18:30 +0000 |
---|---|---|
committer | Michael Mann <mmann78@netscape.net> | 2013-12-19 22:18:30 +0000 |
commit | 704f759ee4a1ba7a80aad1ae0d74bac334dc1ae9 (patch) | |
tree | f2c323588cac9da588e2ba1872bf1e032197ce25 /epan/dissectors/packet-gsm_cbch.c | |
parent | 1e29ff66993aec2ae5bc7ec7281e30bddac68e9d (diff) | |
download | wireshark-704f759ee4a1ba7a80aad1ae0d74bac334dc1ae9.tar.gz |
Makes "slot" filterable to pacify checkAPIs.pl
svn path=/trunk/; revision=54276
Diffstat (limited to 'epan/dissectors/packet-gsm_cbch.c')
-rw-r--r-- | epan/dissectors/packet-gsm_cbch.c | 64 |
1 files changed, 41 insertions, 23 deletions
diff --git a/epan/dissectors/packet-gsm_cbch.c b/epan/dissectors/packet-gsm_cbch.c index 2278a0da7e..aeba7f63c6 100644 --- a/epan/dissectors/packet-gsm_cbch.c +++ b/epan/dissectors/packet-gsm_cbch.c @@ -70,6 +70,7 @@ static int hf_gsm_cbch_sched_type = -1; static int hf_gsm_cbch_sched_begin_slot = -1; static int hf_gsm_cbch_sched_spare = -1; static int hf_gsm_cbch_sched_end_slot = -1; +static int hf_gsm_cbch_slot = -1; /* static int hf_gsm_cbch_sched_msg_id = -1; */ /* These fields are used when reassembling cbch fragments @@ -208,8 +209,8 @@ dissect_schedule_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *top_tree octet2 = tvb_get_guint8(tvb, offset + 1); msg_id = ((octet1 &0x7F) << 8) + octet2; - proto_tree_add_text(sched_subtree, tvb, offset, 2, - "Slot: %d, Message ID: %d, First transmission of an SMSCB within the Schedule Period", + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset, 2, new_slots[i], + "%d, Message ID: %d, First transmission of an SMSCB within the Schedule Period", new_slots[i], msg_id); offset +=2; other_slots[new_slots[i] - 1] = msg_id; @@ -219,40 +220,43 @@ dissect_schedule_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *top_tree /* MDT 00 */ if (octet1 == 0) { - proto_tree_add_text(sched_subtree, tvb, offset++, 1, - "Slot: %d, Repeat of non-existant slot %d", + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, new_slots[i], + "%d, Repeat of non-existant slot %d", new_slots[i], octet1); } else if (octet1 < new_slots[i]) { - proto_tree_add_text(sched_subtree, tvb, offset++, 1, - "Slot: %d, Message ID: %d, Repeat of Slot %d", + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, new_slots[i], + "%d, Message ID: %d, Repeat of Slot %d", new_slots[i], other_slots[octet1 - 1], octet1); other_slots[new_slots[i] - 1] = other_slots[octet1 - 1]; } else { - proto_tree_add_text(sched_subtree, tvb, offset++, 1, - "Slot: %d, Apparent forward reference to slot %d", + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, new_slots[i], + "%d, Apparent forward reference to slot %d", new_slots[i], octet1); } } else if (octet1 == 0x40) { /* MDT 010000000 */ - proto_tree_add_text(sched_subtree, tvb, offset++, 1, "Slot: %d Free Message Slot, optional reading", new_slots[k]); + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, new_slots[k], + "%d Free Message Slot, optional reading", new_slots[k]); other_slots[new_slots[i] - 1] = 0xFFFE; } else if (octet1 == 0x41) { /* MDT 010000001 */ - proto_tree_add_text(sched_subtree, tvb, offset++, 1, "Slot: %d Free Message Slot, reading advised", new_slots[k]); + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, new_slots[k], + "%d Free Message Slot, reading advised", new_slots[k]); other_slots[new_slots[i] - 1] = 0xFFFE; } else { /* reserved MDT */ - proto_tree_add_text(sched_subtree, tvb, offset, 1, "Slot: %d reserved MDT: %x", new_slots[k], octet1); + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset, 1, new_slots[k], + "%d reserved MDT: %x", new_slots[k], octet1); other_slots[new_slots[i] - 1] = 0xFFFE; } } @@ -288,9 +292,10 @@ dissect_schedule_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *top_tree octet2 = tvb_get_guint8(tvb, offset + 1); msg_id = ((octet1 &0x7F) << 8) + octet2; other_slots[k] = msg_id; - proto_tree_add_text(sched_subtree, tvb, offset, 2, - "Slot: %d, Message: %d, First transmission of an SMSCB within the Schedule Period", - ++k, msg_id); + k++; + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset, 2, k, + "%d, Message: %d, First transmission of an SMSCB within the Schedule Period", + k, msg_id); offset +=2; } else @@ -310,31 +315,39 @@ dissect_schedule_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *top_tree if (octet1 < k) { other_slots[k] = other_slots[octet1 - 1]; - proto_tree_add_text(sched_subtree, tvb, offset++, 1, - "Slot: %d, Message ID: %d, Repeat of Slot %d", - ++k, other_slots[octet1 - 1], octet1); + k++; + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, k, + "%d, Message ID: %d, Repeat of Slot %d", + k, other_slots[octet1 - 1], octet1); } else { - proto_tree_add_text(sched_subtree, tvb, offset++, 1, - "Slot: %d, Apparent forward reference to slot %d", - ++k, octet1); + k++; + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, k, + "%d, Apparent forward reference to slot %d", + k, octet1); } } else if (octet1 == 0x40) { /* MDT 010000000 */ - proto_tree_add_text(sched_subtree, tvb, offset++, 1, "Slot: %d Free Message Slot, optional reading", ++k); + k++; + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, k, + "%d Free Message Slot, optional reading", k); } else if (octet1 == 0x41) { /* MDT 010000001 */ - proto_tree_add_text(sched_subtree, tvb, offset++, 1, "Slot: %d Free Message Slot, reading advised", ++k); + k++; + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset++, 1, k, + "%d Free Message Slot, reading advised", k); } else { /* reserved MDT */ - proto_tree_add_text(sched_subtree, tvb, offset, 1, "Slot: %d reserved MDT: %x", ++k, octet1); + k++; + proto_tree_add_uint_format_value(sched_subtree, hf_gsm_cbch_slot, tvb, offset, 1, k, + "%d reserved MDT: %x", k, octet1); } } proto_item_set_end(item, tvb, offset); @@ -498,6 +511,11 @@ proto_register_gsm_cbch(void) FT_UINT8, BASE_DEC, NULL, 0x3F, NULL, HFILL} }, + { &hf_gsm_cbch_slot, + { "Slot", "gsm_cbch.slot", + FT_UINT8, BASE_DEC, NULL, 0x0, + NULL, HFILL} + }, #if 0 { &hf_gsm_cbch_sched_msg_id, { "GSM CBCH Schedule Message ID", "gsm_cbch.sched_msg_id", |