Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: [Wireshark-dev] [PATCH] bugfix for Ethernet POWERLINK dissector

From: Daniel Krueger <krda79@xxxxxx>
Date: Wed, 23 Jul 2008 21:20:21 +0200
Hi,

the attached patch fixes a bug in the dissection of the StatusResponse,
where device-specific error code is only 6 Bytes long instead of 8 Bytes.

Additionally, I changed the spelling (i.e. the case) of "Ethernet
POWERLINK" to the new preferred one of the EPSG.

cu
   Daniel

Index: epan/dissectors/packet-epl.c
===================================================================
--- epan/dissectors/packet-epl.c	(revision 25515)
+++ epan/dissectors/packet-epl.c	(working copy)
@@ -1,6 +1,6 @@
 /* packet-epl.c
- * Routines for "Ethernet Powerlink 2.0" dissection
- * (ETHERNET Powerlink V2.0 Communication Profile Specification Draft Standard Version 1.0.0)
+ * Routines for "Ethernet POWERLINK 2.0" dissection
+ * (Ethernet POWERLINK V2.0 Communication Profile Specification Draft Standard Version 1.0.0)
  *
  * Copyright (c) 2006: Zurich University of Applied Sciences Winterthur (ZHW)
  *                     Institute of Embedded Systems (InES)
@@ -970,8 +970,8 @@
         proto_tree_add_item(epl_seb_tree, hf_epl_asnd_statusresponse_seb_err_errorregister_u8_bit7, tvb, offset, 1, TRUE);
         offset += 2;
 
-        proto_tree_add_item(epl_seb_tree, hf_epl_asnd_statusresponse_seb_devicespecific_err, tvb,offset, 8, TRUE);
-        offset += 8;
+        proto_tree_add_item(epl_seb_tree, hf_epl_asnd_statusresponse_seb_devicespecific_err, tvb,offset, 6, TRUE);
+        offset += 6;
 
         /* List of errors / events */
         /* get the number of entries in the error code list*/
@@ -1501,7 +1501,7 @@
     module_t *epl_module;
 
     /* Register the protocol name and description */
-    proto_epl = proto_register_protocol("ETHERNET Powerlink v2", "EPL", "epl");
+    proto_epl = proto_register_protocol("Ethernet POWERLINK V2", "EPL", "epl");
 
     /* Required function calls to register the header fields and subtrees used */
     proto_register_field_array(proto_epl, hf, array_length(hf));