aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
authorChris Maynard <Christopher.Maynard@GTECH.COM>2013-07-01 03:31:11 +0000
committerChris Maynard <Christopher.Maynard@GTECH.COM>2013-07-01 03:31:11 +0000
commit50d79e872ade9f396d7782624c848219781456cf (patch)
tree630f797c80fde6e4523b9a6a25b14097992e5446 /epan
parentc12624f43bb13e910c8e4963e8a7f576d1b11724 (diff)
A better fix than r50278.
svn path=/trunk/; revision=50279
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-zbee-zcl-ha.c68
1 files changed, 32 insertions, 36 deletions
diff --git a/epan/dissectors/packet-zbee-zcl-ha.c b/epan/dissectors/packet-zbee-zcl-ha.c
index 77e163afc1..4f22ca8d8a 100644
--- a/epan/dissectors/packet-zbee-zcl-ha.c
+++ b/epan/dissectors/packet-zbee-zcl-ha.c
@@ -810,8 +810,8 @@ static const value_string zbee_zcl_appl_evtalt_status_names[] = {
static void
dissect_zbee_zcl_appl_evtalt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
- proto_item *payload_root = NULL;
- proto_tree *payload_tree = NULL;
+ proto_item *payload_root;
+ proto_tree *payload_tree;
zbee_zcl_packet *zcl = (zbee_zcl_packet *)pinfo->private_data;
guint offset = 0;
guint8 cmd_id = zcl->cmd_id;
@@ -819,22 +819,21 @@ dissect_zbee_zcl_appl_evtalt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
/* Create a subtree for the ZCL Command frame, and add the command ID to it. */
if (zcl->direction == ZBEE_ZCL_FCF_TO_SERVER) {
+ /* Append the command name to the info column. */
+ col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
+ val_to_str_const(cmd_id, zbee_zcl_appl_evtalt_srv_rx_cmd_names, "Unknown Command"),
+ zcl->tran_seqno);
+
/* Add the command ID. */
proto_tree_add_item(tree, hf_zbee_zcl_appl_evtalt_srv_rx_cmd_id, tvb, offset, 1, cmd_id);
+
/* Check is this command has a payload, than add the payload tree */
rem_len = tvb_reported_length_remaining(tvb, ++offset);
if (rem_len > 0) {
/*payload_root = */proto_tree_add_text(tree, tvb, offset, rem_len, "Payload");
/*payload_tree = proto_item_add_subtree(payload_root, ett_zbee_zcl_appl_evtalt);*/
- }
-
- /* Append the command name to the info column. */
- col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
- val_to_str_const(cmd_id, zbee_zcl_appl_evtalt_srv_rx_cmd_names, "Unknown Command"),
- zcl->tran_seqno);
- /* Call the appropriate command dissector */
- if (payload_tree) {
+ /* Call the appropriate command dissector */
switch (cmd_id) {
case ZBEE_ZCL_CMD_ID_APPL_EVTALT_GET_ALERTS_CMD:
/* No payload */
@@ -846,22 +845,21 @@ dissect_zbee_zcl_appl_evtalt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
}
}
else { /* ZBEE_ZCL_FCF_TO_CLIENT */
+ /* Append the command name to the info column. */
+ col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
+ val_to_str_const(cmd_id, zbee_zcl_appl_evtalt_srv_tx_cmd_names, "Unknown Command"),
+ zcl->tran_seqno);
+
/* Add the command ID. */
proto_tree_add_item(tree, hf_zbee_zcl_appl_evtalt_srv_tx_cmd_id, tvb, offset, 1, cmd_id);
+
/* Check is this command has a payload, than add the payload tree */
rem_len = tvb_reported_length_remaining(tvb, ++offset);
if (rem_len > 0) {
payload_root = proto_tree_add_text(tree, tvb, offset, rem_len, "Payload");
payload_tree = proto_item_add_subtree(payload_root, ett_zbee_zcl_appl_evtalt);
- }
-
- /* Append the command name to the info column. */
- col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
- val_to_str_const(cmd_id, zbee_zcl_appl_evtalt_srv_tx_cmd_names, "Unknown Command"),
- zcl->tran_seqno);
- /* Call the appropriate command dissector */
- if (payload_tree) {
+ /* Call the appropriate command dissector */
switch (cmd_id) {
case ZBEE_ZCL_CMD_ID_APPL_EVTALT_GET_ALERTS_RSP_CMD:
case ZBEE_ZCL_CMD_ID_APPL_EVTALT_ALERTS_NOTIF_CMD:
@@ -1193,8 +1191,8 @@ static const value_string zbee_zcl_appl_stats_srv_tx_cmd_names[] = {
static void
dissect_zbee_zcl_appl_stats (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
- proto_item *payload_root = NULL;
- proto_tree *payload_tree = NULL;
+ proto_item *payload_root;
+ proto_tree *payload_tree;
zbee_zcl_packet *zcl = (zbee_zcl_packet *)pinfo->private_data;
guint offset = 0;
guint8 cmd_id = zcl->cmd_id;
@@ -1202,22 +1200,21 @@ dissect_zbee_zcl_appl_stats (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
/* Create a subtree for the ZCL Command frame, and add the command ID to it. */
if (zcl->direction == ZBEE_ZCL_FCF_TO_SERVER) {
+ /* Append the command name to the info column. */
+ col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
+ val_to_str_const(cmd_id, zbee_zcl_appl_stats_srv_rx_cmd_names, "Unknown Command"),
+ zcl->tran_seqno);
+
/* Add the command ID. */
proto_tree_add_item(tree, hf_zbee_zcl_appl_stats_srv_rx_cmd_id, tvb, offset, 1, cmd_id);
+
/* Check is this command has a payload, than add the payload tree */
rem_len = tvb_reported_length_remaining(tvb, ++offset);
if (rem_len > 0) {
payload_root = proto_tree_add_text(tree, tvb, offset, rem_len, "Payload");
payload_tree = proto_item_add_subtree(payload_root, ett_zbee_zcl_appl_stats);
- }
-
- /* Append the command name to the info column. */
- col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
- val_to_str_const(cmd_id, zbee_zcl_appl_stats_srv_rx_cmd_names, "Unknown Command"),
- zcl->tran_seqno);
- /* Call the appropriate command dissector */
- if (payload_tree) {
+ /* Call the appropriate command dissector */
switch (cmd_id) {
case ZBEE_ZCL_CMD_ID_APPL_STATS_LOG_REQ:
dissect_zcl_appl_stats_log_req(tvb, payload_tree, &offset);
@@ -1233,22 +1230,21 @@ dissect_zbee_zcl_appl_stats (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
}
}
else { /* ZBEE_ZCL_FCF_TO_CLIENT */
+ /* Append the command name to the info column. */
+ col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
+ val_to_str_const(cmd_id, zbee_zcl_appl_stats_srv_tx_cmd_names, "Unknown Command"),
+ zcl->tran_seqno);
+
/* Add the command ID. */
proto_tree_add_item(tree, hf_zbee_zcl_appl_stats_srv_tx_cmd_id, tvb, offset, 1, cmd_id);
+
/* Check is this command has a payload, than add the payload tree */
rem_len = tvb_reported_length_remaining(tvb, ++offset);
if (rem_len > 0) {
payload_root = proto_tree_add_text(tree, tvb, offset, rem_len, "Payload");
payload_tree = proto_item_add_subtree(payload_root, ett_zbee_zcl_appl_stats);
- }
-
- /* Append the command name to the info column. */
- col_append_fstr(pinfo->cinfo, COL_INFO, "%s, Seq: %u",
- val_to_str_const(cmd_id, zbee_zcl_appl_stats_srv_tx_cmd_names, "Unknown Command"),
- zcl->tran_seqno);
- /* Call the appropriate command dissector */
- if (payload_tree) {
+ /* Call the appropriate command dissector */
switch (cmd_id) {
case ZBEE_ZCL_CMD_ID_APPL_STATS_LOG_NOTIF:
case ZBEE_ZCL_CMD_ID_APPL_STATS_LOG_RSP: