Commit Graph

158 Commits

Author SHA1 Message Date
Gerald Combs 200ff9dc52 Pick up some fixes and enhancements from
http://cvs.fedora.redhat.com/viewcvs/rpms/ethereal/FC-4/:

In the LPD dissector, make lpd_client_code a value_string so that we
don't segfault.  Do the same for lpd_server_code, although it's not
strictly necessary.

Check to see if htmlview is installed, and use it as our HTML viewer.

The Fedora RPM has other patches, but I'm not sure if they should
be applied.


svn path=/trunk/; revision=15143
2005-07-29 21:55:45 +00:00
Ulf Lamping f6831ab340 bugfix: mark pcap_freecode() as optional, as it's not available by WinPcap 2.3
add optional pcap_next_ex() which is currently unused

svn path=/trunk/; revision=14412
2005-05-21 09:59:49 +00:00
Gerald Combs 02032272ad When we dynamically discover a Kerberos key, it helps to add it to the
key list.  In the Nettle code, clear the key list and re-read the key
file when the key file preference changes.

Remove a redundant define in config.h.win32.

svn path=/trunk/; revision=12471
2004-11-01 23:54:05 +00:00
Gerald Combs fee16ab377 Add support for decoding DES3/CBC/MD5 keys. Make it disabled by default.
Whitespace cleanup.

svn path=/trunk/; revision=12304
2004-10-15 15:36:12 +00:00
Guy Harris 444119dbcb From Lars Roland: add an option to link plugins with libethereal rather
than using the plugin address table.

svn path=/trunk/; revision=12139
2004-09-29 19:30:10 +00:00
Guy Harris 29753bf6b2 From Gisle Vanem: add support for pcap_datalink_val_to_name() for Win32.
Also add support for pcap_datalink_name_to_val(), and arrange that we
properly define HAVE_PCAP_DATALINK_NAME_TO_VAL and
HAVE_PCAP_DATALINK_VAL_TO_NAME for MSVC++ builds.

svn path=/trunk/; revision=12073
2004-09-23 17:54:49 +00:00
Guy Harris dfad2b94f5 Some UN*Xes don't have any "strtou*" routine to convert a string to a
64-bit integer; use "g_ascii_strtoull()", and, in the configure script,
check whether it's available in GLib (it's not in GLib 1.2[.x]) and, if
not, supply the GLib 2.4.5 version of the routine.

For G_MAXUINT32 and G_MAXUINT64, put a "U" at the end of the constant to
explicitly flag it as unsigned.

svn path=/trunk/; revision=11889
2004-09-03 18:14:00 +00:00
Guy Harris 7e68a1e2cf "_strtoui64()" first appeared in MSVC++ 7 (good job of supporting those
64-bit ints *present in MSVC++ 6*, Microsoft!), so we can't use it.  Use
"g_ascii_strtoull()", instead - it's present in GLib 2.x, and we require
GLib 2.x on Win32.  (It's not present in 1.2[.x], and we don't require
2.x for UN*X, so we don't just use it everywhere.)

svn path=/trunk/; revision=11824
2004-08-25 03:26:56 +00:00
Guy Harris a1871624c7 We're using "strtoull()", not "strtol()" - define "strtoull", not
"strtol", as "_strtoui64".

Make the comment match what the UN*X configure script puts in.

svn path=/trunk/; revision=11799
2004-08-22 01:43:16 +00:00
Guy Harris c68f62210f Add "tvb_get_ntoh64()" and "tvb_get_letoh64()" routines to fetch 64-bit
integers.

Make FT_INT64 and FT_UINT64 add numerical values, rather than byte-array
values, to the protocol tree, and add routines to add specified 64-bit
integer values to the protocol tree.

Use those routines in the RSVP dissector.

svn path=/trunk/; revision=11796
2004-08-22 00:31:58 +00:00
Guy Harris 8a8b883450 Set the svn:eol-style property on all text files to "native", so that
they have LF at the end of the line on UN*X and CR/LF on Windows;
hopefully this means that if a CR/LF version is checked in on Windows,
the CRs will be stripped so that they show up only when checked out on
Windows, not on UN*X.

svn path=/trunk/; revision=11400
2004-07-18 00:24:25 +00:00
Ulf Lamping 7812b42c24 bugfix: prefix for int64 output on win32 must be "I64" not "i64"
svn path=/trunk/; revision=11191
2004-06-20 09:31:48 +00:00
Guy Harris 7002776572 Pick up the stuff I did for tcpdump to figure out the right strings to
use to format 64-bit integers.

Fix the RSVP dissector to use that rather than hardcoding "%ll" in.

Remove the "only if G_HAVE_GINT64 is defined" bit from the discussion of
64-bit integers - we're too dependent on having them to support
compilers that don't have a 64-bit integral data type.  Do, however,
note that neither "long" nor "long long" are acceptable, and also note
that you shouldn't assume "%ll" does the trick for printing them.

svn path=/trunk/; revision=11182
2004-06-19 00:07:23 +00:00
Guy Harris 15af0f656f From Lars Roland: add support for building a libethereal.dll with MSVC:
add a config.nmake option to control whether to build
	libethereal.dll or not;

	remove "./wiretap" from PATH to prevent problems due to
	wrongly-loaded files;

	build dissector.lib with MSVC;

	move "print.c" and "ps.c" to the dissector helpers, as "print.c"
	imports variables from packet-frame.c and packet-data.c, which
	are in libethereal;

	move "g711.c" out of the dissector helpers, as they're used only
	by Ethereal in a tap, not in Tethereal or in any dissector;

	add a .def file for libethereal;

	arrange to declare global variables exported from libethereal
	with "__declspec(dllimport)" when building programs that import
	those variables;

	update the NSIS installer.

Make the "configure" script define ETH_VAR_IMPORT as "extern".

svn path=/trunk/; revision=10834
2004-05-09 10:03:41 +00:00
Olivier Biot 388aaadcb7 Get rid of epan/config.h.win32.
Fix a missing ZLIB_CFLAGS in epan/Makefile.nmake.

svn path=/trunk/; revision=10807
2004-05-06 20:48:36 +00:00
Gerald Combs 409948eced Add PCRE support to the Windows build.
svn path=/trunk/; revision=9185
2003-12-07 00:04:32 +00:00
Guy Harris 4192ad9770 Let people configure whether to build with Zlib or not solely by
controlling whether ZLIB_DIR is defined or not in config.nmake.

svn path=/trunk/; revision=8911
2003-11-07 23:27:13 +00:00
Guy Harris bd2ea47524 Configure whether we have WinPcap based on whether WINPCAP_VERSION is
set in the config.nmake file.

Configure whether we have pcap_findalldevs() based on whether
WINPCAP_VERSION is 2.3 (if so, we don't) or 3.0 or 3.1 (if so, we do).

WinPcap 3.0 has the new libpcap declarations of "pcap_lookupnet()" and
"pcap_open_live()" in which the first argument is a "const char *"
rather than a "char *"; declare the functions and pointers to them
appropriately based on the version of WinPcap.

If we don't have pcap_findalldevs(), don't declare a pointer to it, as
we don't have a declaration of pcap_if_t.

We also need to refer to "pcap_freealldevs()", so make a pointer for it.

"symbols[]" is a const array; make the pointer to elements in it a const
pointer.

Fix some typoes.

svn path=/trunk/; revision=8660
2003-10-10 09:48:54 +00:00
Guy Harris ec5499613d Don't wire into "config.h.win32" files an indication of whether we have
GNU ADNS or not - set it based on whether ADNS_DIR is defined by
"config.nmake", and make "config.h.win32" files that specify whether we
have GNU ADNS dependent on "config.nmake".

Note in "config.nmake" that:

	if you have GNU ADNS, ADNS_DIR should be defined as the
	directory in which the ADNS .lib file resides;

	if you don't have GNU ADNS, ADNS_DIR shouldn't be defined.

svn path=/trunk/; revision=7860
2003-06-12 09:45:42 +00:00
Gerald Combs f755cf5034 Add GNU ADNS to the Windows build environment. A precompiled DLL can be
found at

	http://adns.jgaa.com/

and

	http://www.ethereal.com/distribution/win32/development/

The modifications to the root-level config.h.win32 and Makefile.nmake
may not be neccessary.

svn path=/trunk/; revision=7769
2003-06-02 18:40:02 +00:00
Guy Harris d812fb2810 Define HAVE_NET_SNMP, as Ethereal is set up to be built with Net-SNMP
rather than UCD SNMP on Windows, and define HAVE_SOME_SNMP as per Wes
Hardaker's changes to handle both Net-SNMP and UCD SNMP.

svn path=/trunk/; revision=6484
2002-10-23 18:27:33 +00:00
Gerald Combs ec8fd2703a Link to libsnmp under Win32.
In gtk/main.c and tethereal.c set MIBDIRS to <get_program_path()>\snmp\mibs
so that we can drop the MIB files there, instead of the default c:\usr\...
path.

Add NET_SNMP_DIR to config.nmake and modify Makefile.nmake to adjust
CFLAGs, ethereal_LIBS and tethereal_LIBS accordingly.

Define HAVE_UCD_SNMP in config.h.win32.

I tested this by creating c:\program files\ethereal\snmp\mibs and
dropping in the MIB files that come with Net-SNMP.  Ethereal resolved
system.sysDescr.0 to "iso.3.6.1.2.1.1.1.0" under Windows.  Under Linux
it resolved to "SNMPv2-MIB::sysDescr.0".

Ethereal.nsi still needs to be updated.

A compiled version of the Net-SNMP library can be found at

    http://www.ethereal.com/distribution/win32/development/

svn path=/trunk/; revision=6385
2002-10-09 03:07:34 +00:00
Guy Harris affdea9815 From Ulf Lamping: define HAVE_LIBZ in the top-level config.h.win32, as
it's defined in the Wiretap config.h.win32.

svn path=/trunk/; revision=6243
2002-09-10 08:23:10 +00:00
Guy Harris 73ef5a2753 WinPcap 2.3's <pcap.h> includes <packet32.h>, and WinPcap 2.3's
<packet32.h> includes <winsock2.h>; we include that rather than
<winsock.h>, to avoid errors due to conflicting declarations in
<winsock.h> and <winsock2.h>.

svn path=/trunk/; revision=5742
2002-06-23 10:32:36 +00:00
Guy Harris 6327b456db Get rid of the "--enable-snmp" option; instead, use "--with-ucdsnmp".
Make the directory option to "--with-ucdsnmp" optional.  Handle
"--with-ucdsnmp" similar to the way "--with-pcap" is handled.

Get rid of unnecessary #defines in "packet-cops.c".

Get rid of no-longer-necessary include of "dlfcn.h" in "packet-snmp.c".

svn path=/trunk/; revision=4930
2002-03-12 10:37:04 +00:00
Guy Harris f1b98e60bc Don't assume that all UNIX platforms have <iconv.h> - explicitly check
whether it's present.

This puts HAVE_ICONV_H in the "config.h" file, so put in an entry for it
in "config.h.win32" - an entry that doesn't define it - and get rid of
the check for WIN32 in "xmlstub.h".

svn path=/trunk/; revision=4124
2001-11-02 10:01:00 +00:00
Guy Harris 9d601c6799 On Windows, use the directory in which the binary resides as the
directory in which global data files are stored.  If an installed binary
is being run, that's the correct directory for them; if a build-tree
binary is being run, the "manuf" file will be there, and you can put
other data files there as well, if necessary.

Do the same with plugins, except that, if there's no
"plugins\\{version}" subdirectory of that directory, fall back on the
default installation directory, so you at least have a place where you
can put plugins for use by build-tree binaries.  (Should we, instead,
have the Windows build procedure create a subdirectory of the "plugins"
source directory, with the plugin version number as its name, and copy
the plugins there, so you'd use the build-tree plugin binaries?)

Move "test_for_directory()" out of "util.c" and into
"epan/filesystem.c", with the other file system access portability
wrappers and convenience routines.  Fix "util.h" not to declare it - or
other routines moved to "epan/filesystem.c" a while ago.

svn path=/trunk/; revision=3858
2001-08-21 06:39:18 +00:00
Guy Harris 01d5c10b07 On Win32, use the default installation directory for Ethereal as the
"standard" plugin directory, and, instead of getting PLUGIN_DIR (the
*real* installation directory) from the configure script, as can be done
in UNIX, attempt to get it by getting the full pathname of the currently
running program and assuming it's in the installation directory.

svn path=/trunk/; revision=3850
2001-08-18 23:21:31 +00:00
Guy Harris 5bb08b0970 Fix AC_ETHEREAL_PCAP_CHECK so that, if a directory was specified with
"--with-pcap", it adds the "include" subdirectory of that directory to
the list of directories to search for include files, rather than adding
the directory itself.

Check whether libpcap defines "pcap_version", and define
HAVE_PCAP_VERSION if it does.  Use "pcap_version" iff HAVE_PCAP_VERSION
is defined, rather than special-casing MacOS X.

Don't #define a string for the WinPcap version; just leave
HAVE_PCAP_VERSION undefined on Windows, as WinPcap 2.2beta is out, so we
can no longer assume that the Windows version of Ethereal is using
WinPcap 2.1.

svn path=/trunk/; revision=3792
2001-07-27 07:10:13 +00:00
Guy Harris 8e4d1cce1e Windows+MSVC lacks "strptime()", so we need to include "strptime.h" to
declare our version of it.

svn path=/trunk/; revision=3502
2001-06-02 08:07:47 +00:00
Guy Harris 3331642eb6 Base HAVE_PLUGINS on whether "g_module_supported()" returns TRUE, not on
whether there's a "dlfcn.h" header file; that lets us support plugins on
HP-UX.

svn path=/trunk/; revision=3390
2001-05-01 02:44:52 +00:00
Gilbert Ramirez 9fc1e0261b Win32 build fix, show "0.5.2 (WinPcap 2.1)" as the libpcap version
for Win32, and show a slightly more informative (i.e., geared to the
user) help message when trying to capture without having WinPcap installed.

svn path=/trunk/; revision=3261
2001-04-05 05:58:05 +00:00
Gilbert Ramirez a8d864bca7 Use sed in the Win32 build to place the version in various files.
We us $(VERSION), defined in the top-level config.nmake, to replace
@VERSION@ in various files. $(RC_VERSION) and $(WTAP_VERSION) are
similarly used.

svn path=/trunk/; revision=3258
2001-04-05 04:39:29 +00:00
Gilbert Ramirez d21e83b98b Move version to 0.8.16.
Fix build for splitting build dir from src dir.
Note the use of updated GTK+ release for Win32 binaries.

svn path=/trunk/; revision=3107
2001-03-05 22:53:41 +00:00
Gilbert Ramirez 512d0d1c23 Change version numbers to 0.8.15
svn path=/trunk/; revision=2882
2001-01-12 04:06:25 +00:00
Gilbert Ramirez f69e977a76 Move Win32 version to 0.8.14.1
svn path=/trunk/; revision=2705
2000-11-28 15:54:20 +00:00
Guy Harris b4219afa51 Generated Bison and Flex files test whether __STDC__ is defined
in order to check whether to use ANSI C features such as "const".

GCC defines it as 1 even if extensions that render the implementation
non-conformant are enabled; Sun's C compiler (and, I think, other
AT&T-derived C compilers) define it as 0 if extensions that render
the implementation non-conformant are enabled; Microsoft Visual C++
6.0 doesn't define it at all if extensions that render the implementation
non-conformant are enabled.

We define it as 0 in "config.h.win32", so that those generated files will use
those features (and thus not get type warnings when compiled with
MSVC++).

svn path=/trunk/; revision=2698
2000-11-22 07:20:27 +00:00
Gilbert Ramirez 5a0e2a658a Move to version 0.8.14
svn path=/trunk/; revision=2682
2000-11-20 17:10:26 +00:00
Gilbert Ramirez 2b8cd626f7 Move to 0.8.13
svn path=/trunk/; revision=2540
2000-10-27 02:24:08 +00:00
Gilbert Ramirez 4386002cc3 Move to version 0.8.13.
Mention IGRP dissector in NEWS.

svn path=/trunk/; revision=2539
2000-10-27 02:22:08 +00:00
Guy Harris 2030dba693 Make the top-level "config.h.win32" more closely resemble the top-level
"config.h", and update it to include stuff added to "config.h" and
remove stuff removed from "config.h".

Give libethereal a "config.h.win32" and make its "Makefile.nmake" file
copy it to "config.h".

svn path=/trunk/; revision=2504
2000-10-17 09:25:37 +00:00
Gilbert Ramirez e0ec85c1a9 Move to version 0.8.12
svn path=/trunk/; revision=2432
2000-09-14 10:03:51 +00:00
Gilbert Ramirez 52903b26a8 Move to version 0.8.11
svn path=/trunk/; revision=2196
2000-08-03 01:54:53 +00:00
Guy Harris 2bcc0d3c13 There is a <sys/stat.h> available on Win32, and, in fact, we now include
it in "util.c", so we have to define HAVE_SYS_STAT_H in Win32.

svn path=/trunk/; revision=2192
2000-07-31 15:55:46 +00:00
Guy Harris a1b0b42431 Apparently, on systems with glibc 2.2, "inet_aton()" is declared in
<arpa/inet.h>, but is, in some fashion, declared differently from the
way we declare it in "inet_v6defs.h", but "inet_ntop()" isn't defined,
so we include "inet_v6defs.h" in "inet_pton.c", which causes
"inet_pton.c" not to compile as we get a collision between the two
declarations.

Move the declaration of "inet_aton()" to "inet_aton.h", define
"NEED_INET_ATON_H" iff we didn't find "inet_aton()" in the system
libraries, and include "inet_aton.h" in the callers of "inet_aton()" iff
"NEED_INET_ATON_H" is defined, so that it doesn't get declared by us if
"inet_aton()" is defined by a system library (which hopefully means it's
declared in <arpa/inet.h> instead).

svn path=/trunk/; revision=2137
2000-07-14 07:11:53 +00:00
Gilbert Ramirez 792dcfb55d Add:
#define strcasecmp              stricmp

for prefs.c

svn path=/trunk/; revision=2118
2000-07-05 17:24:29 +00:00
Gilbert Ramirez 32fe73b2de Change version to 0.8.10
In gtk/Makefile.nmake, add progress_dlg.obj

svn path=/trunk/; revision=2108
2000-07-04 12:10:06 +00:00
Gilbert Ramirez d8944a80aa Add COPS dissector (with a few fixes for compiling on Win32).
I put the header file info in packet-cops.c since no one else uses it.

Fix the version number and plugin directory in config.h.win32.

svn path=/trunk/; revision=2044
2000-06-07 22:57:45 +00:00
Gilbert Ramirez f20f651cd0 Move to version 0.8.6.
svn path=/trunk/; revision=1812
2000-04-07 03:18:08 +00:00
Gilbert Ramirez e15209c496 Update version and plugin directory.
svn path=/trunk/; revision=1801
2000-04-05 11:53:30 +00:00
Gilbert Ramirez c317b042a8 Add getopt.c (from GNU libc) for use on Win32.
Ethereal/win32 now supports command-line options.
Tethereal now compiles on win32, except for the fact that I haven't
put the Makefile.nmake changes in for that yet.

svn path=/trunk/; revision=1758
2000-03-28 20:20:11 +00:00
Gilbert Ramirez f9a8a11ef5 Integrate Ed Meaney's <emeaney@altiga.com> changes for using libpcap
from WinDump with Ethereal. We now have packet capturing on Win32. :)

svn path=/trunk/; revision=1612
2000-02-09 19:18:42 +00:00
Gilbert Ramirez c4fa7c87df Code changes, but not Makefile changes, for enabling plugins for Win32.
svn path=/trunk/; revision=1605
2000-02-07 17:08:27 +00:00
Gilbert Ramirez 339d67b043 Merge in the final code to make Ethereal run on Win32, compiled
with MSVC 6.0 and 'nmake', the make tool that comes with MSVC.

It compiles, links, and runs. It doesn't run correctly. There's a problem
when reading files. I'm getting short reads.  I'm not linking in zlib or
libsnmp because it first needs to be debugged.

I changed the plugin code to use gmodule instead of libltdl, but the
Unix build still links ethereal against libltdl. I'll fix that tonight; sorry
about leaving it in such a sad state, but I wanted to check in this code
before I left work on a Friday night. Ethereal still works, but the
building is less than optimal.

svn path=/trunk/; revision=1479
2000-01-15 00:23:13 +00:00
Gilbert Ramirez 1990d5fb5c Some initial changes for win32 support, but not all.
Added lots of #ifdef HAVE_*_H wrappers.
Added some #defines in config.h.win32
Check for more headers in configure.in
Added prototype for inet_aton() in inet_v6defs.h.
Changed "BYTE" token (i.e., #define) in ascend-gramamr.y because it
conflicts with a windows definition. Use HEXBYTE instead.

svn path=/trunk/; revision=1448
2000-01-10 17:33:17 +00:00
Gerald Combs 07dc1d2d7d Prep for the next release.
svn path=/trunk/; revision=1367
1999-12-22 17:19:04 +00:00
Guy Harris 1a97560fb0 Pull in some additional non-definitions, to make it match the current
"config.h" on my machine.  (Should YYTEXT_POINTER be defined?)

svn path=/trunk/; revision=1344
1999-12-15 08:05:53 +00:00
Gilbert Ramirez 601c52f0fb Added support for compiling on win32 with Visual C and 'nmake'. It compiles,
but does not link. Perhaps someone who understands the MS tools can help
out. I made it link a few months ago, but with different version of glib/gtk+.
I can't remember how I made it link.

Most of the compatibility issues were resolved with adding
#ifdef HAVE_UNISTD_H the the source code. Please be sure to add this to all
future code.

svn path=/trunk/; revision=359
1999-07-13 02:53:26 +00:00