aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/wimax/msg_dsc.c
diff options
context:
space:
mode:
authorBill Meier <wmeier@newsguy.com>2009-08-04 19:01:34 +0000
committerBill Meier <wmeier@newsguy.com>2009-08-04 19:01:34 +0000
commit8589c2f11bb81dddd09d8bd2adcfb5e8a5b33dff (patch)
treeb8c8ee79da5947a5d0667ec76143c0440f2a95bb /plugins/wimax/msg_dsc.c
parentcb7dac7100ba7e3f9208dbee243b1a0160254f02 (diff)
Minor changes:
- Move proto_register...() to the end of the file as per convention; - Move ett[] to be local to proto_register...(); - "if (...==-1)" not req'd in proto_register...(); - #include <moduleinfo.h> not req'd; - Remove unneeded forward declarations. svn path=/trunk/; revision=29296
Diffstat (limited to 'plugins/wimax/msg_dsc.c')
-rw-r--r--plugins/wimax/msg_dsc.c140
1 files changed, 67 insertions, 73 deletions
diff --git a/plugins/wimax/msg_dsc.c b/plugins/wimax/msg_dsc.c
index 287e19aeab..049b33789f 100644
--- a/plugins/wimax/msg_dsc.c
+++ b/plugins/wimax/msg_dsc.c
@@ -44,30 +44,16 @@
extern gint proto_mac_mgmt_msg_dsa_decoder;
-/* forward reference */
-void proto_register_mac_mgmt_msg_dsc(void);
-void dissect_mac_mgmt_msg_dsc_req_decoder(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-void dissect_mac_mgmt_msg_dsc_rsp_decoder(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-void dissect_mac_mgmt_msg_dsc_ack_decoder(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-
static gint proto_mac_mgmt_msg_dsc_decoder = -1;
static gint ett_mac_mgmt_msg_dsc_req_decoder = -1;
static gint ett_mac_mgmt_msg_dsc_rsp_decoder = -1;
static gint ett_mac_mgmt_msg_dsc_ack_decoder = -1;
-/* Setup protocol subtree array */
-static gint *ett[] =
-{
- &ett_mac_mgmt_msg_dsc_req_decoder,
- &ett_mac_mgmt_msg_dsc_rsp_decoder,
- &ett_mac_mgmt_msg_dsc_ack_decoder
-};
-
-static gchar *dsc_msgs[] =
-{
- "Dynamic Service Change Request (DSC-REQ)",
- "Dynamic Service Change Response (DSC-RSP)",
- "Dynamic Service Change Acknowledge (DSC-ACK)"
+static const value_string vals_dsc_msgs[] = {
+ MAC_MGMT_MSG_DSC_REQ, "Dynamic Service Change Request (DSC-REQ)",
+ MAC_MGMT_MSG_DSC_RSP, "Dynamic Service Change Response (DSC-RSP)",
+ MAC_MGMT_MSG_DSC_ACK, "Dynamic Service Change Acknowledge (DSC-ACK)",
+ 0, NULL
};
/* fix fields */
@@ -77,57 +63,6 @@ static gint hf_dsc_rsp_message_type = -1;
static gint hf_dsc_confirmation_code = -1;
static gint hf_dsc_ack_message_type = -1;
-/* Register Wimax Mac Payload Protocol and Dissector */
-void proto_register_mac_mgmt_msg_dsc(void)
-{
- /* DSx display */
- static hf_register_info hf[] =
- {
- {
- &hf_dsc_ack_message_type,
- {
- "MAC Management Message Type", "wmx.macmgtmsgtype.dsc_ack",
- FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
- }
- },
- {
- &hf_dsc_req_message_type,
- {
- "MAC Management Message Type", "wmx.macmgtmsgtype.dsc_req",
- FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
- }
- },
- {
- &hf_dsc_rsp_message_type,
- {
- "MAC Management Message Type", "wmx.macmgtmsgtype.dsc_rsp",
- FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
- }
- },
- {
- &hf_dsc_confirmation_code,
- {
- "Confirmation code", "wmx.dsc.confirmation_code",
- FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
- }
- },
- {
- &hf_dsc_transaction_id,
- {
- "Transaction ID", "wmx.dsc.transaction_id",
- FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL
- }
- }
- };
-
- if (proto_mac_mgmt_msg_dsc_decoder == -1)
- {
- proto_mac_mgmt_msg_dsc_decoder = proto_mac_mgmt_msg_dsa_decoder;
-
- proto_register_field_array(proto_mac_mgmt_msg_dsc_decoder, hf, array_length(hf));
- proto_register_subtree_array(ett, array_length(ett));
- }
-}
void dissect_mac_mgmt_msg_dsc_req_decoder(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
@@ -147,7 +82,8 @@ void dissect_mac_mgmt_msg_dsc_req_decoder(tvbuff_t *tvb, packet_info *pinfo, pro
/* Get the tvb reported length */
tvb_len = tvb_reported_length(tvb);
/* display MAC message type */
- dsc_item = proto_tree_add_protocol_format(tree, proto_mac_mgmt_msg_dsc_decoder, tvb, offset, tvb_len, "%s (%u bytes)", dsc_msgs[payload_type - MAC_MGMT_MSG_DSC_REQ], tvb_len);
+ dsc_item = proto_tree_add_protocol_format(tree, proto_mac_mgmt_msg_dsc_decoder, tvb, offset, tvb_len,
+ "%s (%u bytes)", val_to_str(payload_type, vals_dsc_msgs, "Unknown"), tvb_len);
/* add MAC DSx subtree */
dsc_tree = proto_item_add_subtree(dsc_item, ett_mac_mgmt_msg_dsc_req_decoder);
/* Decode and display the Uplink Channel Descriptor (UCD) */
@@ -184,7 +120,8 @@ void dissect_mac_mgmt_msg_dsc_rsp_decoder(tvbuff_t *tvb, packet_info *pinfo, pro
/* Get the tvb reported length */
tvb_len = tvb_reported_length(tvb);
/* display MAC message type */
- dsc_item = proto_tree_add_protocol_format(tree, proto_mac_mgmt_msg_dsc_decoder, tvb, offset, tvb_len, "%s (%u bytes)", dsc_msgs[payload_type - MAC_MGMT_MSG_DSC_REQ], tvb_len);
+ dsc_item = proto_tree_add_protocol_format(tree, proto_mac_mgmt_msg_dsc_decoder, tvb, offset, tvb_len,
+ "%s (%u bytes)", val_to_str(payload_type, vals_dsc_msgs, "Unknown"), tvb_len);
/* add MAC DSx subtree */
dsc_tree = proto_item_add_subtree(dsc_item, ett_mac_mgmt_msg_dsc_rsp_decoder);
/* Decode and display the Uplink Channel Descriptor (UCD) */
@@ -225,7 +162,8 @@ void dissect_mac_mgmt_msg_dsc_ack_decoder(tvbuff_t *tvb, packet_info *pinfo, pro
/* Get the tvb reported length */
tvb_len = tvb_reported_length(tvb);
/* display MAC message type */
- dsc_item = proto_tree_add_protocol_format(tree, proto_mac_mgmt_msg_dsc_decoder, tvb, offset, tvb_len, "%s (%u bytes)", dsc_msgs[payload_type - MAC_MGMT_MSG_DSC_REQ], tvb_len);
+ dsc_item = proto_tree_add_protocol_format(tree, proto_mac_mgmt_msg_dsc_decoder, tvb, offset, tvb_len,
+ "%s (%u bytes)", val_to_str(payload_type, vals_dsc_msgs, "Unknown"), tvb_len);
/* add MAC DSx subtree */
dsc_tree = proto_item_add_subtree(dsc_item, ett_mac_mgmt_msg_dsc_ack_decoder);
/* Decode and display the Uplink Channel Descriptor (UCD) */
@@ -248,3 +186,59 @@ void dissect_mac_mgmt_msg_dsc_ack_decoder(tvbuff_t *tvb, packet_info *pinfo, pro
}
}
+/* Register Wimax Mac Payload Protocol and Dissector */
+void proto_register_mac_mgmt_msg_dsc(void)
+{
+ /* DSx display */
+ static hf_register_info hf[] =
+ {
+ {
+ &hf_dsc_ack_message_type,
+ {
+ "MAC Management Message Type", "wmx.macmgtmsgtype.dsc_ack",
+ FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
+ }
+ },
+ {
+ &hf_dsc_req_message_type,
+ {
+ "MAC Management Message Type", "wmx.macmgtmsgtype.dsc_req",
+ FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
+ }
+ },
+ {
+ &hf_dsc_rsp_message_type,
+ {
+ "MAC Management Message Type", "wmx.macmgtmsgtype.dsc_rsp",
+ FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
+ }
+ },
+ {
+ &hf_dsc_confirmation_code,
+ {
+ "Confirmation code", "wmx.dsc.confirmation_code",
+ FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL
+ }
+ },
+ {
+ &hf_dsc_transaction_id,
+ {
+ "Transaction ID", "wmx.dsc.transaction_id",
+ FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL
+ }
+ }
+ };
+
+ /* Setup protocol subtree array */
+ static gint *ett[] =
+ {
+ &ett_mac_mgmt_msg_dsc_req_decoder,
+ &ett_mac_mgmt_msg_dsc_rsp_decoder,
+ &ett_mac_mgmt_msg_dsc_ack_decoder
+ };
+
+ proto_mac_mgmt_msg_dsc_decoder = proto_mac_mgmt_msg_dsa_decoder;
+
+ proto_register_field_array(proto_mac_mgmt_msg_dsc_decoder, hf, array_length(hf));
+ proto_register_subtree_array(ett, array_length(ett));
+}