unusable; it'd only be unusable if we require that functions be declared
before they're used (i.e., if we check for that with -Wimplicit and if
we fail if the check produces a warning because we're using -Werror).
Always checking doesn't necessarily work if, for example, you're not
compiling with GCC, as -Werror and -Wimplicit might not be recognized by
other compilers.
svn path=/trunk/; revision=24287
- retrieving the list of remote PCAP interfaces
- password authentication support
- UDP data fransfer
- packet sampling (available in WinPcap 4.x)
etc.
fix problem if non-default rpcap port is used
svn path=/trunk/; revision=23750
In all the places where a cast to "long long" or "unsigned long long"
was done, use G_GINT64_MODIFIER and get rid of the cast, as
1) there's no guarantee that "%ll" works
and
2) there's no guarantee that "long long" works
(the latter definitely does *NOT* work with MSVC++; the former doesn't
work with regular printf in MSVC++, but it might work with the GLib
printf-based functions).
svn path=/trunk/; revision=21978
corresponding to the library version for pcap_breakloop. Issue a warning if the
pcap_breakloop is present but not usable.
svn path=/trunk/; revision=21498
might have been set to ifavailable, but other parts of the configure
script expect it to be "yes" or "no" after
AC_WIRESHARK_LIBPORTAUDIO_CHECK finishes.
svn path=/trunk/; revision=19606
is missing. Also I changed the behaviour to just disable
ucd snmp in case it was requested but no --with-ssl was
given instead of bailing out with an error.
svn path=/trunk/; revision=19335
actually do something useful except to print that the new API is not
supported.
Adapt acinclude.m4 to provide PORTAUDIO_API_1 and add back the
check_message to indicate *why* we are checking for the type.
svn path=/trunk/; revision=19148
one ourselves.
The documentation for autoconf isn't very clear on the "includes"
argument to AC_CHECK_TYPE - it's in the form of a list of #include
statements.
svn path=/trunk/; revision=19140
portaudio versions <= 18. At least Suse 10.1 provides a snapshot
of version 19, which, in turn has the brand new and incompatible
version 2.0 of the API. Change the error message to tell the
user that he needs portaudio <= 18.
svn path=/trunk/; revision=19133
Note: This check is currently carried out by checking that the include
defines PortAudioStream. If you know of any better check, please let
me know.
acinclude.m4:
Replace sequences of 8 spaces by tab
svn path=/trunk/; revision=19131
- Change the "listen_rtp" to "rtp_player"
- Change from a plugin to be part of the core
- By default it will not compile with the rtp_player. In order to
compile it is necessary to:
+ For windows: uncomment the line
"PORTAUDIO_DIR=$(WIRESHARK_LIBS)\portaudio_v18_1" in config.nmake
+ For linux: using the "--with-portaudio=yes"
svn path=/trunk/; revision=19094
Provide one in aclocal-fallback. While I'm at it: Remove
the libgnutls.m4 stuff from acinclude and provide it in
aclocal-fallback as well.
svn path=/trunk/; revision=18475
with a pcap_breakloop() call - we don't need to call select() before
calling pcap_dispatch().
Even if we do need to call select(), we don't need to supply it with a
timeout - it's OK if we block indefinitely, as the signal will interrupt
select().
That also means we can pass -1 as the count to pcap_dispatch(), as
pcap_breakloop() will terminate the loop in pcap_dispatch().
Use sigaction() to catch SIGUSR1, so we can make sure that the signal
handler doesn't get reset when the signal is delivered, and that system
calls don't restart when we return from the signal handler.
svn path=/trunk/; revision=18201
- Fail if with-lua was given but liblualib is missing
- Make the test for liblualib succeed on my system
(make sure the test gets linked with liblua and libm).
svn path=/trunk/; revision=17198
I have developed an external plugin to enable ssl decryption in
ethereal.
Me
- Remove unnecessary $Id$ from acinclude.m4
- Added packet-ssl-utils.h to Makefile.common
- Fixed a few warnings
TODO
- Lots of warning fixes (see separate mail)
- Reformat function headers to read like the others do
(return value<newline>function-name...)
- Test on Windows platform
- Review the patch to packet-ssl.c and new files packet-ssl-utils.[hc]
svn path=/trunk/; revision=17156
filter after installing the filter.
Set HAVE_PCAP_LIB_VERSION if we're building with WinPcap 3.1; it's not
present in earlier versions, but is present in current 3.1 betas.
Check HAVE_PCAP_LIB_VERSION when building capture-wpcap.c.
svn path=/trunk/; revision=13872
Check whether krb5.h defines KEYTYPE_ARCFOUR_56 - not all versions do
(in particular, the Heimdal that comes with FreeBSD 4.6 doesn't).
packet-kerberos.h includes krb5.h if we hae Heimdal; we don't need to do
so in packet-spnego.c.
svn path=/trunk/; revision=13828
whatever reason, the changequote() hack doesn't seem to be working, at
least on OS X; the square brackets were simply being removed from the
messages).
Rename the "ifpresent" value for the --with variables to "ifavailable",
to match the help messages.
At least for the SNMP libraries, have the "checking" message just say
"whether to use XXX" and have the result message say "yes, if available"
if the user didn't explicitly specify "--with" or "--without", as the
default just leaves the library out if it doesn't work, but explicitly
specifying "--with" means you get an error if it doesn't work.
Make "--with-net-snmp" fail if the headers aren't present (if the user
explicitly asks for something, we should fail if we can't give it to
them, as they presumably really wanted it).
svn path=/trunk/; revision=13789
Note that the "=PATH" argument to "--with-net-snmp" is optional.
If "--with-net-snmp" is specified, give an error if Net-SNMP is found
but "--with-ssl" wasn't specified, as the user has specified that they
really want a version of Ethereal with Net-SNMP; if it's not specified,
just warn of that and drive on, as we did before.
svn path=/trunk/; revision=13786
make spnego able to decrypt data wrapped inside
GSSAPI/SPNEGO/KRB5 arcfour-hmac
This code will be more etherealified and evolve into being able to link with MIT as well.
svn path=/trunk/; revision=13659
<glib.h> when checking for the format for 64-bit integers, as, on
Solaris 2.5.1, <glib.h> ends up defining a function that requires stuff
from glib, and the test program isn't linked with glib - including
<glibconfig.h> is sufficient to get guint64 defined, and that's all we
need.
svn path=/trunk/; revision=12282
whether it requires -lresolv), restore LIBS after we're done regardless
of whether we found it or not - we use KRB5_LIBS in the Makefiles,
rather than adding the Kerberos libraries to LIBS directly.
svn path=/trunk/; revision=12134
find it's not, always report "no", even if we're going to give up
because the user specified --with-krb5, so the "sorry, you don't have
Heimdal" message shows up on a line of its own.
svn path=/trunk/; revision=12119
library, don't disable dissection and drive on, report an error and
stop; --with-krb5 means "build this with Kerberos", not "build this with
Kerberos if you can" (no -krb5 option at all means "build this with
Kerberos if you can").
If they *didn't* specify --with-krb5 and we don't have a usable Kerberos
library, set want_krb5 to "no", so that at the end of the configure
script we don't say we're building with the Kerberos library (otherwise,
want_krb5 is "ifpresent", but the stuff to print the configuration
options treats anything other than "no" as meaning "yes").
svn path=/trunk/; revision=12118
sprint_realloc_objid(), and the extra libraries we're using with the
tests, along the lines of what we do with the Kerberos 5 library.
svn path=/trunk/; revision=12108
of the test for sprint_realloc_objid() (so that a failure to find it
when we're not linking with extra libraries doesn't cause us to assume
we won't find it if we *do* link with extra libraries), so
"ac_cv_lib_snmp_sprint_realloc_objid" doesn't get set - set our own
variable for that.
Use AC_TRY_LINK rather than AC_CHECK_LIB in the Kerberos tests when
checking for krb_k5_resolve(), to avoid caching the results.
Improve the messages printed in the Kerberos tests to give more detail.
svn path=/trunk/; revision=12106
--with flags.
Report, in the messages at the end of the configure script, whether
we're building with the SSL library.
If we fail to find "sprint_realloc_objid()" when linking with a
particular library, and --with-ssl wasn't specified, try linking with
-lcrypto as well and, if that succeeds, fail with an indication that UCD
SNMP requires -lcrypto but --with-ssl wasn't specified.
svn path=/trunk/; revision=12105
user explicitly says to do so by using --with-ssl. However, we *still*
don't want to just blithely replace -lcrypto with SSL_LIBS, so, if
KRB5_LIBS contains "-lcrypto" but SSL_LIBS isn't set to a non-empty
string, we report an error (the user can than either configure without
Kerberos or with -lcrypto).
svn path=/trunk/; revision=12103
platforms, it's missing because it's not needed, which is good because
it's not even *present* on those platforms (the resolver functions are
built into libc). If there really are platforms where krb5-config is
broken to the extent that it doesn't list -lresolv when it's required,
the way to fix that is to try building a program with Heimdal and just
the krb5-config libraries and, if that fails, try building with those
libraries and -lresolv - if that works, add -lresolv to the list of
libraries.
Don't just replace -lcrypto with SSL_LIBS in KRB5_LIBS, as SSL_LIBS
might not contain any libraries - replace it only if SSL_LIBS is defined
as something.
svn path=/trunk/; revision=12099
will either have "heimdal", in all lower case, in the version string in
the header file, or will write out, when you run "krb5-config
--version", a version string with "heimdal" in all lower case, so we
don't need to do case-insensitive matching, which is good - not all
versions of "sed" support the "i" flag (although you can do
case-insensitive matching by using regular expressions, if necessary).
svn path=/trunk/; revision=11915
it's usable - one of the updates to OS X 10.3 updated libpcap to
0.8[.x], so that it had "pcap_findalldevs()", but didn't update
"pcap.h", so it didn't declare "pcap_if_t", so you couldn't actually
*use* it. You can work around that by installing the pcap.h (and
pcap-bpf.h) from the matching tcpdump.org release, but, as even when
that version of OS X is pre-installed rather than being the result of a
Software Update, you still don't get the new "pcap.h" (at least I didn't
get it on my PowerBook with 10.3.4). Therefore, we check whether a
program that calls "pcap_findalldevs()" *and* declares a "pcap_if_t *"
to pass to it can be compiled and linked with -lpcap, and only declare
HAVE_PCAP_FINDALLDEVS if we can.
Also, don't check for the functions added to libpcap after
"pcap_findalldevs()" was added unless we have a usable
"pcap_findalldevs()", as, if not, those functions won't be declared in
"pcap.h" either, so we'll get compiler warnings.
svn path=/trunk/; revision=11745
as those are what's used in Ethereal for 64-bit integers, and as there's
no guarantee that either of them will be defined on any particular
platform.
svn path=/trunk/; revision=11513
library, don't forget to link with the SNMP library along with all the
other libraries....
Restore the setting of LIBS after doing all the tests, as is done in
other macros.
svn path=/trunk/; revision=11426
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
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
As this is experimental and does not yet work reliably this feature is
off by default. Enable it by using --with-krb5 during configure.
Please do not yet make use of this feature (i.e. please do not *use* the
defines provided by this option), until it has received further testing
and fixing.
Please run and check what the configure says.
svn path=/trunk/; revision=10395
so it requires routines from -lcfg and -lodm - if attempting to link
with libpcap fails, try linking with libpcap and -lcfg and -lodm and, if
that succeeds, add all those libraries to the link list.
svn path=/trunk/; revision=10244
libpcap than in tcpdump.org libpcap; it's been deprecated for that
reason. "pcap_open_dead()" has been in libpcap since 0.6, so only for
0.5[.x] will you have "pcap_compile_nopcap()" but not "pcap_open_dead()"
- for now, we use "pcap_open_dead()" rather than
"pcap_compile_nopcap()", and don't do the check for capture filters in
systems with libpcaps that lack "pcap_open_dead()".
svn path=/trunk/; revision=9341
The PCRE test in acinclude.m4 and epan/acinclude.m4 don't work
if PCRE exists in a non-system directory. The problem is that
LDFLAGS and LIBS are set incorrectly. LIBS shouldn't contain -L
arguments.
svn path=/trunk/; revision=9309
New "matches" operater in display filter language. Uses PCRE.
If a "matches" operator is found in a dfilter
while libpcre has not been used to build the binary, then an
exception is thrown after using dfilter_fail() to set an apporporiate
error message.
svn path=/trunk/; revision=9182
1. the --without-adns case wasn't handled correctly;
2. the reporting at the end of the configure didn't deal with
the case were the configure check failed (as in my example,
where I only had the libadns package installed, not
libadns-devel) - it reported that ADNS would be used.
svn path=/trunk/; revision=8663
-L/usr/kerberos/lib -ldes425 ...
This works on Linux (RH 9.0) but I am not sure about Solaris. Solaris is
such a difficult environment to work with compared to Linux or FreeBSD.
svn path=/trunk/; revision=8325
Support can be enabled at configure time by using "--with-adns=DIR".
If support is enabled, async queries happen whenever host name resolution
is enabled. Do we need a separate preference for async queries?
Currently, only IPv4 reverse queries are supported. I can add IPv4 forward
lookup support, but I don't have any way to test IPv6 queries.
svn path=/trunk/; revision=7640
include <ucd-snmp/snmp.h>, we incldue <ucd-snmp/ucd-snmp-config.h>, and,
at least with some UCD SNMP versions, you can't just include
<ucd-snmp/snmp.h> without including a header to typedef "oid", so you
get a warning from the configure script if it's built with autoconf 2.57
(it whines because the test program won't compile but the header exists).
svn path=/trunk/; revision=7220
Get rid of acconfig.h, as it's an archaism; put descriptions
into AC_DEFINE instead. That squelches some warnings from
later versions of autoconf.
Fix an unquoted call to AC_MSG_ERROR.
Move the stuff to define HAVE_SOME_SNMP into configure.in.
svn path=/trunk/; revision=7203
shouldn't require it to exist. Instead, as we're already checking
whether we can find <pcap.h> (which is the only thing we actually
include - we rely on it to include whatever BPF headers are necessary),
we print the big "are you sure you installed the development package?"
message if we don't find "pcap.h".
svn path=/trunk/; revision=7120
"pcap.h", in case $prefix is set to "/usr/include" or
"/usr/local/include" on a system with the Red Hat "feature" of burying
pcap.h in a "pcap" subdirectory.
svn path=/trunk/; revision=7007
- remove nested functions
- use char *pcap_version instead of char pcap_version[]
Changed the fix for the nested functions to use the mechanisms provided
by autoconf.
svn path=/trunk/; revision=6963
Don't add "-I/usr/include" to CFLAGS or CPPFLAGS; GCC 3.1 warns
about it, and it's not necessary.
Expand the plugin directory path used for installation at
installation time, rather than configuration time, so the user
can reset "prefix" at installation time.
svn path=/trunk/; revision=5828
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
even if it doesn't have "gzgets()", so one might think we could use it
by using our own replacement for "gzgets()".
One would be wrong to think so, however, as the "gzseek()" it has
doesn't actually work when reading uncompressed files.
zlib 1.0.9 has "gzgets()", and fixes that bug, so we rever to checking
for "gzgets()" rather than "gzseek()", so that we don't accept pre-1.0.9
versions of zlib, and we get rid of our "gzgets()" replacement.
svn path=/trunk/; revision=4702
check for GNU "sed", and skip the "bad sed" checks if it's
found;
check for "/bin/sed" as well as "/usr/bin/sed" on Solaris;
put the "sed" checks into a separate section of code with its
own test for the host OS, to make it a bit cleaner to add any
checks needed on other OSes.
svn path=/trunk/; revision=4681
"--define", we now build the RPM and SRPM packages in packages/rpm.
As a result, one need not be root to build RPM-based packages.
Move the specfile to packaging/rpm/SPECS.
Update the INSTALL document to include the various packaging makefile
targets.
svn path=/trunk/; revision=4581
(well, the check used to be a check for gzgets(), but we now have our
own version of that), so that, on a system with multiple versions of
zlib where the GTK+ -L flags get you an old version without gzgets(),
the configure fails, rather than the build failing.
svn path=/trunk/; revision=4566
don't need to check whether zlib has them. We *do*, however, have to
check for "gzseek()", as we don't have our own version of that.
svn path=/trunk/; revision=3963
versions of these commands in file_wrappers.c. This allows us to
compile successfully even on platforms where X has an older zlib built
in.
Removed this restriction from acinclude.m4
svn path=/trunk/; revision=3948
checking for "gzgets()" in zlib.
If there is a "zlib.h" header, and there is a "gzgets()" in zlib, check
whether we find "gzgets()" in zlib when we link with the GTK+ link
flags, and, if not, fail. People often grab XFree86 source and build
and install it on their systems, and they appear sometimes to
misconfigure XFree86 so that, even on systems with zlib, it assumes
there is no zlib, so the XFree86 build process builds and installs its
own "mini-zlib" in the X11 library directory. The "mini-zlib" lacks
"gzgets()", and that's the zlib with which Ethereal gets linked, so the
build of Ethereal fails.
svn path=/trunk/; revision=3849
"--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
specified to "--with-pcap", add that directory to the include file and
library search paths, so that you can use "--with-pcap=DIR" to search
for libpcap in a directory other than the standard ones (either because
it was installed somewhere other than under "/usr" or "/usr/local", or
because you want to use a special version you've installed rather than
the standard one).
svn path=/trunk/; revision=3611
(without those updates, I'm not even certain it was doing the right
thing even with autoconf 2.13, as it was sticking "dnl" into the program
it was handing to the C preprocessor, although, as it was only handing
it to the preprocessor, the extra "dnl" may have been harmless).
svn path=/trunk/; revision=3409
AC_MSG_RESULT is an error (it produces a message without a newline at
the end, as AC_MSG_RESULT is supposed to finish the message with the
result of the test), and, according to the autoconf documentation,
you're not supposed to use AC_MSG_RESULT without AC_MSG_CHECKING,
either.
svn path=/trunk/; revision=3332
searching that tries to figure out in what directory libpcap lives - we
should treat "-L" just like "-I", rather than adding a ton of
complication to do it the way the autoconf maintainers think, for some
reason, it should be done (by adding "-L" flags to LIBS - "-L" flags
don't specify libraries, so I have no clue why they think they belong in
LIBS; they specify a search path for libraries, just as "-I" flags
specify a search path for header files, so they strike me as "flags to
the linker" rather than "libraries", and LDFLAGS, unlike LIBS, appears
before *all* "-l" flags, including those specified by PCAP_LIBS and so
on).
svn path=/trunk/; revision=1516
linking with "-lsnmp".
Link only Ethereal and Tethereal with "-lpcap"; don't link editcap, or
any of the test programs that the configure script builds, with it
(because that means you also have to arrange that those test programs be
linked with @SOCKET_LIBS@ and @NSL_LIBS@) - i.e., don't add it to LIBS,
add it to PCAP_LIBS, and use that only for programs that need it.
svn path=/trunk/; revision=1484
make it link with them.
Provide dependencies for Tethereal as well.
Tethereal may need to be linked with "-lsocket" and/or "-lnsl"; check
for that, and arrange that it be linked with them if necessary.
svn path=/trunk/; revision=1483
not be called with d is xNONE, and if called, it should always be followed
by an AC_MSG_RESULT() in order to get a newline printed.
svn path=/trunk/; revision=1172
"gzgets()" is the one most recently added; it was added in 1.0.9.
Check for it, rather than for a list of functions, when checking for
"zlib" support - if you check for N functions, and they're all there,
you get N "-lz"s added to the list of libraries with which to link.
Indicate in the README that "zlib" versions prior to 1.0.9 definitely
won't work.
svn path=/trunk/; revision=1144
"gzseek()" *and* "gztell()" *and* "gzgets()" *and* "zError()" are all in
Zlib - we use all of them, and it appears that some older versions of
Zlib that some users had on their systems don't have some of them.
svn path=/trunk/; revision=1136
gzip. The zLib library is used for this purpose. If zLib is not available
(or it's use is disabled by the --disable-zlib option to configure), you
can still compile Ethereal but it will be unable to read compressed capture
files.
IMPORTANT:
Now all file accesses to capture files should be done through special macros.
Specifically, for any use of the following functions on capture files, replace them.
The arguments for the right-side functions are exactly the same as for the
original stdio functions.
fopen file_open
fdopen filed_open
fread file_read
fwrite file_write
fseek file_seek
fclose file_close
ferror file_error
svn path=/trunk/; revision=695
directory in which the UCD SNMP library is found (and to check for the
UCD SNMP stuff in "$prefix" if "$prefix" isn't "/usr/local"), and to
have "Makefile.am" use "$(MAKE)" rather than "make".
svn path=/trunk/; revision=624
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
proto*() functions. The configure script tries to use ipv6 name resolution if
it knows the type of ipv6 stack the user has (this can be avoided with the
--disable-ipv6 switch) Additionally, the configure script now deals with wiretap
better. If the user doesn't want to compile wiretap, the wiretap is never
visited. A few unnecessary #includes were removed from some wiretap files, and
a CPP macro was moved from bpf.c to wtap.h.
svn path=/trunk/; revision=229
macro (modeled after similar macros provided with "autoconf") to check
whether "struct sockaddr" has an "sa_len" member, and defines or
undefines "HAVE_SA_LEN" appropriately. Use it instead of
"AC_LBL_SOCKADDR_SA_LEN", and use "HAVE_SA_LEN" instead of
"HAVE_SOCKADDR_SA_LEN".
svn path=/trunk/; revision=96