Commit graph

58 commits

Author SHA1 Message Date
Guy Harris
3a583aeb59 From Albert Chin: rename resolv.{ch} to addr_resolv.{ch}, so that an
include of <resolv.h> in any system header file gets the system
<resolv.h> (needed for builds on Tru64 with GTK+ 1.2[.x]).

svn path=/trunk/; revision=11615
2004-08-06 19:57:49 +00:00
Guy Harris
1dff8e81b2 Arrange that "x11-declarations.h" and "x11-register-info.h" be part of
the distribution, as was the case in the past.

Arrange that RCS IDs be expanded, and that the EOL style be native, for
epan/dissectors/Makefile.{am,common,nmake}.

svn path=/trunk/; revision=11532
2004-07-27 02:52:49 +00:00
Jörg Mayer
66e1c280a3 make "make dist" work again. Well, almost: currently you
need to run
STCHECK_CONFIGURE_FLAGS=--with-ssl=/usr make distcheck
at least on my system.

svn path=/trunk/; revision=11442
2004-07-20 16:58:11 +00:00
Gilbert Ramirez
669db206cb Move dissectors to epan/dissectors directory.
Also move ncp222.py, x11-fields, process-x11-fields.pl,
make-reg-dotc, and make-reg-dotc.py.

Adjust #include lines in files that include packet-*.h
files.

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

svn path=/trunk/; revision=11400
2004-07-18 00:24:25 +00:00
Jörg Mayer
392a0d43c0 doxygen changes:
- moved doxygen.cfg to doxygen.cfg.in and let configure to the substitution
  on unix. Adapted the namke files accordingly.
- Don't add doxygen as a dependency for libethereal and libui: As doxygen is
  an unconditional target, this would cause the applications to be rebuild
  every time make was called, even when nothing changed in the meantime.
  This means that by now we need to do "make doxygen" manually in case we
  want updated documentation.

svn path=/trunk/; revision=11238
2004-06-25 07:10:55 +00:00
Jörg Mayer
7abd8a323d Link the Kerberos into the main app, not libethereal
svn path=/trunk/; revision=11164
2004-06-17 08:53:42 +00:00
Jörg Mayer
7aac8b9e7d Hack to remove epan/config.h
svn path=/trunk/; revision=11138
2004-06-11 15:23:42 +00:00
Gerald Combs
733b1556ce Remove config.nmake dependencies from epan/Makefile.am and gtk/Makefile.am.
svn path=/trunk/; revision=11130
2004-06-09 19:20:46 +00:00
Gerald Combs
058b3c5582 Add Automake/Autoconf Doxygen targets.
svn path=/trunk/; revision=11128
2004-06-09 03:08:13 +00:00
Guy Harris
1b6c7006d7 From Lars Roland: add the libethereal .def file to the list of files
included in the distribution.

svn path=/trunk/; revision=10852
2004-05-11 11:19:26 +00:00
Ulf Lamping
e045c4a596 add the new doxygen.cfg file to the EXTRA_DIST files
svn path=/trunk/; revision=10844
2004-05-11 01:00:51 +00:00
Gerald Combs
ca78495f89 Don't try to include epan/config.h.win32 in the distribution.
svn path=/trunk/; revision=10826
2004-05-08 21:43:38 +00:00
Olivier Biot
eee9dc26ac Fix the CLEANFILES target so both static and shared libraries are cleaned.
svn path=/trunk/; revision=10475
2004-03-24 21:27:44 +00:00
Guy Harris
121f06fab7 Make "epan_init()" take, as additional arguments, pointers to routines
that dissectors should call to report file open and read errors, and
have "report_open_failure()" and "report_read_failure()" call through
those pointers, rather than being defined and exported by the
application using libethereal - instead, the application would define
those functions and pass pointers to them to 'epan_init()".

Move "report_err.h" to the epan directory, as the functions it declares
are now part of the libethereal API.

svn path=/trunk/; revision=10470
2004-03-23 21:19:58 +00:00
Gerald Combs
8e5a56a881 Add Makefile.common to the distribution.
svn path=/trunk/; revision=10440
2004-03-22 21:29:52 +00:00
Olivier Biot
11f9232336 From Lars Roland: Move timestamp_type into libethereal and provide accessor
methods for getting and setting the timestamp type.

This is a move towards a real libethereal shared library.

svn path=/trunk/; revision=10402
2004-03-18 19:04:33 +00:00
Jörg Mayer
769d9df855 Add new docsis files for static build. This is currently necessary and
needs to be fixed.

svn path=/trunk/; revision=10393
2004-03-17 17:46:40 +00:00
Jörg Mayer
b7803c8fc6 Make libethereal and libwiretap shared libs.
svn path=/trunk/; revision=10368
2004-03-13 10:15:36 +00:00
Gerald Combs
3fe295ffd9 Add cvsversion.h, x11-declarations.h, and x11-register-info.h to
CLEANFILES so that "make distcheck" will work.

svn path=/trunk/; revision=10364
2004-03-12 16:31:35 +00:00
Guy Harris
27656155b7 Add routines to process IPv{4,6}-address-and-prefix-length pairs,
masking out the appropriate bits in the address.

Use them in the BGP and EIGRP dissectors.

svn path=/trunk/; revision=10327
2004-03-06 03:25:10 +00:00
Jörg Mayer
0974869dea Move the x11 generation into epan.
aclocal-missing isn't needed any more.

svn path=/trunk/; revision=10299
2004-03-04 08:26:20 +00:00
Jörg Mayer
84b5bd1e1d Jeff Morriss: Remove packet-ncp2222.c during maintainer-clean
svn path=/trunk/; revision=10288
2004-03-03 21:55:59 +00:00
Jörg Mayer
2e0e2b30ab Jeff Morriss: Move generation of packet-ncp2222.c to epan to make things work again
svn path=/trunk/; revision=10283
2004-03-03 00:07:01 +00:00
Jörg Mayer
4dfe6dd749 The sources of the plugin are now in ../oldpath/file.c
svn path=/trunk/; revision=10276
2004-03-02 03:46:02 +00:00
Jörg Mayer
4a6e73c84a Move the dissectors into libethereal (no static/shared lib changes):
- Create epan/Makefile.common
- Move dissector_src and helper files from Makefile.common to
  epan/Makefile.common
- Create register.c in epan/
- link all the files into libethereal
- put plugin_src into epan/Makefile.am

Try to make rpms build with rpm v4 again (sorry, I've forgotten who to
attribute this to).

svn path=/trunk/; revision=10273
2004-03-02 01:21:56 +00:00
Gilbert Ramirez
71c8b6077b slab.h needs to be in libethereal_a_SOURCES
svn path=/trunk/; revision=9181
2003-12-06 06:22:10 +00:00
Guy Harris
28c1a65e85 Add in a notion of "circuits", which are for virtual circuit-oriented
protocols (where there's a virtual circuit ID of some sort in packets)
what conversations are for protocols ultimately running atop
connectionless network layers.  Have circuit type and ID values in the
"packet_info" structure.

Have the Frame Relay dissector set the circuit type and ID values, and
have the Wellfleet compression protocol set up circuit information and
store compression information with the circuit.

svn path=/trunk/; revision=6469
2002-10-22 08:22:07 +00:00
Gilbert Ramirez
791f5774d0 Provide for per-protocol-tree data in the proto_tree code.
Put a hash-table of "interesting" fields in the per-proto-tree data.
The dfilter code records which fields/protocols are "interesting" (by which
I mean, their value or existence is checked). Thus, the proto_tree routines
can create special arrays of field_info*'s that are ready for the dfilter
engine to use during a filter operation.

Also store the "proto_tree_is_visible" boolean, renamed "visible", in
the per-proto-tree data.

Move epan_dissect_t to its own header file to make #include dependencies
easier to handle.

Provide epan_dissect_fill_in_columns(), which accepts just the epan_dissect_t*
as an argument.

epan_dissect_new() needs to be followed by epan_dissect_run() for the
dissection to actually take place. Between those two calls,
epan_dissect_prime_dfilter() can be run 0, 1, or multiple times in order to
prime the empty proto_tree with the "intersesting" fields from the dfilter_t.

svn path=/trunk/; revision=4422
2001-12-18 19:09:08 +00:00
Ed Warnicke
b7420272e7 Moved int-64bit.{c,h} into epan/
svn path=/trunk/; revision=4248
2001-11-22 03:07:07 +00:00
Gilbert Ramirez
8743a4a8a7 Remove the global packet_info called "pi". Dissectors now only
access their own "pinfo". A packet_info is stored in epan_dissect_t,
which is created for the dissection of a single packet.

GUI functions which need to access the packet_info of the currently
selected packet used to use "pi"; now they use cfile.edt->pi. cfile's
"edt" member is the epan_dissect_t of the currently-selected packet.

The functionality of blank_packetinfo() was moved into
dissect_packet(), as that's the only place that called blank_packetinfo(),
after a spurious call to blank_packetinfo() was removed from
packet_list_select_cb().

svn path=/trunk/; revision=4246
2001-11-21 23:16:26 +00:00
Guy Harris
845f39b6fe Make the resolution for time values be nanoseconds rather than
microseconds.

Fix some "signed vs. unsigned" comparison warnings.

svn path=/trunk/; revision=3937
2001-09-14 07:33:04 +00:00
Ed Warnicke
cd6ad9d4c0 Moved the the remaining column related routines out of packet.{c,h}
and into column-utils{c,h}.

svn path=/trunk/; revision=3231
2001-04-01 07:32:35 +00:00
Ed Warnicke
21d1ad6375 Moved some ipv6 definitions from packet-ipv6.h to epan/ipv6-utils.h.
Fixed some typos.

svn path=/trunk/; revision=3230
2001-04-01 07:06:24 +00:00
Ed Warnicke
48421be1d2 Moved timestamp.h into epan.
svn path=/trunk/; revision=3228
2001-04-01 06:11:25 +00:00
Ed Warnicke
90f7f6184d Moved some definitions and functions from packet-osi.{c,h} to
epan/osi-utils.{c,h} to bring all of the epan dependencies into epan.

svn path=/trunk/; revision=3226
2001-04-01 05:48:15 +00:00
Ed Warnicke
dd54ba9396 Moved the packet_info structure and supporting functions out of
packet.{h,c} and into a separate packet_info{h,c}.

svn path=/trunk/; revision=3225
2001-04-01 04:50:42 +00:00
Ed Warnicke
20eee44b70 Moved the frame_data structures and functions from packet.{h,c} to
frame_data{h,c}.  Added a frame_data_init to be called by epan_init.

svn path=/trunk/; revision=3223
2001-04-01 04:11:51 +00:00
Ed Warnicke
5d0c213448 Moved the column_info structure and related enum from packet.{c,h} to
column_info.h.

svn path=/trunk/; revision=3222
2001-04-01 03:42:00 +00:00
Ed Warnicke
c832ac2c35 Moved the value_string structures and function from packet.{c,h} into
a separate value_string.{c,h}.

svn path=/trunk/; revision=3221
2001-04-01 03:18:41 +00:00
Ed Warnicke
c17e3b00c6 Moved various to_str files from packet.{c,h} to a separate
to_str.{c,h}.  Resolved strange situation where ipx_addr_to_str was
declared in packet.h but defined in packet-ipx.c by moving
ipx_addr_to_str, ipxnet_to_str_punct, and ipxnet_to_str from packet-ipx.{c,h}   to to_str.{c,h}

svn path=/trunk/; revision=3219
2001-04-01 02:47:56 +00:00
Gilbert Ramirez
a8b0c240e6 Move appletalk- and sna-related address routines out of the dissectors
and into epan.

svn path=/trunk/; revision=3160
2001-03-22 16:24:16 +00:00
Gilbert Ramirez
8f1fff2e6a Create a more modular type system for the FT_* types. Put them
into epan/ftypes.

Re-write display filter routines using Lemon parser instead of yacc.
Besides using a different tool, the new grammar is much simpler, while
the display filter engine itself is more powerful and more easily extended.

Add dftest executable, to test display filter "bytecode" generation.
Add option to "configure" to build dftest or randpkt, both of which are not
built by default.

Implement Ed Warnicke's ideas about dranges in the new display filter and
ftype code.

Remove type FT_TEXT_ONLY in favor of FT_NONE, and have protocols registered
as FT_PROTOCOL. Thus, FT_NONE is used only for simple labels in the proto tree,
while FT_PROTOCOL is used for protocols. This was necessary for being
able to make byte slices (ranges) out of protocols, like "frame[0:3]"

Win32 Makefile.nmake's will be added tonight.

svn path=/trunk/; revision=2967
2001-02-01 20:21:25 +00:00
Guy Harris
4148aac56c Automake 1.4b (which is actually a test version of 1.5, i.e. of a
*future* version, not of 1.4, which is the *current* version - i.e.,
it's newer than 1.4) complains, if "dfilter-grammar.c" and
"dfilter-scanner.c" are part of "EXTRA_libethereal_a_SOURCES", that
"dfilter-grammar.o" is built both from "dfilter-grammar.c" and
"dfilter-grammar.y", and that "dfilter-scanner.o" is built both from
"dfilter-scanner.c" and "dfilter-scanner.l", and refuses to build
"Makefile.in".

Moving them to "EXTRA_DIST" makes 1.4b happy.

Automake 1.4 allows them either to be in "EXTRA_libethereal_a_SOURCES"
or in "EXTRA_DIST"; the only difference between the generated
"Makefile.in" files is which of those two variables the files are in,
and the only difference that makes is that it keeps those two files out
of "SOURCES", which means that "make ID" doesn't include them in the
files it looks at, and "make TAGS" and "make tags" don't include them in
the files they look at.  I'm not sure whether the tags file should be
built from "dfilter-grammar.y" and "dfilter-scanner.l", or from
"dfilter-grammar.c" and "dfilter-scanner.c"; the former means you see
the real source file, not the generated source file, if you look for a
symbol defined in one of those files, while the latter means you can
look for symbols in code generated by YACC/Bison or Flex.

In either case, the generated files go into the distribution tarball,
which is what we want.

For now, we go with what makes Automake 1.4b happy.

svn path=/trunk/; revision=2909
2001-01-17 06:13:39 +00:00
Gilbert Ramirez
95efc598a0 Move tvbtest.c to EXTRA_DIST
svn path=/trunk/; revision=2679
2000-11-20 16:18:08 +00:00
Guy Harris
2fa39ce7d3 Move the table of bit-swapped byte values to "epan/bitswap.c", and
declare it, and define a "BIT_SWAP" macro that uses it, in
"epan/bitswap.h".

Use that macro to bit-swap bytes in the IEEE 802.11 dissector, rather
than the macro that was used (said macro used GCCisms and didn't compile
on Windows).

Make an "init_plugin()" routine to enable a plugin and call its init
routine, and call it from "check_plugin_status()" and
"plugins_enable_cb()", rather than having very similar code in two
places; "patable" is now part of libethereal, and, at least on Windows,
attempts to refer to it from "libui" failed.  Make "patable" static to
"epan/plugins.c".  (This may still not work, as now "libui" is calling a
routine in "libethereal"; if that fails, perhaps it's time to get rid of
the "enable/disable plugins" stuff completely, as new-style plugins, at
least, register themselves as protocols and should be controllable from
the "Edit->Protocols" window just as built-in dissectors are.)

svn path=/trunk/; revision=2649
2000-11-15 09:37:53 +00:00
Guy Harris
d4f5b852d9 There's no "exception.h" header file in "epan", but there is
"exceptions.h".

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

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

svn path=/trunk/; revision=2504
2000-10-17 09:25:37 +00:00
Guy Harris
cba377df3c Give libethereal its own configuration file, and have that configuration
file, rather than the top-level Ethereal configuration file, check for
"inet_aton()", "inet_pton()", and "inet_ntop()".  Then make its
Makefile.am include the appropriate object files if necessary.
Otherwise, they don't get built and put into libethereal, and therefore
attempts to link with anything in libethereal that uses them fail on
platforms that lack ethem, causing the build to fail.

That means a bunch of things need to be fixed to cope with libethereal
having its own "config.h" file; this means removing the include of
"config.h" from some libethereal header files.  Move the definitions of
the path names used only by "resolv.c" to "resolv.c" from "resolv.h" (so
"resolv.h" doesn't need "config.h", define HAVE_PLUGINS in the configure
script (so we don't have to include it in "plugins.h" to check whether
HAVE_DLFCN_H is defined).

Unfortunately, stuff outside libethereal needs to know PLUGIN_DIR; for
now, define that in the top-level configuration file, and have Ethereal
and Tethereal pass it as an argument to "epan_init()" - that should be
cleaned up at some point.

Remove from the top-level configure script checks for things used only
in libethereal.

svn path=/trunk/; revision=2498
2000-10-16 23:18:05 +00:00
Gilbert Ramirez
26bda31ed9 Move inet_*.[ch] files to epan.
svn path=/trunk/; revision=2494
2000-10-14 04:31:26 +00:00