Ethereal-dev: Re: [Ethereal-dev] MSVC build broken(Print.c changes) Patch

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Lars Roland <[email protected]>
Date: Tue, 27 Jul 2004 16:37:42 +0200

Lars Roland wrote:

Guy Harris wrote:

So why is "print.c" part of libethereal?  Dissectors don't use it.

(If the answer is "because libethereal isn't just stuff that dissectors
would use, it's all stuff used both by Tethereal and Ethereal", should
there be a single library of stuff shared by Tethereal and Ethereal, or
should there be a library for dissection, which could be used by
applications using the dissectors but that don't, for whatever reason,
want to use the rest of the code that's currently in libethereal, and
another library for stuff that's not dissector-related but that's shared
by Ethereal and Tethereal?)

I added print.c to the files linked into libethereal as print.c includes some variables from packet-data.c and from packet-frame.c. We can try to add those variables to libethereal.def instead. But I am not sure, if libethereal.dll is still self-contained without print.c. I would have to to test it.
It is still selfcontained. We can move print.c and ps.c out of 
libethereal.dll (I would keep these two files together).
We would have to add following variables to libethereal.def and replace 
"extern" by "ETH_VAR_IMPORT" in their declarations:
tree_is_expanded	DATA
num_tree_types		DATA
proto_data		DATA
hf_text_only		DATA
hf_frame_arrival_time	DATA
hf_frame_capture_len	DATA
hf_frame_packet_len	DATA
hf_frame_number		DATA
proto_frame		DATA

I will prepare patches, if moving print.c and ps.c out of libethereal is our goal.
Regards,
Lars