aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgram <gram@f5534014-38df-0310-8fa8-9805f1628bb7>1999-06-22 22:02:39 +0000
committergram <gram@f5534014-38df-0310-8fa8-9805f1628bb7>1999-06-22 22:02:39 +0000
commitb53c91a01675849c8301d2698c6c4542c53bd2ca (patch)
treedc4fa4db2b346c3b62dfdbd0d3780a374a7aa6a6
parentc8769cd4b709379b8e557d86f5226de41f3ad7ac (diff)
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. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@326 f5534014-38df-0310-8fa8-9805f1628bb7
-rw-r--r--AUTHORS4
-rw-r--r--Makefile.am2
-rw-r--r--Makefile.in21
-rw-r--r--NEWS1
-rw-r--r--aclocal.m446
-rw-r--r--capture.c4
-rwxr-xr-xconfigure185
-rw-r--r--doc/ethereal.pod1
-rw-r--r--ethereal.c10
-rw-r--r--ethertype.c6
-rw-r--r--etypes.h9
-rw-r--r--file.c16
-rw-r--r--file.h5
-rw-r--r--menu.c7
-rw-r--r--summary.c311
-rw-r--r--summary.h46
-rw-r--r--wiretap/config.h.in11
17 files changed, 556 insertions, 129 deletions
diff --git a/AUTHORS b/AUTHORS
index 0ed193546c..6a08f1146d 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -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.
diff --git a/Makefile.am b/Makefile.am
index 99004846ea..9c02ce4307 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -90,6 +90,8 @@ ethereal_SOURCES = \
resolv.c \
resolv.h \
smb.h \
+ summary.h \
+ summary.c \
util.c \
util.h
diff --git a/Makefile.in b/Makefile.in
index b8922fbfa1..094fd82575 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -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 \
diff --git a/NEWS b/NEWS
index 18860b379e..f1e1c0ff53 100644
--- a/NEWS
+++ b/NEWS
@@ -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)
diff --git a/aclocal.m4 b/aclocal.m4
index aa9e319f1e..fba6b3a302 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -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) ||
diff --git a/capture.c b/capture.c
index f60892a549..0b5ab5e3d1 100644
--- a/capture.c
+++ b/capture.c
@@ -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
}
diff --git a/configure b/configure
index f351f6913e..cdbdf58ad1 100755
--- a/configure
+++ b/configure
@@ -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
diff --git a/doc/ethereal.pod b/doc/ethereal.pod
index ae16fc1a16..0ac1050934 100644
--- a/doc/ethereal.pod
+++ b/doc/ethereal.pod
@@ -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.
diff --git a/ethereal.c b/ethereal.c
index 99b7630ff4..475e7bea54 100644
--- a/ethereal.c
+++ b/ethereal.c
@@ -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
}
diff --git a/ethertype.c b/ethertype.c
index 952723e729..e9ad98e2f0 100644
--- a/ethertype.c
+++ b/ethertype.c
@@ -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;
}
}
+
+
+
diff --git a/etypes.h b/etypes.h
index 3447b5305e..3f50d600da 100644
--- a/etypes.h
+++ b/etypes.h
@@ -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 */
+
+
diff --git a/file.c b/file.c
index 03df57b114..24670409c5 100644
--- a/file.c
+++ b/file.c
@@ -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]);
}
diff --git a/file.h b/file.h
index 63088a8382..1da016cc40 100644
--- a/file.h
+++ b/file.h
@@ -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 */
+
+
+
diff --git a/menu.c b/menu.c
index 5fa7f395c7..fd5cab6843 100644
--- a/menu.c
+++ b/menu.c
@@ -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
diff --git a/summary.c b/summary.c
new file mode 100644
index 0000000000..7429d751f4
--- /dev/null
+++ b/summary.c
@@ -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));
+}
diff --git a/summary.h b/summary.h
new file mode 100644
index 0000000000..8e6ffba88b
--- /dev/null
+++ b/summary.h
@@ -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 */
+
+
+
+
+
diff --git a/wiretap/config.h.in b/wiretap/config.h.in
index 4ae27a3df1..4486b95254 100644
--- a/wiretap/config.h.in
+++ b/wiretap/config.h.in
@@ -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
+