Wireshark mailing list archives

Re: [msvc] 'etype_vals' : unknown size


From: DbdM Tbt <spin.x2k () gmail com>
Date: Tue, 13 Aug 2013 13:11:12 +0800

Hello all,
I made a lousy mistake earlier and I should have realized it sooner. So
sorry.
The modification #define I posted earlier is wrong. _WIN32 affects
everything and based on my looking around the makefile, I found a /TP
compile option.
I think this is a more 'correct' (?) mod so that it will be a 1-time/step
compile:
#if !defined(__cplusplus)
WS_DLL_PUBLIC const value_string etype_vals[];
#else
WS_DLL_PUBLIC const value_string *etype_vals;
#endif

But still I am modifying epan/etypes.h.

To Mr. Anders,
Thank you for the link.
I will check on how to use it to my current development but let's just say
that I don't have the 'authority' to abandon the dissector I have right now.

Thank you,
David




On Tue, Aug 13, 2013 at 12:17 PM, Anders Broman <a.broman () bredband net>wrote:

 Hi,
Nothing to do with your problem but there is also a openflow dissector
being developed in trunk

http://anonsvn.wireshark.org/viewvc/trunk/epan/dissectors/packet-openflow.c?revision=50623&view=markup
written in C. It would be better to pool resources and work on that one.
Regards
Anders

DbdM Tbt skrev 2013-08-13 06:10:

  Hello again,
 I forgot to add that this 'hack' requires wireshark to be compiled in two
steps (if ever compilation is done from scratch or after distclean).
The first step is to 'make all' without the modification to etype_vals and
without the openflow plugin.
Then the second step is to plug in the openflow dissector and modify
etype_vals and make again.
 Clearly something is not right with this picture.
 Hopefully this additional info clears some things.
 Thanks.


On Tue, Aug 13, 2013 at 11:07 AM, DbdM Tbt <spin.x2k () gmail com> wrote:

Hello and good day.
My name is David and this is my first post in the list.
I am currently studying how to develop a dissector and currently building
on top of an existing one.
The base I am using is an openflow dissector found here:
http://www.openflow.org/wp/downloads/#dissector
Created by Mr. David Underhill.

Before proceeding, I would like to say that where possible, I try to
strictly follow the developers guide:
www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html
I think the only difference in my case is that I am using MS Visual
Studio 2010 instead of the Express edition.

My environment is now this:
[OS] WindowsXP Professional SP3 32bit
[Compiler] Microsoft (R) 32-bit C/C++ Optimizing Compiler Version
16.00.40219.01 for 80x86
   Copyright (C) Microsoft Corporation.  All rights reserved.
[Wireshark Base] ver: 1.10.1
   url: http://www.wireshark.org/download/src/wireshark-1.10.1.tar.bz2

Setup and compilation is ok with the wireshark sources as is.

But when I include the openflow dissector, I get this error (among
others):
C:\wireshark-1.10.1\epan/etypes.h(541) : error C2133: 'etype_vals' :
unknown size

I tried to work around this error by modifying epan/etypes.h like this:
+ #ifdef _WIN32
+ WS_DLL_PUBLIC const value_string *etype_vals;
+ #else
  WS_DLL_PUBLIC const value_string etype_vals[];
+ #endif

After modifying this and working around other compile errors (not part of
the topic), I have successfully built the plugin and wireshark.

I am a beginner in developing for windows as my experience is mostly in
linux environments (GNU).

So I would like to ask for the opinions on the developers in this list if
what I did was safe.
Is there a more 'correct' modification?
Is there a way around this error without modifying any wireshark codes?

Thank you very much,
David




___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org> <wireshark-dev () wireshark org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe <wireshark-dev-request () wireshark 
org?subject=unsubscribe>



___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org
?subject=unsubscribe

___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe

Current thread: