fix this, by providing required functions in the new file file_util.c - it's mostly copied from GLib (g_open alike - that take UTF8 as filename format but don't use msvcrt.dll V6 for this as the glib files do)
"link" to these functions in file_util.h: #define eth_open eth_stdio_open
revert changes (from SVN 20282) throughout the code related to these file functions which were introduced with the first tries of MSVC 2005 ...
Hopefully I've done everything right with the new file_util.c ...
svn path=/trunk/; revision=20402
- Microsoft .Net Framework SDK Version 1.1
- Microsoft .Net Framework 2.0 SDK
... which seems to work fine now (except for the open problems like zlib) :-)
Some of the plugins need different linker flags depending on the MSVC. I've set a "define" in config.nmake (PLUGIN_LDFLAGS) and used it in the affected plugins/.../Makefile.nmake. Maybe we should generally change the plugins that way.
btw: The "Microsoft Visual C++ Toolkit 2003" (mentioned some time ago on the list) doesn't work as some important files are missing - and we have much easier alternatives now :-)
svn path=/trunk/; revision=20332
The problem is the slash in e.g.:
@$(PYTHON) ../../tools/make-dissector-reg.py
is interpreted as an option instead of being part of the path.
I didn't wanted to use backslashes as this might introduce new problems with cygwin's python port.
svn path=/trunk/; revision=19730
sets errno to 0 when we can't open a file. This resurrected the annoying
"C:\Program Files\Ethereal\asn1/default.tt" error in the ASN.1 plugin,
since we depended on errno being set to ENOENT. Move some logic around
to account for this.
svn path=/trunk/; revision=18073
while this should improve performance by unmeasurably little it does have the sideeffect that once we finish the rewrite tcp analysis might actually work and work well even for tcp over tcp tunnelling.
this also means that if you include packet-tcp.h you also need to include emem.h .
svn path=/trunk/; revision=17681
include fails as we don't do -Iwiretap.
If we have it, include <sys/stat.h> in epan/filesystem.c - we need it
for stat() and the macros and structures it uses.
svn path=/trunk/; revision=16410
to do this, I've added file_util.h to wiretap (would file_compat.h be a better name?), and provide compat_macros like eth_open() instead of open(). While at it, move other file related things there, like #include <io.h>, definition of O_BINARY and alike, so it's all in one place.
deleted related things from config.h.win32
As of these massive changes, I'm almost certain that this will break the Unix build. I'll keep an eye on the buildbot so hopefully everything is working again soon.
svn path=/trunk/; revision=16403
-use g_snprintf instead of sprintf and snprintf
-use g_strdup_printf where appropriate
-remove #include "snprintf.h" (as only g_snprintf should be used)
-replace some more alloc/realloc/calloc/free with their glib pendants
svn path=/trunk/; revision=15264
range implementation.
Make string preferences "const", to squelch compiler warnings, and make
other variables and arguments "const" to match.
Port numbers are unsigned; display them as such.
svn path=/trunk/; revision=15037
returned quite a list of files. Add them to MAINTAINERCLEANFILES.
Whitespace changes (replace multiple spaces by TABs, in a few cases this
needed to be done at the beginning of Makefile lines.
svn path=/trunk/; revision=14891
it serves the same purpose as the register routine in a built-in
dissector, and don't require all dissectors to have one, as they might
just be taps.
Get rid of the stats tree's init routine, as it's just a tap, and as it
doesn't do anything.
Update the idl2eth Python script to generate plugins with register routines.
svn path=/trunk/; revision=13644
Introduce a new init routine for plugins,
which does not take the plugin api table as an
argument and allows etheral to distinguish
between plugins using the old and the new api.
Update README.plugins accordingly
Change all g_warnings() in epan/plugins.c to report_failue().
On windows we do not have a log console open while
loading the plugins, because a log console cannot be opened before the prefs have been read. Thus g_warnings()
does not work for reporting problems with plugins.
svn path=/trunk/; revision=13596
files. Do this with GENERATED_HEADER_FILES, GENERATED_C_FILES, and
GENERATED_FILES macros in Makefile.common files, along the lines of what
wiretap/Makefile.common has.
Clean up "*~" files with "make clean" rather than only "make distclean"
in some additional places.
Add "maintainer-clean" rules to the Makefile.nmake files, paralelling
the ones in the automake-generated Makefile.in files, using the
GENERATED_FILES macros from Makefile.common files. In some cases, move
the cleanup of files from "make distclean" to "make maintainer-clean",
and in other cases, put in a comment indicating why we're not doing that
(because some files that are distributed in the source tarballs, namely
Flex output, were built with a UN*X Flex and won't compile on Windows,
so we get rid of them with "make distclean" so you can clean up stuff
that *has* to be re-generated for Windows).
Clean up some *CLEANFILES definitions - get rid of ones that no longer
apply as files were moved or that add to the definition a name that's
already there.
svn path=/trunk/; revision=13402
address table if we don't need the plugin address table, so as to catch
plugin dissectors that don't directly include stuff they need -
eventually, the plugin address table stuff should completely go away, so
we don't want dissectors depending on it.
Fix those dissectors caught by this.
Don't include "simple_dialog.h" in the ASN.1 dissector - it doesn't use
it.
svn path=/trunk/; revision=12140
converted to pointers to null strings (see prefs.c for an explanation).
Initialize "current_asn1" to a mallocated null string.
That lets us use "strcmp()" to compare asn1_filename and current_asn1.
We already do that with asn1_pduname and current_pduname, so use
"strcmp()" for them as well.
Call "build_pdu_tree()" if we haven't yet built a PDU tree, even if the
PDU type preference hasn't changed.
Don't register with any of the ports unless we have a PDU tree, so we
don't try to dissect with a null PDU tree pointer.
Before constructing a PDU tree, if we already have a PDU tree, free it.
When we free data_nodes, free the data attached to the nodes.
Make a bunch of stuff static.
svn path=/trunk/; revision=12045
and as plugin dissectors shouldn't be linked with GTK+ (so that they
don't depend on Ethereal being built with a particular version of GTK+ -
Ethereal is packaged for Windows in both GTK+ 1.3[.x] and 2.x versions -
and so that they can work with Tethereal, which doesn't use GTK+).
svn path=/trunk/; revision=11840
preferences to the new multi-port ones, so that, instead of complaining
when the old preferences were seen, we make the port be the one port in
the new preference.
Make the "message_win" "generic ASN.1" preference an obsolete
preference, so we silently ignore it rather than complaining about it.
svn path=/trunk/; revision=11623
include of <resolv.h> in any system header file gets the system
<resolv.h> (needed for builds on Tru64 with GTK+ 1.2[.x]).
svn path=/trunk/; revision=11615