Added Aaron Hillegass' summary dialogue. We're ignoring the problem with

NetMon statistic packets for now. We might fix that problem with wiretap,
either filtering out those packets, and/or providing the summary
information through a new wiretap API.

svn path=/trunk/; revision=326
This commit is contained in:
Gilbert Ramirez 1999-06-22 22:02:39 +00:00
parent 919fe8f24c
commit 7ea29fb80d
17 changed files with 556 additions and 129 deletions

View File

@ -100,6 +100,10 @@ Ashok Narayanan <ashokn@cisco.com> {
RSVP
}
Aaron Hillegass <aaron@classmax.com> {
Summary dialogue
}
Alain Magloire <alainm@rcsm.ece.mcgill.ca> was kind enough to
give his permission to use his version of snprintf.c.

View File

@ -90,6 +90,8 @@ ethereal_SOURCES = \
resolv.c \
resolv.h \
smb.h \
summary.h \
summary.c \
util.c \
util.h

View File

@ -1,4 +1,4 @@
# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Makefile.in generated automatically by automake 1.4a from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
@ -46,9 +46,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@
NORMAL_INSTALL = :
@ -82,7 +83,7 @@ man_MANS = ethereal.1
sysconf_DATA = manuf
ethereal_SOURCES = alignment.h capture.c capture.h column.c column.h config.h display.c display.h ethereal.c ethereal.h ethertype.c etypes.h file.c file.h filter.c filter.h follow.c follow.h gtkpacket.c gtkpacket.h menu.c menu.h packet-aarp.c packet-arp.c packet-atalk.c packet-bootp.c packet-cdp.c packet-data.c packet-dns.c packet-dns.h packet-eth.c packet-fddi.c packet-ftp.c packet-giop.c packet-gre.c packet-http.c packet-icmpv6.c packet-ip.c packet-ip.h packet-ipsec.c packet-ipv6.c packet-ipv6.h packet-ipx.c packet-ipx.h packet-isakmp.c packet-llc.c packet-lpd.c packet-nbipx.c packet-nbns.c packet-ncp.c packet-ncp.h packet-nntp.c packet-null.c packet-osi.c packet-ospf.c packet-ospf.h packet-pop.c packet-ppp.c packet-pppoe.c packet-pptp.c packet-raw.c packet-rip.c packet-rip.h packet-rsvp.c packet-rsvp.h packet-smb.c packet-tcp.c packet-telnet.c packet-tftp.c packet-tr.c packet-trmac.c packet-udp.c packet-vines.c packet-vines.h packet.c packet.h prefs.c prefs.h print.c print.h ps.c ps.h resolv.c resolv.h smb.h util.c util.h
ethereal_SOURCES = alignment.h capture.c capture.h column.c column.h config.h display.c display.h ethereal.c ethereal.h ethertype.c etypes.h file.c file.h filter.c filter.h follow.c follow.h gtkpacket.c gtkpacket.h menu.c menu.h packet-aarp.c packet-arp.c packet-atalk.c packet-bootp.c packet-cdp.c packet-data.c packet-dns.c packet-dns.h packet-eth.c packet-fddi.c packet-ftp.c packet-giop.c packet-gre.c packet-http.c packet-icmpv6.c packet-ip.c packet-ip.h packet-ipsec.c packet-ipv6.c packet-ipv6.h packet-ipx.c packet-ipx.h packet-isakmp.c packet-llc.c packet-lpd.c packet-nbipx.c packet-nbns.c packet-ncp.c packet-ncp.h packet-nntp.c packet-null.c packet-osi.c packet-ospf.c packet-ospf.h packet-pop.c packet-ppp.c packet-pppoe.c packet-pptp.c packet-raw.c packet-rip.c packet-rip.h packet-rsvp.c packet-rsvp.h packet-smb.c packet-tcp.c packet-telnet.c packet-tftp.c packet-tr.c packet-trmac.c packet-udp.c packet-vines.c packet-vines.h packet.c packet.h prefs.c prefs.h print.c print.h ps.c ps.h resolv.c resolv.h smb.h summary.h summary.c util.c util.h
EXTRA_ethereal_SOURCES = packet-snmp.c snprintf.c snprintf.h snprintf-imp.h strerror.c strerror.h
@ -119,7 +120,7 @@ packet-nbns.o packet-ncp.o packet-nntp.o packet-null.o packet-osi.o \
packet-ospf.o packet-pop.o packet-ppp.o packet-pppoe.o packet-pptp.o \
packet-raw.o packet-rip.o packet-rsvp.o packet-smb.o packet-tcp.o \
packet-telnet.o packet-tftp.o packet-tr.o packet-trmac.o packet-udp.o \
packet-vines.o packet.o prefs.o print.o ps.o resolv.o util.o
packet-vines.o packet.o prefs.o print.o ps.o resolv.o summary.o util.o
ethereal_LDFLAGS =
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@ -139,7 +140,7 @@ missing mkinstalldirs ylwrap
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
TAR = gtar
GZIP_ENV = --best
DEP_FILES = .deps/capture.P .deps/column.P .deps/display.P \
.deps/ethereal.P .deps/ethertype.P .deps/file.P .deps/filter.P \
@ -160,7 +161,7 @@ DEP_FILES = .deps/capture.P .deps/column.P .deps/display.P \
.deps/packet-tr.P .deps/packet-trmac.P .deps/packet-udp.P \
.deps/packet-vines.P .deps/packet.P .deps/prefs.P .deps/print.P \
.deps/ps.P .deps/resolv.P .deps/snprintf.P .deps/strerror.P \
.deps/util.P
.deps/summary.P .deps/util.P
SOURCES = $(ethereal_SOURCES) $(EXTRA_ethereal_SOURCES)
OBJECTS = $(ethereal_OBJECTS)
@ -224,8 +225,8 @@ install-binPROGRAMS: $(bin_PROGRAMS)
$(mkinstalldirs) $(DESTDIR)$(bindir)
@list='$(bin_PROGRAMS)'; for p in $$list; do \
if test -f $$p; then \
echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
$(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
echo " $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
$(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
else :; fi; \
done
@ -449,7 +450,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
d=$(srcdir); \
if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \
cp -pr $$d/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -523,7 +524,7 @@ uninstall: uninstall-recursive
all-am: Makefile $(PROGRAMS) $(MANS) $(DATA) config.h
all-redirect: all-recursive-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
$(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs-recursive
installdirs-am:
$(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(mandir)/man1 \

1
NEWS
View File

@ -3,6 +3,7 @@ Overview of changes in Ethereal 0.6.3:
* PPPoE (PPP over Ethernet) added (Jeff Jahr)
* ISAKMP, GRE, PPTP added (Brad Robel-Forrest)
* RSVP added (Ashok Narayanan)
* Summary dialogue added (Aaron Hillegass)
Overview of changes in Ethereal 0.6.2:
* Almost-real-time capture and display (John, Laurent)

46
aclocal.m4 vendored
View File

@ -1,7 +1,7 @@
dnl aclocal.m4 generated automatically by aclocal 1.3
dnl aclocal.m4 generated automatically by aclocal 1.4a
dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
dnl This Makefile.in is free software; the Free Software Foundation
dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
@ -183,6 +183,8 @@ dnl AM_INIT_AUTOMAKE(package,version, [no-define])
AC_DEFUN(AM_INIT_AUTOMAKE,
[AC_REQUIRE([AC_PROG_INSTALL])
dnl We require 2.13 because we rely on SHELL being computed by configure.
AC_PREREQ([2.13])
PACKAGE=[$1]
AC_SUBST(PACKAGE)
VERSION=[$2]
@ -192,8 +194,8 @@ if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
fi
ifelse([$3],,
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
AC_DEFINE_UNQUOTED(VERSION, "$VERSION"))
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
AC_REQUIRE([AM_SANITY_CHECK])
AC_REQUIRE([AC_ARG_PROGRAM])
dnl FIXME This is truly gross.
@ -205,15 +207,6 @@ AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
AC_REQUIRE([AC_PROG_MAKE_SET])])
# serial 1
AC_DEFUN(AM_PROG_INSTALL,
[AC_REQUIRE([AC_PROG_INSTALL])
test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
AC_SUBST(INSTALL_SCRIPT)dnl
])
#
# Check to make sure that the build environment is sane.
#
@ -276,7 +269,7 @@ AC_SUBST($1)])
# Configure paths for GTK+
# Owen Taylor 97-11-3
dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]])
dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
dnl
AC_DEFUN(AM_PATH_GTK,
@ -290,6 +283,15 @@ AC_ARG_WITH(gtk-exec-prefix,[ --with-gtk-exec-prefix=PFX Exec prefix where GTK
AC_ARG_ENABLE(gtktest, [ --disable-gtktest Do not try to compile and run a test GTK program],
, enable_gtktest=yes)
for module in . $4
do
case "$module" in
gthread)
gtk_config_args="$gtk_config_args gthread"
;;
esac
done
if test x$gtk_config_exec_prefix != x ; then
gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix"
if test x${GTK_CONFIG+set} != xset ; then
@ -322,7 +324,7 @@ AC_ARG_ENABLE(gtktest, [ --disable-gtktest Do not try to compile and run
ac_save_CFLAGS="$CFLAGS"
ac_save_LIBS="$LIBS"
CFLAGS="$CFLAGS $GTK_CFLAGS"
LIBS="$LIBS $GTK_LIBS"
LIBS="$GTK_LIBS $LIBS"
dnl
dnl Now check if the installed GTK is sufficiently new. (Also sanity
dnl checks the results of gtk-config to some extent
@ -331,6 +333,7 @@ dnl
AC_TRY_RUN([
#include <gtk/gtk.h>
#include <stdio.h>
#include <stdlib.h>
int
main ()
@ -363,6 +366,17 @@ main ()
printf("*** to point to the correct copy of gtk-config, and remove the file config.cache\n");
printf("*** before re-running configure\n");
}
#if defined (GTK_MAJOR_VERSION) && defined (GTK_MINOR_VERSION) && defined (GTK_MICRO_VERSION)
else if ((gtk_major_version != GTK_MAJOR_VERSION) ||
(gtk_minor_version != GTK_MINOR_VERSION) ||
(gtk_micro_version != GTK_MICRO_VERSION))
{
printf("*** GTK+ header files (version %d.%d.%d) do not match\n",
GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
printf("*** library (version %d.%d.%d)\n",
gtk_major_version, gtk_minor_version, gtk_micro_version);
}
#endif /* defined (GTK_MAJOR_VERSION) ... */
else
{
if ((gtk_major_version > major) ||

View File

@ -1,7 +1,7 @@
/* capture.c
* Routines for packet capture windows
*
* $Id: capture.c,v 1.28 1999/06/21 19:04:34 gram Exp $
* $Id: capture.c,v 1.29 1999/06/22 22:02:09 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@ -561,9 +561,11 @@ capture(void) {
#ifdef USE_ITEM
set_menu_sensitivity("/File/Save", TRUE);
set_menu_sensitivity("/File/Save as", FALSE);
set_menu_sensitivity("/Tools/Summary", TRUE);
#else
set_menu_sensitivity("<Main>/File/Save", TRUE);
set_menu_sensitivity("<Main>/File/Save as", FALSE);
set_menu_sensitivity("<Main>/Tools/Summary", TRUE);
#endif
}

185
configure vendored
View File

@ -703,6 +703,7 @@ else
fi
PACKAGE=ethereal
VERSION=0.6.2
@ -722,7 +723,7 @@ EOF
missing_dir=`cd $ac_aux_dir && pwd`
echo $ac_n "checking for working aclocal""... $ac_c" 1>&6
echo "configure:726: checking for working aclocal" >&5
echo "configure:727: checking for working aclocal" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@ -735,7 +736,7 @@ else
fi
echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
echo "configure:739: checking for working autoconf" >&5
echo "configure:740: checking for working autoconf" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@ -748,7 +749,7 @@ else
fi
echo $ac_n "checking for working automake""... $ac_c" 1>&6
echo "configure:752: checking for working automake" >&5
echo "configure:753: checking for working automake" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@ -761,7 +762,7 @@ else
fi
echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
echo "configure:765: checking for working autoheader" >&5
echo "configure:766: checking for working autoheader" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@ -774,7 +775,7 @@ else
fi
echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
echo "configure:778: checking for working makeinfo" >&5
echo "configure:779: checking for working makeinfo" >&5
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
@ -795,7 +796,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
echo "configure:799: checking host system type" >&5
echo "configure:800: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@ -819,7 +820,7 @@ echo "$ac_t""$host" 1>&6
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:823: checking for $ac_word" >&5
echo "configure:824: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -849,7 +850,7 @@ if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:853: checking for $ac_word" >&5
echo "configure:854: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -900,7 +901,7 @@ fi
# Extract the first word of "cl", so it can be a program name with args.
set dummy cl; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:904: checking for $ac_word" >&5
echo "configure:905: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -932,7 +933,7 @@ fi
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
echo "configure:936: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
echo "configure:937: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
ac_ext=c
# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@ -943,12 +944,12 @@ cross_compiling=$ac_cv_prog_cc_cross
cat > conftest.$ac_ext << EOF
#line 947 "configure"
#line 948 "configure"
#include "confdefs.h"
main(){return(0);}
EOF
if { (eval echo configure:952: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:953: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes
# If we can't run a trivial program, we are probably using a cross compiler.
if (./conftest; exit) 2>/dev/null; then
@ -974,12 +975,12 @@ if test $ac_cv_prog_cc_works = no; then
{ echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
fi
echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
echo "configure:978: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "configure:979: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
cross_compiling=$ac_cv_prog_cc_cross
echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
echo "configure:983: checking whether we are using GNU C" >&5
echo "configure:984: checking whether we are using GNU C" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -988,7 +989,7 @@ else
yes;
#endif
EOF
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:992: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:993: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
ac_cv_prog_gcc=yes
else
ac_cv_prog_gcc=no
@ -1007,7 +1008,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
echo "configure:1011: checking whether ${CC-cc} accepts -g" >&5
echo "configure:1012: checking whether ${CC-cc} accepts -g" >&5
if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1041,7 +1042,7 @@ fi
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1045: checking for $ac_word" >&5
echo "configure:1046: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1071,7 +1072,7 @@ fi
# If we're running gcc, add '-Wall' to CFLAGS.
echo $ac_n "checking to see if we can add '-Wall' to CFLAGS""... $ac_c" 1>&6
echo "configure:1075: checking to see if we can add '-Wall' to CFLAGS" >&5
echo "configure:1076: checking to see if we can add '-Wall' to CFLAGS" >&5
if test x$GCC != x ; then
CFLAGS="-Wall $CFLAGS"
echo "$ac_t""yes" 1>&6
@ -1097,7 +1098,7 @@ EOF
case "$host_os" in
solaris*)
echo $ac_n "checking for LD_LIBRARY_PATH""... $ac_c" 1>&6
echo "configure:1101: checking for LD_LIBRARY_PATH" >&5
echo "configure:1102: checking for LD_LIBRARY_PATH" >&5
if test x$LD_LIBRARY_PATH != x ; then
LIBS="$LIBS -R$LD_LIBRARY_PATH"
echo "$ac_t""yes -- added LD_LIBRARY_PATH to run-time linker path" 1>&6
@ -1158,7 +1159,7 @@ fi
# Extract the first word of "gtk-config", so it can be a program name with args.
set dummy gtk-config; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1162: checking for $ac_word" >&5
echo "configure:1163: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_path_GTK_CONFIG'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -1193,7 +1194,7 @@ fi
min_gtk_version=1.0.0
echo $ac_n "checking for GTK - version >= $min_gtk_version""... $ac_c" 1>&6
echo "configure:1197: checking for GTK - version >= $min_gtk_version" >&5
echo "configure:1198: checking for GTK - version >= $min_gtk_version" >&5
no_gtk=""
if test "$GTK_CONFIG" = "no" ; then
no_gtk=yes
@ -1216,7 +1217,7 @@ echo "configure:1197: checking for GTK - version >= $min_gtk_version" >&5
echo $ac_n "cross compiling; assumed OK... $ac_c"
else
cat > conftest.$ac_ext <<EOF
#line 1220 "configure"
#line 1221 "configure"
#include "confdefs.h"
#include <gtk/gtk.h>
@ -1294,7 +1295,7 @@ main ()
}
EOF
if { (eval echo configure:1298: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
if { (eval echo configure:1299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
:
else
@ -1328,7 +1329,7 @@ fi
CFLAGS="$CFLAGS $GTK_CFLAGS"
LIBS="$LIBS $GTK_LIBS"
cat > conftest.$ac_ext <<EOF
#line 1332 "configure"
#line 1333 "configure"
#include "confdefs.h"
#include <gtk/gtk.h>
@ -1338,7 +1339,7 @@ int main() {
return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version));
; return 0; }
EOF
if { (eval echo configure:1342: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:1343: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
echo "*** The test program compiled, but did not run. This usually means"
echo "*** that the run-time linker is not finding GTK or finding the wrong"
@ -1379,7 +1380,7 @@ rm -f conftest*
# Evidently, some systems have pcap.h, etc. in */include/pcap
echo $ac_n "checking for extraneous pcap header directories""... $ac_c" 1>&6
echo "configure:1383: checking for extraneous pcap header directories" >&5
echo "configure:1384: checking for extraneous pcap header directories" >&5
found_pcap_dir=""
for pcap_dir in /usr/include/pcap /usr/local/include/pcap
do
@ -1399,7 +1400,7 @@ fi
# Pcap checks
echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
echo "configure:1403: checking how to run the C preprocessor" >&5
echo "configure:1404: checking how to run the C preprocessor" >&5
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
@ -1414,13 +1415,13 @@ else
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp.
cat > conftest.$ac_ext <<EOF
#line 1418 "configure"
#line 1419 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1424: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1425: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@ -1431,13 +1432,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -E -traditional-cpp"
cat > conftest.$ac_ext <<EOF
#line 1435 "configure"
#line 1436 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1441: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1442: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@ -1448,13 +1449,13 @@ else
rm -rf conftest*
CPP="${CC-cc} -nologo -E"
cat > conftest.$ac_ext <<EOF
#line 1452 "configure"
#line 1453 "configure"
#include "confdefs.h"
#include <assert.h>
Syntax Error
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1458: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1459: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
:
@ -1480,17 +1481,17 @@ echo "$ac_t""$CPP" 1>&6
ac_safe=`echo "net/bpf.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for net/bpf.h""... $ac_c" 1>&6
echo "configure:1484: checking for net/bpf.h" >&5
echo "configure:1485: checking for net/bpf.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 1489 "configure"
#line 1490 "configure"
#include "confdefs.h"
#include <net/bpf.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1494: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1495: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -1514,17 +1515,17 @@ fi
ac_safe=`echo "pcap.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for pcap.h""... $ac_c" 1>&6
echo "configure:1518: checking for pcap.h" >&5
echo "configure:1519: checking for pcap.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 1523 "configure"
#line 1524 "configure"
#include "confdefs.h"
#include <pcap.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1528: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1529: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -1547,7 +1548,7 @@ else
fi
echo $ac_n "checking for pcap_open_offline in -lpcap""... $ac_c" 1>&6
echo "configure:1551: checking for pcap_open_offline in -lpcap" >&5
echo "configure:1552: checking for pcap_open_offline in -lpcap" >&5
ac_lib_var=`echo pcap'_'pcap_open_offline | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@ -1555,7 +1556,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lpcap $LIBS"
cat > conftest.$ac_ext <<EOF
#line 1559 "configure"
#line 1560 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@ -1566,7 +1567,7 @@ int main() {
pcap_open_offline()
; return 0; }
EOF
if { (eval echo configure:1570: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:1571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@ -1597,7 +1598,7 @@ fi
# Wiretap check
echo $ac_n "checking whether to include wiretap library""... $ac_c" 1>&6
echo "configure:1601: checking whether to include wiretap library" >&5
echo "configure:1602: checking whether to include wiretap library" >&5
# Check whether --with-wiretap or --without-wiretap was given.
if test "${with_wiretap+set}" = set; then
withval="$with_wiretap"
@ -1639,7 +1640,7 @@ fi
echo $ac_n "checking whether to enable ipv6 name resolution if available""... $ac_c" 1>&6
echo "configure:1643: checking whether to enable ipv6 name resolution if available" >&5
echo "configure:1644: checking whether to enable ipv6 name resolution if available" >&5
if test "x$enable_ipv6" = "xno" ; then
echo "$ac_t""no" 1>&6
else
@ -1649,12 +1650,12 @@ else
v6lib=none
echo $ac_n "checking ipv6 stack type""... $ac_c" 1>&6
echo "configure:1653: checking ipv6 stack type" >&5
echo "configure:1654: checking ipv6 stack type" >&5
for i in v6d toshiba kame inria zeta linux; do
case $i in
v6d)
cat > conftest.$ac_ext <<EOF
#line 1658 "configure"
#line 1659 "configure"
#include "confdefs.h"
dnl
#include </usr/local/v6/include/sys/types.h>
@ -1674,7 +1675,7 @@ rm -f conftest*
;;
toshiba)
cat > conftest.$ac_ext <<EOF
#line 1678 "configure"
#line 1679 "configure"
#include "confdefs.h"
dnl
#include <sys/param.h>
@ -1694,7 +1695,7 @@ rm -f conftest*
;;
kame)
cat > conftest.$ac_ext <<EOF
#line 1698 "configure"
#line 1699 "configure"
#include "confdefs.h"
dnl
#include <netinet/in.h>
@ -1714,7 +1715,7 @@ rm -f conftest*
;;
inria)
cat > conftest.$ac_ext <<EOF
#line 1718 "configure"
#line 1719 "configure"
#include "confdefs.h"
dnl
#include <netinet/in.h>
@ -1732,7 +1733,7 @@ rm -f conftest*
;;
zeta)
cat > conftest.$ac_ext <<EOF
#line 1736 "configure"
#line 1737 "configure"
#include "confdefs.h"
dnl
#include <sys/param.h>
@ -1781,12 +1782,12 @@ fi
echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
echo "configure:1785: checking for ANSI C header files" >&5
echo "configure:1786: checking for ANSI C header files" >&5
if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 1790 "configure"
#line 1791 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
@ -1794,7 +1795,7 @@ else
#include <float.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1798: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1799: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -1811,7 +1812,7 @@ rm -f conftest*
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
cat > conftest.$ac_ext <<EOF
#line 1815 "configure"
#line 1816 "configure"
#include "confdefs.h"
#include <string.h>
EOF
@ -1829,7 +1830,7 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
cat > conftest.$ac_ext <<EOF
#line 1833 "configure"
#line 1834 "configure"
#include "confdefs.h"
#include <stdlib.h>
EOF
@ -1850,7 +1851,7 @@ if test "$cross_compiling" = yes; then
:
else
cat > conftest.$ac_ext <<EOF
#line 1854 "configure"
#line 1855 "configure"
#include "confdefs.h"
#include <ctype.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@ -1861,7 +1862,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
exit (0); }
EOF
if { (eval echo configure:1865: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
if { (eval echo configure:1866: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
:
else
@ -1888,17 +1889,17 @@ for ac_hdr in fcntl.h sys/ioctl.h sys/time.h unistd.h stdarg.h
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:1892: checking for $ac_hdr" >&5
echo "configure:1893: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 1897 "configure"
#line 1898 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1902: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1903: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -1929,17 +1930,17 @@ for ac_hdr in sys/sockio.h sys/types.h netinet/in.h
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:1933: checking for $ac_hdr" >&5
echo "configure:1934: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 1938 "configure"
#line 1939 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:1943: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:1944: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -1979,7 +1980,7 @@ fi
SNMP_A=''
SNMP_O=''
echo $ac_n "checking whether to use SNMP library if available""... $ac_c" 1>&6
echo "configure:1983: checking whether to use SNMP library if available" >&5
echo "configure:1984: checking whether to use SNMP library if available" >&5
if test "x$enable_snmp" = "xno" ; then
echo "$ac_t""no" 1>&6
else
@ -1988,17 +1989,17 @@ else
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:1992: checking for $ac_hdr" >&5
echo "configure:1993: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 1997 "configure"
#line 1998 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:2002: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:2003: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -2025,7 +2026,7 @@ fi
done
echo $ac_n "checking for asn_parse_header in -lsnmp""... $ac_c" 1>&6
echo "configure:2029: checking for asn_parse_header in -lsnmp" >&5
echo "configure:2030: checking for asn_parse_header in -lsnmp" >&5
ac_lib_var=`echo snmp'_'asn_parse_header | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@ -2033,7 +2034,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lsnmp $LIBS"
cat > conftest.$ac_ext <<EOF
#line 2037 "configure"
#line 2038 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@ -2044,7 +2045,7 @@ int main() {
asn_parse_header()
; return 0; }
EOF
if { (eval echo configure:2048: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:2049: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@ -2077,12 +2078,12 @@ fi
# for get_interface_list().
echo $ac_n "checking for sa_len in struct sockaddr""... $ac_c" 1>&6
echo "configure:2081: checking for sa_len in struct sockaddr" >&5
echo "configure:2082: checking for sa_len in struct sockaddr" >&5
if eval "test \"`echo '$''{'ac_cv_ethereal_struct_sa_len'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2086 "configure"
#line 2087 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/socket.h>
@ -2090,7 +2091,7 @@ int main() {
struct sockaddr s; s.sa_len;
; return 0; }
EOF
if { (eval echo configure:2094: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:2095: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_ethereal_struct_sa_len=yes
else
@ -2113,14 +2114,14 @@ fi
# We must know our byte order
echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6
echo "configure:2117: checking whether byte ordering is bigendian" >&5
echo "configure:2118: checking whether byte ordering is bigendian" >&5
if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_cv_c_bigendian=unknown
# See if sys/param.h defines the BYTE_ORDER macro.
cat > conftest.$ac_ext <<EOF
#line 2124 "configure"
#line 2125 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/param.h>
@ -2131,11 +2132,11 @@ int main() {
#endif
; return 0; }
EOF
if { (eval echo configure:2135: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:2136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
# It does; now see whether it defined to BIG_ENDIAN or not.
cat > conftest.$ac_ext <<EOF
#line 2139 "configure"
#line 2140 "configure"
#include "confdefs.h"
#include <sys/types.h>
#include <sys/param.h>
@ -2146,7 +2147,7 @@ int main() {
#endif
; return 0; }
EOF
if { (eval echo configure:2150: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:2151: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_c_bigendian=yes
else
@ -2166,7 +2167,7 @@ if test "$cross_compiling" = yes; then
{ echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
else
cat > conftest.$ac_ext <<EOF
#line 2170 "configure"
#line 2171 "configure"
#include "confdefs.h"
main () {
/* Are we little or big endian? From Harbison&Steele. */
@ -2179,7 +2180,7 @@ main () {
exit (u.c[sizeof (long) - 1] == 1);
}
EOF
if { (eval echo configure:2183: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
if { (eval echo configure:2184: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_c_bigendian=no
else
@ -2205,13 +2206,13 @@ fi
if test $ac_cv_prog_gcc = yes; then
echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
echo "configure:2209: checking whether ${CC-cc} needs -traditional" >&5
echo "configure:2210: checking whether ${CC-cc} needs -traditional" >&5
if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_pattern="Autoconf.*'x'"
cat > conftest.$ac_ext <<EOF
#line 2215 "configure"
#line 2216 "configure"
#include "confdefs.h"
#include <sgtty.h>
Autoconf TIOCGETP
@ -2229,7 +2230,7 @@ rm -f conftest*
if test $ac_cv_prog_gcc_traditional = no; then
cat > conftest.$ac_ext <<EOF
#line 2233 "configure"
#line 2234 "configure"
#include "confdefs.h"
#include <termio.h>
Autoconf TCGETA
@ -2251,12 +2252,12 @@ echo "$ac_t""$ac_cv_prog_gcc_traditional" 1>&6
fi
echo $ac_n "checking for socket""... $ac_c" 1>&6
echo "configure:2255: checking for socket" >&5
echo "configure:2256: checking for socket" >&5
if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2260 "configure"
#line 2261 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char socket(); below. */
@ -2279,7 +2280,7 @@ socket();
; return 0; }
EOF
if { (eval echo configure:2283: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:2284: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_socket=yes"
else
@ -2305,12 +2306,12 @@ fi
SNPRINTF_C=""
SNPRINTF_O=""
echo $ac_n "checking for snprintf""... $ac_c" 1>&6
echo "configure:2309: checking for snprintf" >&5
echo "configure:2310: checking for snprintf" >&5
if eval "test \"`echo '$''{'ac_cv_func_snprintf'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2314 "configure"
#line 2315 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char snprintf(); below. */
@ -2333,7 +2334,7 @@ snprintf();
; return 0; }
EOF
if { (eval echo configure:2337: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:2338: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_snprintf=yes"
else
@ -2364,12 +2365,12 @@ fi
echo $ac_n "checking for strerror""... $ac_c" 1>&6
echo "configure:2368: checking for strerror" >&5
echo "configure:2369: checking for strerror" >&5
if eval "test \"`echo '$''{'ac_cv_func_strerror'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2373 "configure"
#line 2374 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char strerror(); below. */
@ -2392,7 +2393,7 @@ strerror();
; return 0; }
EOF
if { (eval echo configure:2396: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:2397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_strerror=yes"
else

View File

@ -377,6 +377,7 @@ B<http://ethereal.zing.org>.
Jeff Jahr <jjahr@shastanets.com>
Brad Robel-Forrest <bradr@watchguard.com>
Ashok Narayanan <ashokn@cisco.com>
Aaron Hillegass <aaron@classmax.com>
Alain Magloire <alainm@rcsm.ece.mcgill.ca> was kind enough to give his
permission to use his version of snprintf.c.

View File

@ -1,6 +1,6 @@
/* ethereal.c
*
* $Id: ethereal.c,v 1.43 1999/06/19 03:14:31 guy Exp $
* $Id: ethereal.c,v 1.44 1999/06/22 22:02:10 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@ -75,6 +75,7 @@
#include "timestamp.h"
#include "packet.h"
#include "capture.h"
#include "summary.h"
#include "file.h"
#include "menu.h"
#include "etypes.h"
@ -142,6 +143,7 @@ about_ethereal( GtkWidget *w, gpointer data ) {
"Jeff Jahr <jjahr@shastanets.com>\n"
"Brad Robel-Forrest <bradr@watchguard.com>\n"
"Ashok Narayanan <ashokn@cisco.com>\n"
"Aaron Hillegass <aaron@classmax.com>\n"
"\nSee http://ethereal.zing.org for more information",
VERSION, comp_info_str);
@ -169,9 +171,11 @@ file_sel_ok_cb(GtkWidget *w, GtkFileSelection *fs) {
#ifdef USE_ITEM
set_menu_sensitivity("/File/Save", FALSE);
set_menu_sensitivity("/File/Save As...", TRUE);
set_menu_sensitivity("/Tools/Summary", TRUE);
#else
set_menu_sensitivity("<Main>/File/Save", FALSE);
set_menu_sensitivity("<Main>/File/Save As...", TRUE);
set_menu_sensitivity("<Main>/Tools/Summary", TRUE);
#endif
}
@ -326,9 +330,11 @@ file_close_cmd_cb(GtkWidget *widget, gpointer data) {
#ifdef USE_ITEM
set_menu_sensitivity("/File/Close", FALSE);
set_menu_sensitivity("/File/Reload", FALSE);
set_menu_sensitivity("/Tools/Summary", FALSE);
#else
set_menu_sensitivity("<Main>/File/Close", FALSE);
set_menu_sensitivity("<Main>/File/Reload", FALSE);
set_menu_sensitivity("<Main>/Tools/Summary", FALSE);
#endif
}
@ -942,8 +948,10 @@ main(int argc, char *argv[])
cf_name[0] = '\0';
#ifdef USE_ITEM
set_menu_sensitivity("/File/Save As...", TRUE);
set_menu_sensitivity("/Tools/Summary", TRUE);
#else
set_menu_sensitivity("<Main>/File/Save As...", TRUE);
set_menu_sensitivity("<Main>/Tools/Summary", TRUE);
#endif
}

View File

@ -2,7 +2,7 @@
* Routines for calling the right protocol for the ethertype.
* This is called by both packet-eth.c (Ethernet II) and packet-llc.c (SNAP)
*
* $Id: ethertype.c,v 1.14 1999/06/11 15:30:37 gram Exp $
* $Id: ethertype.c,v 1.15 1999/06/22 22:02:11 gram Exp $
*
* Gilbert Ramirez <gram@verdict.uthscsa.edu>
*
@ -51,6 +51,7 @@ ethertype_to_str(guint16 etype, const char *fmt)
{ETHERTYPE_IPX, "Netware IPX/SPX"},
{ETHERTYPE_VINES, "Vines" },
{ETHERTYPE_CDP, "CDP" }, /* Cisco Discovery Protocol */
{ETHERTYPE_TRAIN, "Netmon Train" },
{ETHERTYPE_LOOP, "Loopback" }, /* Ethernet Loopback */
{ETHERTYPE_PPPOED, "PPPoE Discovery"},
{ETHERTYPE_PPPOES, "PPPoE Session" },
@ -126,3 +127,6 @@ ethertype(guint16 etype, int offset,
break;
}
}

View File

@ -1,7 +1,7 @@
/* etypes.h
* Defines ethernet packet types, similar to tcpdump's ethertype.h
*
* $Id: etypes.h,v 1.5 1999/06/11 15:30:37 gram Exp $
* $Id: etypes.h,v 1.6 1999/06/22 22:02:11 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@ -70,6 +70,11 @@
#define ETHERTYPE_VINES 0xbad
#endif
#ifndef ETHERTYPE_TRAIN
#define ETHERTYPE_TRAIN 0x1984
/* Created by Netmon as a summary packet */
#endif
#ifndef ETHERTYPE_CDP
#define ETHERTYPE_CDP 0x2000 /* Cisco Discovery Protocol */
#endif
@ -88,3 +93,5 @@
#endif /* etypes.h */

16
file.c
View File

@ -1,7 +1,7 @@
/* file.c
* File I/O routines
*
* $Id: file.c,v 1.32 1999/06/22 03:39:06 guy Exp $
* $Id: file.c,v 1.33 1999/06/22 22:02:11 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@ -315,9 +315,11 @@ load_cap_file(char *fname, capture_file *cf) {
#ifdef USE_ITEM
set_menu_sensitivity("/File/Close", TRUE);
set_menu_sensitivity("/File/Reload", TRUE);
set_menu_sensitivity("/Tools/Summary", TRUE);
#else
set_menu_sensitivity("<Main>/File/Close", TRUE);
set_menu_sensitivity("<Main>/File/Reload", TRUE);
set_menu_sensitivity("<Main>/Tools/Summary", TRUE);
#endif
} else {
msg_len = strlen(name_ptr) + strlen(err_fmt) + 2;
@ -330,11 +332,14 @@ load_cap_file(char *fname, capture_file *cf) {
set_menu_sensitivity("/File/Save", FALSE);
set_menu_sensitivity("/File/Save As...", FALSE);
set_menu_sensitivity("/File/Reload", FALSE);
set_menu_sensitivity("/Tools/Summary", FALSE);
#else
set_menu_sensitivity("<Main>/File/Close", FALSE);
set_menu_sensitivity("<Main>/File/Save", FALSE);
set_menu_sensitivity("<Main>/File/Save As...", FALSE);
set_menu_sensitivity("<Main>/File/Reload", FALSE);
set_menu_sensitivity("<Main>/Tools/Summary", FALSE);
#endif
}
return err;
@ -378,6 +383,8 @@ cap_file_input_cb (gpointer data, gint source, GdkInputCondition condition) {
set_menu_sensitivity("/File/Reload", TRUE);
set_menu_sensitivity("/Capture/Start...", TRUE);
set_menu_sensitivity("/Tools/Capture...", TRUE);
set_menu_sensitivity("/Tools/Summary", TRUE);
#else
set_menu_sensitivity("<Main>/File/Open...", TRUE);
set_menu_sensitivity("<Main>/File/Close", TRUE);
@ -385,6 +392,7 @@ cap_file_input_cb (gpointer data, gint source, GdkInputCondition condition) {
set_menu_sensitivity("<Main>/File/Reload", TRUE);
set_menu_sensitivity("<Main>/Capture/Start...", TRUE);
set_menu_sensitivity("<Main>/Tools/Capture...", TRUE);
set_menu_sensitivity("<Main>/Tools/Summary", TRUE);
#endif
gtk_statusbar_push(GTK_STATUSBAR(info_bar), file_ctx, " File: <none>");
return;
@ -465,12 +473,16 @@ tail_cap_file(char *fname, capture_file *cf) {
set_menu_sensitivity("/File/Reload", FALSE);
set_menu_sensitivity("/Capture/Start...", FALSE);
set_menu_sensitivity("/Tools/Capture...", FALSE);
set_menu_sensitivity("/Tools/Summary", FALSE);
#else
set_menu_sensitivity("<Main>/File/Open...", FALSE);
set_menu_sensitivity("<Main>/File/Close", FALSE);
set_menu_sensitivity("<Main>/File/Reload", FALSE);
set_menu_sensitivity("<Main>/Capture/Start...", FALSE);
set_menu_sensitivity("<Main>/Tools/Capture...", FALSE);
set_menu_sensitivity("<Main>/Tools/Summary", FALSE);
#endif
cf->fh = fopen(fname, "r");
tail_timeout_id = -1;
@ -489,11 +501,13 @@ tail_cap_file(char *fname, capture_file *cf) {
set_menu_sensitivity("/File/Save", FALSE);
set_menu_sensitivity("/File/Save As...", FALSE);
set_menu_sensitivity("/File/Reload", FALSE);
set_menu_sensitivity("/Tools/Summary", FALSE);
#else
set_menu_sensitivity("<Main>/File/Close", FALSE);
set_menu_sensitivity("<Main>/File/Save", FALSE);
set_menu_sensitivity("<Main>/File/Save As...", FALSE);
set_menu_sensitivity("<Main>/File/Reload", FALSE);
set_menu_sensitivity("<Main>/Tools/Summary", FALSE);
#endif
close(sync_pipe[0]);
}

5
file.h
View File

@ -1,7 +1,7 @@
/* file.h
* Definitions for file structures and routines
*
* $Id: file.h,v 1.16 1999/06/22 03:39:06 guy Exp $
* $Id: file.h,v 1.17 1999/06/22 22:02:12 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@ -149,3 +149,6 @@ char *file_read_error_message(int);
char *file_write_error_message(int);
#endif /* file.h */

7
menu.c
View File

@ -1,7 +1,7 @@
/* menu.c
* Menu routines
*
* $Id: menu.c,v 1.20 1999/06/19 01:14:51 guy Exp $
* $Id: menu.c,v 1.21 1999/06/22 22:02:12 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@ -38,6 +38,7 @@
#include "menu.h"
#include "packet.h"
#include "capture.h"
#include "summary.h"
#include "display.h"
#include "prefs.h"
#include "print.h"
@ -102,6 +103,7 @@ static GtkItemFactoryEntry menu_items[] =
{"/Tools/_Capture...", NULL, GTK_MENU_FUNC(capture_prep_cb), 0, NULL},
{"/Tools/_Follow TCP Stream", NULL, GTK_MENU_FUNC(follow_stream_cb), 0, NULL},
{"/Tools/Graph", NULL, NULL, 0, NULL},
{"/Tools/Summary", NULL, GTK_MENU_FUNC(summary_prep_cb), 0, NULL},
{"/_Help", NULL, NULL, 0, "<LastBranch>" },
{"/Help/_About Ethereal...", NULL, GTK_MENU_FUNC(about_ethereal), 0, NULL}
};
@ -136,6 +138,7 @@ static GtkMenuEntry menu_items[] =
{"<Main>/Tools/Capture...", NULL, capture_prep_cb, NULL},
{"<Main>/Tools/Follow TCP Stream", NULL, follow_stream_cb, NULL},
{"<Main>/Tools/Graph", NULL, NULL, NULL},
{"<Main>/Tools/Summary", NULL, summary_prep_cb, NULL},
{"<Main>/Help/About Ethereal...", NULL, about_ethereal, NULL}
};
#endif
@ -207,6 +210,7 @@ menus_init(void) {
set_menu_sensitivity("/Edit/Paste", FALSE);
set_menu_sensitivity("/Edit/Find", FALSE);
set_menu_sensitivity("/Tools/Graph", FALSE);
set_menu_sensitivity("/Tools/Summary", FALSE);
#ifdef WITH_WIRETAP
set_menu_sensitivity("/Tools/Follow TCP Stream", FALSE);
#endif
@ -227,6 +231,7 @@ menus_init(void) {
set_menu_sensitivity("<Main>/Edit/Paste", FALSE);
set_menu_sensitivity("<Main>/Edit/Find", FALSE);
set_menu_sensitivity("<Main>/Tools/Graph", FALSE);
set_menu_sensitivity("<Main>/Tools/Summary", FALSE);
#ifdef WITH_WIRETAP
set_menu_sensitivity("<Main>/Tools/Follow TCP Stream", FALSE);
#endif

311
summary.c Normal file
View File

@ -0,0 +1,311 @@
/* summary.c
* Routines for capture file summary window
*
* $Id: summary.c,v 1.1 1999/06/22 22:02:12 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
* Copyright 1998 Gerald Combs
*
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
#include <gtk/gtk.h>
#include <pcap.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#ifdef NEED_SNPRINTF_H
# ifdef HAVE_STDARG_H
# include <stdarg.h>
# else
# include <varargs.h>
# endif
# include "snprintf.h"
#endif
#ifdef HAVE_SYS_SOCKIO_H
# include <sys/sockio.h>
#endif
#include "ethereal.h"
#include "packet.h"
#include "file.h"
#include "menu.h"
#include "summary.h"
#include "capture.h"
#include "etypes.h"
#include "util.h"
#include "prefs.h"
extern capture_file cf;
/* File selection data keys */
#define E_SUM_PREP_FS_KEY "sum_prep_fs"
#define E_SUM_PREP_TE_KEY "sum_prep_te"
/* Summary callback data keys */
#define E_SUM_IFACE_KEY "sum_iface"
#define E_SUM_FILT_KEY "sum_filter"
#define E_SUM_COUNT_KEY "sum_count"
#define E_SUM_OPEN_KEY "sum_open"
#define E_SUM_SNAP_KEY "sum_snap"
#define SUM_STR_MAX 1024
/* Summary filter key */
#define E_SUM_FILT_TE_KEY "sum_filt_te"
char * string_for_format(guint16 cd_t){
switch (cd_t) {
#ifdef WITH_WIRETAP
case WTAP_FILE_WTAP:
return "wiretap";
case WTAP_FILE_PCAP:
return "pcap";
case WTAP_FILE_LANALYZER:
return "LanAlyzer";
case WTAP_FILE_NGSNIFFER:
return "Sniffer";
case WTAP_FILE_SNOOP:
return "snoop";
case WTAP_FILE_IPTRACE:
return "iptrace";
case WTAP_FILE_NETMON:
return "Network Monitor";
case WTAP_FILE_NETXRAY:
return "NetXray/Sniffer Pro";
#else
case CD_WIRE:
return "wiretap";
case CD_SNOOP:
return "snoop";
case CD_PCAP_BE:
return "pcap-be";
case CD_PCAP_LE:
return "pcap-le";
case CD_NA_UNCOMPR:
return "network-associates";
#endif
default:
return "unknown";
}
}
double
secs_usecs( guint32 s, guint32 us) {
return (us / 1000000.0) + (double)s;
}
void
tally_frame_data(gpointer cf, gpointer st) {
double cur_time;
summary_tally * sum_tally = (summary_tally *)st;
frame_data *cur_frame = (frame_data *)cf;
cur_time = secs_usecs(cur_frame->abs_secs, cur_frame->abs_usecs);
if (cur_time < sum_tally->start_time) {
sum_tally->start_time = cur_time;
}
if (cur_time > sum_tally->stop_time){
sum_tally->stop_time = cur_time;
}
sum_tally->bytes += cur_frame->pkt_len;
sum_tally->count++;
}
void
add_string_to_box(gchar *str, GtkWidget *box) {
GtkWidget *lb;
lb = gtk_label_new(str);
gtk_misc_set_alignment(GTK_MISC(lb), 0.0, 0.5);
gtk_box_pack_start(GTK_BOX(box), lb,FALSE,FALSE, 0);
gtk_widget_show(lb);
}
void
summary_prep_cb(GtkWidget *w, gpointer d) {
frame_data *first_frame, *cur_frame;
summary_tally *st;
GtkWidget *sum_open_w,
*main_vb, *file_fr, *data_fr, *capture_fr, *file_box,
*data_box,
*capture_box;
gchar string_buff[SUM_STR_MAX];
guint32 traffic_bytes, i;
double seconds;
GList *cur_glist;
/* initialize the tally */
first_frame = (frame_data *)(cf.plist->data);
st = (summary_tally *)g_malloc(sizeof(summary_tally));
st->start_time = secs_usecs(first_frame->abs_secs,first_frame->abs_usecs)
;
st->stop_time = secs_usecs(first_frame->abs_secs,first_frame->abs_usecs)
;
st->bytes = 0;
st->count = 0;
cur_glist = cf.plist;
for (i = 0; i < cf.count; i++){
cur_frame = (frame_data *)cur_glist->data;
tally_frame_data(cur_frame, st);
cur_glist = cur_glist->next;
}
/* g_list_foreach(cf.plist_first, (GFunc)tally_frame_data, st); */
/* traffic_bytes will be computed here */
traffic_bytes = st->bytes;
seconds = st->stop_time - st->start_time;
sum_open_w = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(sum_open_w), "Ethereal: Summary");
/* Container for each row of widgets */
main_vb = gtk_vbox_new(FALSE, 3);
gtk_container_border_width(GTK_CONTAINER(main_vb), 5);
gtk_container_add(GTK_CONTAINER(sum_open_w), main_vb);
gtk_widget_show(main_vb);
/* File frame */
file_fr = gtk_frame_new("File");
gtk_container_add(GTK_CONTAINER(main_vb), file_fr);
gtk_widget_show(file_fr);
file_box = gtk_vbox_new(FALSE, 3);
gtk_container_add(GTK_CONTAINER(file_fr), file_box);
gtk_widget_show(file_box);
/* filename */
snprintf(string_buff, SUM_STR_MAX, "Name: %s", cf.filename);
add_string_to_box(string_buff, file_box);
/* length */
snprintf(string_buff, SUM_STR_MAX, "Length: %lu", cf.f_len);
add_string_to_box(string_buff, file_box);
/* format */
snprintf(string_buff, SUM_STR_MAX, "Format: %s",
string_for_format(cf.cd_t));
add_string_to_box(string_buff, file_box);
/* Data frame */
data_fr = gtk_frame_new("Data");
gtk_container_add(GTK_CONTAINER(main_vb), data_fr);
gtk_widget_show(data_fr);
data_box = gtk_vbox_new(FALSE, 3);
gtk_container_add(GTK_CONTAINER(data_fr), data_box);
gtk_widget_show(data_box);
/* seconds */
snprintf(string_buff, SUM_STR_MAX, "Elapsed time: %.3f seconds",
secs_usecs(cf.esec,cf.eusec));
add_string_to_box(string_buff, data_box);
snprintf(string_buff, SUM_STR_MAX, "Between first and last packet: %.3f
seconds", seconds);
add_string_to_box(string_buff, data_box);
/* Packet count */
snprintf(string_buff, SUM_STR_MAX, "Packet count: %i", cf.count);
add_string_to_box(string_buff, data_box);
/* Packets per second */
if (seconds > 0){
snprintf(string_buff, SUM_STR_MAX, "Avg. packets/sec: %.3f",
cf.count/seconds);
add_string_to_box(string_buff, data_box);
}
/* Dropped count */
snprintf(string_buff, SUM_STR_MAX, "Dropped packets: %i", cf.drops);
add_string_to_box(string_buff, data_box);
/* Byte count */
snprintf(string_buff, SUM_STR_MAX, "Bytes of traffic: %d",
traffic_bytes);
add_string_to_box(string_buff, data_box);
/* Bytes per second */
if (seconds > 0){
snprintf(string_buff, SUM_STR_MAX, "Avg. bytes/sec: %.3f",
traffic_bytes/seconds);
add_string_to_box(string_buff, data_box);
}
/* Capture frame */
capture_fr = gtk_frame_new("Capture");
gtk_container_add(GTK_CONTAINER(main_vb), capture_fr);
gtk_widget_show(capture_fr);
capture_box = gtk_vbox_new(FALSE, 3);
gtk_container_add(GTK_CONTAINER(capture_fr), capture_box);
gtk_widget_show(capture_box);
/* interface */
if (cf.iface) {
snprintf(string_buff, SUM_STR_MAX, "Interface: %s", cf.iface);
} else {
sprintf(string_buff, "Interface: unknown");
}
add_string_to_box(string_buff, capture_box);
/* Display filter */
if (cf.dfilter) {
snprintf(string_buff, SUM_STR_MAX, "Display filter: %s", cf.dfilter);
} else {
sprintf(string_buff, "Display filter: none");
}
add_string_to_box(string_buff, capture_box);
/* Capture filter */
if (cf.cfilter) {
snprintf(string_buff, SUM_STR_MAX, "Capture filter: %s", cf.cfilter);
} else {
sprintf(string_buff, "Capture filter: none");
}
add_string_to_box(string_buff, capture_box);
gtk_window_set_position(GTK_WINDOW(sum_open_w), GTK_WIN_POS_MOUSE);
gtk_widget_show(sum_open_w);
}
void
summary_prep_close_cb(GtkWidget *w, gpointer win) {
#ifdef GTK_HAVE_FEATURES_1_1_0
win = w;
#endif
gtk_grab_remove(GTK_WIDGET(win));
gtk_widget_destroy(GTK_WIDGET(win));
}

46
summary.h Normal file
View File

@ -0,0 +1,46 @@
/* summary.h
* Definitions for capture file summary windows
*
* $Id: summary.h,v 1.1 1999/06/22 22:02:12 gram Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
* Copyright 1998 Gerald Combs
*
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __SUMMARY_H__
#define __SUMMARY_H__
typedef struct _summary_tally {
guint32 bytes;
double start_time;
double stop_time;
guint32 count;
} summary_tally;
void summary_prep_cb(GtkWidget *, gpointer);
void summary_prep_close_cb(GtkWidget *, gpointer);
#endif /* summary.h */

View File

@ -6,11 +6,14 @@
/* Define if lex declares yytext as a char * by default, not a char[]. */
#undef YYTEXT_POINTER
#undef PACKAGE
#undef VERSION
#undef HAVE_GLIB10
/* Define if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Name of package */
#undef PACKAGE
/* Version number of package */
#undef VERSION