Do some cleanup:
authorwmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7>
Sat, 2 Jan 2010 22:00:30 +0000 (22:00 +0000)
committerwmeier <wmeier@f5534014-38df-0310-8fa8-9805f1628bb7>
Sat, 2 Jan 2010 22:00:30 +0000 (22:00 +0000)
- Separate .h file not req'd since not used elsewhere;
- Use bitmasks instead of using non-portable bitfields;
- Note possible incorrect display of crcError and alignError flags;
- Clean up spacing.

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@31412 f5534014-38df-0310-8fa8-9805f1628bb7

plugins/ethercat/Makefile.common
plugins/ethercat/packet-esl.c
plugins/ethercat/packet-esl.h [deleted file]

index 647465793c3b63e0772bee362b045b75b008a4a6..7b9aae24382803cf32cbb423177bf07fdbd4ae25 100644 (file)
@@ -40,7 +40,6 @@ DISSECTOR_SRC = \
 DISSECTOR_INCLUDES =   \
        packet-ams.h \
        packet-ecatmb.h \
-       packet-esl.h \
        packet-ethercat-datagram.h \
        packet-ethercat-frame.h \
        packet-ioraw.h \
index 4cd25c6bae67696cef80986225dee10ca643cb23..1f293cba3a520f96cfb531bb46802c3a2513ebda 100644 (file)
@@ -24,8 +24,6 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  */
 
-/* Include files */
-
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
 #include <epan/packet.h>
 #include <epan/prefs.h>
 
-#include "packet-esl.h"
+#if 0
+/* XXX: using bitfields is compiler dependent: See README.developer */
+
+typedef union _EslFlagsUnion
+{
+    struct
+    {
+        guint16    port7        : 1;
+        guint16    port6        : 1;
+        guint16    port5        : 1;
+        guint16    port4        : 1;
+        guint16    port3        : 1;
+        guint16    port2        : 1;
+        guint16    port1        : 1;
+        guint16    port0        : 1;
+        guint16    extended     : 1;
+        guint16    reserved     : 2;
+        guint16    crcError     : 1;
+        guint16    alignError   : 1;
+        guint16    timeStampEna : 1;
+        guint16    port9        : 1;
+        guint16    port8        : 1;
+    }d;
+    struct
+    {
+        guint8     loPorts      : 1;
+        guint8     flagsHiPorts : 1;
+    }lo_hi_flags;
+    guint   flags;
+} EslFlagsUnion;
+#endif
+
+#define esl_port7_bitmask        0x0001
+#define esl_port6_bitmask        0x0002
+#define esl_port5_bitmask        0x0004
+#define esl_port4_bitmask        0x0008
+#define esl_port3_bitmask        0x0010
+#define esl_port2_bitmask        0x0020
+#define esl_port1_bitmask        0x0040
+#define esl_port0_bitmask        0x0080
+#define esl_extended_bitmask     0x0100
+
+#define esl_crcError_bitmask     0x0800
+#define esl_alignError_bitmask   0x1000
+#define esl_timeStampEna_bitmask 0x2000
+#define esl_port9_bitmask        0x4000
+#define esl_port8_bitmask        0x8000
+
+#if 0
+typedef struct _EslHeader
+{
+    guint8         eslCookie[6];           /* 01 01 05 10 00 00 */
+    EslFlagsUnion  flags;
+    guint64        timeStamp;
+} EslHeader, *PEslHeader;
+#endif
+
+
+#define SIZEOF_ESLHEADER 16
 
 static dissector_handle_t eth_withoutfcs_handle;
 static int esl_enable_dissector = FALSE;
@@ -45,244 +101,272 @@ void proto_reg_handoff_esl(void);
 /* Define the esl proto */
 int proto_esl  = -1;
 
-static int ett_esl                             = -1;
+static int ett_esl           = -1;
 
-static int hf_esl_timestamp    = -1;
-static int hf_esl_port                 = -1;
-static int hf_esl_crcerror             = -1;
-static int hf_esl_alignerror   = -1;
+static int hf_esl_timestamp  = -1;
+static int hf_esl_port       = -1;
+static int hf_esl_crcerror   = -1;
+static int hf_esl_alignerror = -1;
 
-static const true_false_string flags_yes_no = {  
-       "yes",
-       "no"
+/* Note: using external tfs strings apparently doesn't work in a plugin */
+static const true_false_string flags_yes_no = {
+    "yes",
+    "no"
 };
 
+#if 0
+/* XXX: using bitfields is compiler dependent: See README.developer */
 static guint16 flags_to_port(guint16 flagsValue) {
-       EslFlagsUnion flagsUnion;
-       flagsUnion.flags = flagsValue;
-       if ( flagsUnion.d.port0 )
-               return 0;
-       else if ( flagsUnion.d.port1 )
-               return 1;
-       else if ( flagsUnion.d.port2 )
-               return 2;
-       else if ( flagsUnion.d.port3 )
-               return 3;
-       else if ( flagsUnion.d.port4 )
-               return 4;
-       else if ( flagsUnion.d.port5 )
-               return 5;
-       else if ( flagsUnion.d.port6 )
-               return 6;
-       else if ( flagsUnion.d.port7 )
-               return 7;
-       else if ( flagsUnion.d.port8 )
-               return 8;
-       else if ( flagsUnion.d.port9 )
-               return 9;
-
-       return -1;
+    EslFlagsUnion flagsUnion;
+    flagsUnion.flags = flagsValue;
+    if ( flagsUnion.d.port0 )
+        return 0;
+    else if ( flagsUnion.d.port1 )
+        return 1;
+    else if ( flagsUnion.d.port2 )
+        return 2;
+    else if ( flagsUnion.d.port3 )
+        return 3;
+    else if ( flagsUnion.d.port4 )
+        return 4;
+    else if ( flagsUnion.d.port5 )
+        return 5;
+    else if ( flagsUnion.d.port6 )
+        return 6;
+    else if ( flagsUnion.d.port7 )
+        return 7;
+    else if ( flagsUnion.d.port8 )
+        return 8;
+    else if ( flagsUnion.d.port9 )
+        return 9;
+
+    return -1;
 }
+#endif
 
+static guint16 flags_to_port(guint16 flagsValue) {
+    if ( (flagsValue & esl_port0_bitmask) != 0 )
+        return 0;
+    else if ( (flagsValue & esl_port1_bitmask) != 0 )
+        return 1;
+    else if ( (flagsValue & esl_port2_bitmask) != 0 )
+        return 2;
+    else if ( (flagsValue & esl_port3_bitmask) != 0 )
+        return 3;
+    else if ( (flagsValue & esl_port4_bitmask) != 0 )
+        return 4;
+    else if ( (flagsValue & esl_port5_bitmask) != 0 )
+        return 5;
+    else if ( (flagsValue & esl_port6_bitmask) != 0 )
+        return 6;
+    else if ( (flagsValue & esl_port7_bitmask) != 0 )
+        return 7;
+    else if ( (flagsValue & esl_port8_bitmask) != 0 )
+        return 8;
+    else if ( (flagsValue & esl_port9_bitmask) != 0 )
+        return 9;
+
+    return -1;
+}
 
 /*esl*/
 static void
 dissect_esl_header(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
 
-       proto_item *ti = NULL;
-       proto_tree *esl_header_tree;
-       gint offset = 0;
-       
-       guint esl_length = tvb_reported_length(tvb);    
-       if ( esl_length >= SIZEOF_ESLHEADER )
-       {
-               if (tree) 
-               {                                                               
-                       guint16 flags;
-                       
-                       ti = proto_tree_add_item(tree, proto_esl, tvb, 0, SIZEOF_ESLHEADER, TRUE);                                      
-                       esl_header_tree = proto_item_add_subtree(ti, ett_esl);                                          
-                       offset+=6;                      
-                                       
-                       flags =  tvb_get_letohs(tvb, offset);
-                       proto_tree_add_uint(esl_header_tree, hf_esl_port, tvb, offset, 2, flags_to_port(flags));                
-                       
-                       proto_tree_add_item(esl_header_tree, hf_esl_crcerror, tvb, offset, 2, TRUE);
-                       proto_tree_add_item(esl_header_tree, hf_esl_alignerror, tvb, offset, 2, TRUE);
-                       offset+=2;
-
-                       proto_tree_add_item(esl_header_tree, hf_esl_timestamp, tvb, offset, 8, TRUE);                                           
-               }                                                               
-       }
+    proto_item *ti = NULL;
+    proto_tree *esl_header_tree;
+    gint offset = 0;
+
+    guint esl_length = tvb_reported_length(tvb);
+    if ( esl_length >= SIZEOF_ESLHEADER )
+    {
+        if (tree)
+        {
+            guint16 flags;
+
+            ti = proto_tree_add_item(tree, proto_esl, tvb, 0, SIZEOF_ESLHEADER, TRUE);
+            esl_header_tree = proto_item_add_subtree(ti, ett_esl);
+            offset+=6;
+
+            flags =  tvb_get_letohs(tvb, offset);
+            proto_tree_add_uint(esl_header_tree, hf_esl_port, tvb, offset, 2, flags_to_port(flags));
+
+            proto_tree_add_item(esl_header_tree, hf_esl_crcerror, tvb, offset, 2, TRUE);
+            proto_tree_add_item(esl_header_tree, hf_esl_alignerror, tvb, offset, 2, TRUE);
+            offset+=2;
+
+            proto_tree_add_item(esl_header_tree, hf_esl_timestamp, tvb, offset, 8, TRUE);
+        }
+    }
 }
 
 typedef struct _ref_time_frame_info
 {
-       frame_data              *fd;
-       guint64                 esl_ts;
-       nstime_t                        abs_ts;
-       guint32                 num;
+    frame_data  *fd;
+    guint64      esl_ts;
+    nstime_t     abs_ts;
+    guint32      num;
 } ref_time_frame_info;
 
 static ref_time_frame_info ref_time_frame;
 
 gboolean is_esl_header(tvbuff_t *tvb, gint offset)
 {
-       return tvb_get_guint8(tvb, offset) == 0x01 &&
-                       tvb_get_guint8(tvb, offset+1) == 0x01 &&
-                       tvb_get_guint8(tvb, offset+2) == 0x05 &&
-                       tvb_get_guint8(tvb, offset+3) == 0x10 &&
-                       tvb_get_guint8(tvb, offset+4) == 0x00 &&
-                       tvb_get_guint8(tvb, offset+5) == 0x00;
+    return tvb_get_guint8(tvb, offset) == 0x01 &&
+        tvb_get_guint8(tvb, offset+1) == 0x01 &&
+        tvb_get_guint8(tvb, offset+2) == 0x05 &&
+        tvb_get_guint8(tvb, offset+3) == 0x10 &&
+        tvb_get_guint8(tvb, offset+4) == 0x00 &&
+        tvb_get_guint8(tvb, offset+5) == 0x00;
 }
 
 void modify_times(tvbuff_t *tvb, gint offset, packet_info *pinfo)
 {
-       if ( ref_time_frame.fd == NULL ) 
-       {
-               ref_time_frame.esl_ts = tvb_get_letoh64(tvb, offset+8);
-               ref_time_frame.fd = pinfo->fd;
-               ref_time_frame.num = pinfo->fd->num;
-               ref_time_frame.abs_ts = pinfo->fd->abs_ts;
-       }
-       else if ( !pinfo->fd->flags.visited ) 
-       {
-               guint64 nsecs = tvb_get_letoh64(tvb, offset+8) - ref_time_frame.esl_ts;
-               guint64 secs = nsecs/1000000000;                                                
-               nstime_t ts;
-               nstime_t ts_delta;
-               
-               ts.nsecs = ref_time_frame.abs_ts.nsecs + (int)(nsecs-(secs*1000000000)); 
-               if ( ts.nsecs > 1000000000 ) 
-               {
-                       ts.nsecs-=1000000000;
-                       secs++;
-               }
-               
-               ts.secs = ref_time_frame.abs_ts.secs+(int)secs;
-               nstime_delta(&ts_delta, &ts, &pinfo->fd->abs_ts);
-               
-               pinfo->fd->abs_ts = ts;
-               nstime_add(&pinfo->fd->rel_ts, &ts_delta);
-               nstime_add(&pinfo->fd->del_dis_ts, &ts_delta);
-               nstime_add(&pinfo->fd->del_cap_ts, &ts_delta);
-       }
+    if ( ref_time_frame.fd == NULL )
+    {
+        ref_time_frame.esl_ts = tvb_get_letoh64(tvb, offset+8);
+        ref_time_frame.fd = pinfo->fd;
+        ref_time_frame.num = pinfo->fd->num;
+        ref_time_frame.abs_ts = pinfo->fd->abs_ts;
+    }
+    else if ( !pinfo->fd->flags.visited )
+    {
+        guint64 nsecs = tvb_get_letoh64(tvb, offset+8) - ref_time_frame.esl_ts;
+        guint64 secs = nsecs/1000000000;
+        nstime_t ts;
+        nstime_t ts_delta;
+
+        ts.nsecs = ref_time_frame.abs_ts.nsecs + (int)(nsecs-(secs*1000000000));
+        if ( ts.nsecs > 1000000000 )
+        {
+            ts.nsecs-=1000000000;
+            secs++;
+        }
+
+        ts.secs = ref_time_frame.abs_ts.secs+(int)secs;
+        nstime_delta(&ts_delta, &ts, &pinfo->fd->abs_ts);
+
+        pinfo->fd->abs_ts = ts;
+        nstime_add(&pinfo->fd->rel_ts, &ts_delta);
+        nstime_add(&pinfo->fd->del_dis_ts, &ts_delta);
+        nstime_add(&pinfo->fd->del_cap_ts, &ts_delta);
+    }
 }
 
 static gboolean
 dissect_esl_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
 {
-       static gboolean in_heur = FALSE;
-       gboolean                                result;
-       tvbuff_t                                *next_tvb;           
-       guint                                   esl_length = tvb_length(tvb);
-       
-       if ( in_heur )
-               return FALSE;
-
-       in_heur = TRUE;
-       /*TRY */
-       {
-               if ( ref_time_frame.fd != NULL && !pinfo->fd->flags.visited && pinfo->fd->num <= ref_time_frame.num )
-                       ref_time_frame.fd = NULL;
-
-               /* Check that there's enough data */
-               if ( tvb_length(tvb) < SIZEOF_ESLHEADER )
-                       return FALSE;
-
-               /* check for Esl frame, this has a unique destination MAC from Beckhoff range 
-                       First 6 bytes must be: 01 01 05 10 00 00 */
-               if ( is_esl_header(tvb, 0) )
-               {
-                       dissect_esl_header(tvb, pinfo, tree);
-                       if ( eth_withoutfcs_handle != NULL )
-                       {
-                               next_tvb = tvb_new_subset_remaining(tvb, SIZEOF_ESLHEADER);
-                               call_dissector(eth_withoutfcs_handle, next_tvb, pinfo, tree);      
-                       }
-                       modify_times(tvb, 0, pinfo);            
-                       result = TRUE;
-               }
-               else if ( is_esl_header(tvb, esl_length-SIZEOF_ESLHEADER) )
-               {               
-                       if ( eth_withoutfcs_handle != NULL )
-                       {
-                               next_tvb = tvb_new_subset(tvb, 0, esl_length-SIZEOF_ESLHEADER, esl_length-SIZEOF_ESLHEADER);
-                               call_dissector(eth_withoutfcs_handle, next_tvb, pinfo, tree);      
-                       }
-                       next_tvb = tvb_new_subset(tvb, esl_length-SIZEOF_ESLHEADER, SIZEOF_ESLHEADER, SIZEOF_ESLHEADER);
-                       dissect_esl_header(next_tvb, pinfo, tree); 
-                       modify_times(tvb, esl_length-SIZEOF_ESLHEADER, pinfo);          
-                       
-                       result = TRUE;
-               }
-               else
-               {
-                       result = FALSE;
-               }
-       }
-       /*CATCH_ALL{
-               in_heur = FALSE;
-               RETHROW;
-       }ENDTRY;*/
-       in_heur = FALSE;
-       return result;
+    static gboolean  in_heur    = FALSE;
+    gboolean         result;
+    tvbuff_t        *next_tvb;
+    guint            esl_length = tvb_length(tvb);
+
+    if ( in_heur )
+        return FALSE;
+
+    in_heur = TRUE;
+    /*TRY */
+    {
+        if ( ref_time_frame.fd != NULL && !pinfo->fd->flags.visited && pinfo->fd->num <= ref_time_frame.num )
+            ref_time_frame.fd = NULL;
+
+        /* Check that there's enough data */
+        if ( tvb_length(tvb) < SIZEOF_ESLHEADER )
+            return FALSE;
+
+        /* check for Esl frame, this has a unique destination MAC from Beckhoff range
+           First 6 bytes must be: 01 01 05 10 00 00 */
+        if ( is_esl_header(tvb, 0) )
+        {
+            dissect_esl_header(tvb, pinfo, tree);
+            if ( eth_withoutfcs_handle != NULL )
+            {
+                next_tvb = tvb_new_subset_remaining(tvb, SIZEOF_ESLHEADER);
+                call_dissector(eth_withoutfcs_handle, next_tvb, pinfo, tree);
+            }
+            modify_times(tvb, 0, pinfo);
+            result = TRUE;
+        }
+        else if ( is_esl_header(tvb, esl_length-SIZEOF_ESLHEADER) )
+        {
+            if ( eth_withoutfcs_handle != NULL )
+            {
+                next_tvb = tvb_new_subset(tvb, 0, esl_length-SIZEOF_ESLHEADER, esl_length-SIZEOF_ESLHEADER);
+                call_dissector(eth_withoutfcs_handle, next_tvb, pinfo, tree);
+            }
+            next_tvb = tvb_new_subset(tvb, esl_length-SIZEOF_ESLHEADER, SIZEOF_ESLHEADER, SIZEOF_ESLHEADER);
+            dissect_esl_header(next_tvb, pinfo, tree);
+            modify_times(tvb, esl_length-SIZEOF_ESLHEADER, pinfo);
+
+            result = TRUE;
+        }
+        else
+        {
+            result = FALSE;
+        }
+    }
+    /*CATCH_ALL{
+      in_heur = FALSE;
+      RETHROW;
+      }ENDTRY;*/
+    in_heur = FALSE;
+    return result;
 }
 
 void
 proto_register_esl(void) {
-  static hf_register_info hf[] = {                             
-       { &hf_esl_port, 
-               { "Port", "esl.port",
-                       FT_UINT16, BASE_DEC, NULL, 0x00,          
-                       NULL, HFILL }
-       },              
-       { &hf_esl_crcerror,
-               { "Crc Error", "esl.crcerror",
-                       FT_BOOLEAN, 16, TFS(&flags_yes_no), 0x1000,          
-                       NULL, HFILL }
-       },
-       { &hf_esl_alignerror,
-               { "Alignment Error", "esl.alignerror",
-                       FT_BOOLEAN, 16, TFS(&flags_yes_no), 0x0800,          
-                       NULL, HFILL }
-       },
-       { &hf_esl_timestamp, 
-               { "timestamp", "esl.timestamp",
-                       FT_UINT64, BASE_HEX, NULL, 0x0, NULL, HFILL }
-       },                              
-  };
-
-  static gint *ett[] = {
-               &ett_esl,                               
-  };
-       
-  module_t *esl_module;
-
-  proto_esl = proto_register_protocol("EtherCAT Switch Link",
-                                     "ESL","esl");
-
-  esl_module = prefs_register_protocol(proto_esl, proto_reg_handoff_esl);
-
-  prefs_register_bool_preference(esl_module, "enable", "Enable dissector",
-                                  "Enable this dissector (default is false)",
-                                  &esl_enable_dissector);
-
-
-  proto_register_field_array(proto_esl,hf,array_length(hf));
-  proto_register_subtree_array(ett,array_length(ett));
-  
-  register_dissector("esl", dissect_esl_header, proto_esl);
+    static hf_register_info hf[] = {
+        { &hf_esl_port,
+          { "Port", "esl.port",
+            FT_UINT16, BASE_DEC, NULL, 0x00,
+            NULL, HFILL }
+        },
+        { &hf_esl_crcerror,
+          { "Crc Error", "esl.crcerror",
+            FT_BOOLEAN, 16, TFS(&flags_yes_no), 0x1000 /* XXX: Should be 0x0800 to match struct definition ?? */,
+            NULL, HFILL }
+        },
+        { &hf_esl_alignerror,
+          { "Alignment Error", "esl.alignerror",
+            FT_BOOLEAN, 16, TFS(&flags_yes_no), 0x0800 /* xxx: Should be 0x1000 to match struct definition ?? */,
+            NULL, HFILL }
+        },
+        { &hf_esl_timestamp,
+          { "timestamp", "esl.timestamp",
+            FT_UINT64, BASE_HEX, NULL, 0x0,
+            NULL, HFILL }
+        },
+    };
+
+    static gint *ett[] = {
+        &ett_esl,
+    };
+
+    module_t *esl_module;
+
+    proto_esl = proto_register_protocol("EtherCAT Switch Link",
+                                        "ESL","esl");
+
+    esl_module = prefs_register_protocol(proto_esl, proto_reg_handoff_esl);
+
+    prefs_register_bool_preference(esl_module, "enable", "Enable dissector",
+                                   "Enable this dissector (default is false)",
+                                   &esl_enable_dissector);
+
+    proto_register_field_array(proto_esl,hf,array_length(hf));
+    proto_register_subtree_array(ett,array_length(ett));
+
+    register_dissector("esl", dissect_esl_header, proto_esl);
 }
 
 void
 proto_reg_handoff_esl(void) {
-  static gboolean initialized = FALSE;
-
-  if (!initialized) {
-    eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
-    heur_dissector_add("eth", dissect_esl_heur, proto_esl);
-    initialized = TRUE;
-  }
-  proto_set_decoding(proto_esl, esl_enable_dissector);
+    static gboolean initialized = FALSE;
+
+    if (!initialized) {
+        eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+        heur_dissector_add("eth", dissect_esl_heur, proto_esl);
+        initialized = TRUE;
+    }
+    proto_set_decoding(proto_esl, esl_enable_dissector);
 }
diff --git a/plugins/ethercat/packet-esl.h b/plugins/ethercat/packet-esl.h
deleted file mode 100644 (file)
index 742a35d..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/* packet-esl.h
- *
- * $Id$
- *
- * Copyright (c) 2007 by Beckhoff Automation GmbH
- *
- * Wireshark - Network traffic analyzer
- * By Gerald Combs <gerald@wireshark.org>
- * Copyright 1998 Gerald Combs
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
- */
-
-#ifndef _PACKET_ESL_H_
-#define _PACKET_ESL_H_
-
-typedef union _EslFlagsUnion
-{
-       struct
-       {
-               guint16                         port7   : 1;            
-               guint16                         port6   : 1;            
-               guint16                         port5   : 1;            
-               guint16                         port4   : 1;            
-               guint16                         port3   : 1;                    
-               guint16                         port2   : 1;                                    
-               guint16                         port1   : 1;                            
-               guint16                         port0   : 1;                            
-               guint16                         extended                : 1;                            
-               guint16                         reserved                : 2;
-               guint16                         crcError                : 1;
-               guint16                         alignError      : 1;                    
-               guint16                         timeStampEna: 1;                                                
-               guint16                         port9   : 1;                    
-               guint16                         port8   : 1;                            
-       }d;
-       struct
-       {
-               guint8                          loPorts                 : 1;
-               guint8                          flagsHiPorts    : 1;
-       }lo_hi_flags;
-       guint   flags;
-}EslFlagsUnion;
-
-#if 0
-typedef struct _EslHeader
-{      
-guint8                                 eslCookie[6];           /* 01 01 05 10 00 00 */
-       EslFlagsUnion                   flags;
-       guint64                                 timeStamp;
-} EslHeader, *PEslHeader;
-#endif
-
-
-#define SIZEOF_ESLHEADER 16
-#endif /* _PACKET_ESL_H_*/