aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/profinet/packet-pn-dcp.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/profinet/packet-pn-dcp.c')
-rw-r--r--plugins/profinet/packet-pn-dcp.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/plugins/profinet/packet-pn-dcp.c b/plugins/profinet/packet-pn-dcp.c
index 3e3b58a7aa..7ae72bd7a9 100644
--- a/plugins/profinet/packet-pn-dcp.c
+++ b/plugins/profinet/packet-pn-dcp.c
@@ -100,6 +100,7 @@ static int hf_pn_dcp_suboption_dhcp_device_id = -1;
static int hf_pn_dcp_suboption_control = -1;
static int hf_pn_dcp_suboption_control_response = -1;
+static int hf_pn_dcp_suboption_control_signal_value = -1;
static int hf_pn_dcp_suboption_deviceinitiative = -1;
static int hf_pn_dcp_deviceinitiative_value = -1;
@@ -252,6 +253,11 @@ static const value_string pn_dcp_suboption_ip_block_info[] = {
{ 0, NULL }
};
+static const value_string pn_dcp_suboption_control_signal_value[] = {
+ {0x0100, "Flash Once"},
+ {0, NULL}
+};
+
#define PNDCP_SUBOPTION_DEVICE_MANUF 0x01
#define PNDCP_SUBOPTION_DEVICE_NAMEOFSTATION 0x02
#define PNDCP_SUBOPTION_DEVICE_DEV_ID 0x03
@@ -800,6 +806,7 @@ dissect_PNDCP_Suboption_Control(tvbuff_t *tvb, int offset, packet_info *pinfo,
guint16 block_length;
guint16 block_qualifier;
guint16 BlockQualifier;
+ guint16 u16SignalValue;
gchar *info_str;
guint8 block_error;
proto_item *item = NULL;
@@ -825,7 +832,7 @@ dissect_PNDCP_Suboption_Control(tvbuff_t *tvb, int offset, packet_info *pinfo,
offset = dissect_pn_uint16(tvb, offset, pinfo, tree, hf_pn_dcp_block_qualifier, &block_qualifier);
block_length -= 2;
- offset = dissect_pn_undecoded(tvb, offset, pinfo, tree, block_length);
+ offset = dissect_pn_uint16(tvb, offset, pinfo, tree, hf_pn_dcp_suboption_control_signal_value, &u16SignalValue);
break;
case PNDCP_SUBOPTION_CONTROL_RESPONSE:
proto_item_append_text(block_item, "Control/Response");
@@ -1325,6 +1332,11 @@ proto_register_pn_dcp (void)
FT_UINT8, BASE_DEC, VALS(pn_dcp_option), 0x0,
NULL, HFILL }},
+ { &hf_pn_dcp_suboption_control_signal_value,
+ { "SignalValue", "pn_dcp.suboption_control_signal_value",
+ FT_UINT16, BASE_HEX, VALS(pn_dcp_suboption_control_signal_value), 0x0,
+ NULL, HFILL } },
+
{ &hf_pn_dcp_suboption_deviceinitiative,
{ "Suboption", "pn_dcp.suboption_deviceinitiative",
FT_UINT8, BASE_DEC, VALS(pn_dcp_suboption_deviceinitiative), 0x0,