Hi,
ethereal is certainly one of the most useful programs I've ever used! ;-)
But, as a matter of personal taste, I don't like GTK's look&feel too much and
therefore over the last few days have started with a KDE GUI for it.
It's still absolutely basic, all it can do currently is read a capture file or
capture from hardcoded eth0 and display the packets as packet list, protocol
tree and hex dump with quite a few things missing.
If you want to check it out, attached is a patch with all changes needed to
ethereal's Makefile.am (a few days old CVS version), the actual sources are
available from :pserver:anonymous@xxxxxxxxxxxxxxxx:/usr/local/cvs, module
kethereal, empty password. Do the checkout from inside ethereal's toplevel
directory.
I didn't write any configure check for the KDE dependency yet, so if you apply
the attached patch, the kde/ subdir must be present and you need to have
libtool 1.4 (1.3 fails on the recursive dependencies) and a recent kdelibs
version (must be CVS HEAD, KDE 2.x won't do).
Also, before you can build the executable from ethereal's dir, this is needed
to build the GUI library:
cd kde
make -f Makefile.cvs
./configure
make
I'm wondering if it would be possible to add this (once it's a little more
stable and complete) to ethereal's CVS tree?
Obligatory screenshot is at http://malte.homeip.net/kethereal.png
Thanks for any comment, suggestions, justified flames,
--
Malte Starostik
PGP: 1024D/D2F3C787 [C138 2121 FAF3 410A 1C2A 27CD 5431 7745 D2F3 C787]
Index: Makefile.am
===================================================================
RCS file: /cvsroot/ethereal/Makefile.am,v
retrieving revision 1.367
diff -u -3 -d -p -r1.367 Makefile.am
--- Makefile.am 2001/09/18 21:29:56 1.367
+++ Makefile.am 2001/09/24 22:39:27
@@ -60,7 +60,7 @@ ACLOCAL_AMFLAGS = `./aclocal-flags`
# automake will arrange that the Makefile define it as the union of all
# the "man{section}_MANS" variables.
#
-bin_PROGRAMS = @ethereal_bin@ @editcap_bin@ @mergecap_bin@ @tethereal_bin@ @dftest_bin@ @randpkt_bin@ @text2pcap_bin@
+bin_PROGRAMS = @ethereal_bin@ @editcap_bin@ @mergecap_bin@ @tethereal_bin@ @dftest_bin@ @randpkt_bin@ @text2pcap_bin@ kethereal
bin_SCRIPTS = @idl2eth_bin@
man1_MANS = @ethereal_man@ @editcap_man@ @mergecap_man@ @tethereal_man@ @text2pcap_man@ @idl2eth_man@
man_MANS =
@@ -611,6 +611,35 @@ tethereal_static_LDADD = \
tethereal_LDFLAGS = -export-dynamic
tethereal_static_LDFLAGS = -Wl,-static
+
+kethereal_SOURCES = \
+ $(DISSECTOR_SRC) \
+ $(ETHEREAL_COMMON_SRC) \
+ register.c
+
+# Additional libs that I know how to build. These will be
+# linked into the tethereal executable.
+kethereal_additional_libs = \
+ kde/kethereal/libkethereal.la \
+ wiretap/libwiretap.a \
+ epan/libethereal.a \
+ epan/ftypes/libftypes.a \
+ epan/dfilter/libdfilter.a
+
+# This is the automake dependency variable for the executable
+kethereal_DEPENDENCIES = \
+ $(ethereal_optional_objects) \
+ $(kethereal_additional_libs) \
+ $(plugin_libs)
+
+# This automake variable adds to the link-line for the executable
+kethereal_LDADD = \
+ $(ethereal_optional_objects) \
+ $(kethereal_additional_libs) \
+ @SNMP_LIBS@ @SSL_LIBS@ \
+ $(plugin_ldadd) \
+ @GLIB_LIBS@ -lm \
+ @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@
text2pcap_SOURCES = text2pcap.c text2pcap-scanner.l
text2pcap_DEPENDENCIES = text2pcap.h