Sophie

Sophie

distrib > Fedora > 13 > i386 > media > os > by-pkgid > 75fe4735f5d9c6683b3d2555189ce0f7 > files > 56

libnetdude-devel-0.11-3.fc12.i686.rpm

libnetdude 0.11 Changelog
========================================================================

Mon Sep  1 14:47:03 CEST 2008            Christian <christian@whoop.org>

This is 0.11.

------------------------------------------------------------------------

Mon Sep  1 14:43:54 CEST 2008            Christian <christian@whoop.org>

Bump documentation version number to 0.11.

------------------------------------------------------------------------

Fri Aug 29 15:55:55 CEST 2008            Christian <christian@whoop.org>

A whole round of mostly minor updates and cleanups:

- Added libnd_proto_plugin_add() to allow external registration of
  protocol plugins. The upcoming Netdude 0.5 uses this for the new pcap
  plugin.

- The way some of the PACKAGE_xxx strings were derived by configure was
  broken on recent systems, and is now more thorough.

- Copyright years updated.

- Cosmetic cleanups to ChangeLog, new versions of generated files.

------------------------------------------------------------------------

Fri Dec 14 17:25:14 CET 2007             Christian <christian@whoop.org>

- No longer force unclaimed payload bytes to be shown as raw data, as
  the user is likely to confuse this with regular payload, for example
  of TCP.

------------------------------------------------------------------------

Wed Dec  5 11:07:01 PST 2007             Christian <christian@whoop.org>

More robust determination of the various paths at configuration time
(as used, for example, by lndtool). The code previously didn't ensure 
that all variables in paths are resolved, which would lead to broken
paths at runtime.

------------------------------------------------------------------------

Tue Nov 13 10:58:17 PST 2007             Christian <christian@whoop.org>

- Added support for VLAN-tagged Ethernet headers.

------------------------------------------------------------------------

Sun Jun 24 16:17:08 PDT 2007             Christian <christian@whoop.org>

This is 0.10a.

------------------------------------------------------------------------

Sun Jun 24 13:41:38 PDT 2007             Christian <christian@whoop.org>

Bugfix: initialize the new packet data when the caplen is increased.

------------------------------------------------------------------------

Tue Jun 12 14:31:49 PDT 2007             Christian <christian@whoop.org>

The init_packet() hook of LND_Protocol has been changed to return a
pointer to the end of the area of data actually used by the protocol,
and the protocol plugins have been updated accordingly.

This allows protocols earlier on in the chain to become aware of
subsequent protocols not using up all the given space. A case in point
where this occurs is ICMP extensions: so far, Netdude would not
properly parse/show the MPLS information that is contained in some
of the ICMP traffic triggered by traceroute, because for ICMP errors
the chain would end with the last protocol contained in the embedded
ICMP-triggering datagram. This protocol, however, knows nothing about
the following MPLS extension header.

------------------------------------------------------------------------

Wed Jun  6 21:50:03 PDT 2007             Christian <christian@whoop.org>

This is 0.10.

------------------------------------------------------------------------

Tue Jun  5 17:57:16 PDT 2007             Christian <christian@whoop.org>

- New API function libnd_packet_get_nth_proto(), to provide direct
  access to a packet's nth protocol metadata.
- Fixed a bug in the caplen/len adjustment code: reducing the wire
  length didn't work as expected.

------------------------------------------------------------------------

Mon Jun  4 19:16:44 PDT 2007             Christian <christian@whoop.org>

Fixlets for the upcoming release.

------------------------------------------------------------------------

Sat Jun  2 22:26:27 PDT 2007             Christian <christian@whoop.org>

Correcting the lnd-headerwalk example to a recent API callback change.

------------------------------------------------------------------------

Fri May 11 00:00:29 PDT 2007             Christian <christian@whoop.org>

A pass over the C files to ensure that they all include config.h 
correctly. Now that we have large file support, it is crucial that it is 
used consistently everywhere, otherwise nasty segfaults with useless 
backtraces are the norm. :(

------------------------------------------------------------------------

Fri Apr  6 23:04:30 PDT 2007             Christian <christian@whoop.org>

Fixed a naming typo -- we have nothing to do with libnet. ;)

------------------------------------------------------------------------

Thu Mar  8 15:31:41 PST 2007             Christian <christian@whoop.org>

- Turns out that libnd_packet_fix() was broken. For example, in the case
  of an IP fragment, it would go beyond the IP header of the initial 
  fragment and happily correct the checksum of a following TCP header. 
  This has now been corrected: the new can_fix_proceed() member of a
  protocol implementation can decide whether it makes sense to continue
  to fix a packet beyond a given protocol header. Currently the only
  protocol implementing this is the IP plugin.

- New convenience functions introduced in the process:
  - libnd_packet_get_num_protos()
    Returns number of protocols in a packet.

  - libnd_packet_get_last_fixable_proto()
    Returns the index of the last protocol in a packet where checksum
    correction makes sense.

  - libnd_packet_get_proto_index()
    Given an arbitrary protocol instance (say, IP at nesting 1), returns 
    the index of such a protocol instance in the given packet.

- Actually makde libnd_packet_tell_observers() propagate the new len/ 
  caplen change notifications.


------------------------------------------------------------------------

Tue Mar  6 14:13:09 PST 2007             Christian <christian@whoop.org>

A bunch of pretty cool new features:

- The pcap packet header attached to each packet in a pcap trace is now
  editable, meaning you can edit a packet's timestamp. This has been
  implemented via a 'pcap' pseudo-protocol, effectively treating the
  pcap packet header as part of the packet.

- Also, packet sizes are now adjustable. More precisely, a packet's
  capture length and wire length can be changed separately, yielding new
  editable packet content as necessary. When modifying a packet's wire
  length, the protocol handlers are invoked to update their header
  fields to the changed packet size.

- The callback passed to libnd_packet_foreach_proto[_backward]() is now
  expected to return a boolean value, indicating whether to continue the
  iteration (TRUE) or abort (FALSE).

- Updates about changed configuration settings are now announced in two
  stages: first, any registered 'apply' callbacks are used to propagate
  updated config items into the application. Once these are done, a
  second 'update' round can be used to implement follow-on changes. The
  difference here is that one can rely on the first phase being done,
  which previously wasn't the case, possibly leading to 'need to apply
  twice' effects. The function to use for adding such update callbacks
  is libnd_prefs_domain_add_udpate_cb().


------------------------------------------------------------------------

Thu Jan 11 16:31:31 PST 2007             Christian <christian@whoop.org>

- lndtool now can return error codes from plugin invocations: the run()
  hook now returns ints to signal such error codes. I recommend updating
  plugin code accordingly. Documentation updated accordingly.

- Fixed some serious brain damage in the Checksum Fixer plugin. You can
  now actually call it via lndtool so it fixes traces you provide.

------------------------------------------------------------------------

Thu Nov 16 12:21:51 PST 2006             Christian <christian@whoop.org>

This is the 0.9 release.

------------------------------------------------------------------------

Wed Nov 15 19:23:24 PST 2006             Christian <christian@whoop.org>

- added constants for the size limits in the LND_Dumper API.
- Comments for the LND_Dumper API.

------------------------------------------------------------------------

Thu Jun  1 14:00:03 BST 2006             Christian <christian@whoop.org>

- Fix for the new libmagic code to make it build when libmagic isn't
  around. Thanks to Tim Furlong for sending this one.

------------------------------------------------------------------------

Wed May  3 19:53:38 BST 2006             Christian <christian@whoop.org>

- Added LND_Dumper, an abstraction for pcap dumpers. It can transparently
  handle dumping to multiple files in case one output file becomes too
  large, enforce maximum file sizes, maximum total sizes, append modes,
  etc. Untested for now, but I'm already wondering how I managed without
  it so far...

------------------------------------------------------------------------

Fri Apr 28 16:43:40 BST 2006             Christian <christian@whoop.org>

- libnd_packet_get_data() now returns the whole packet data when no
  particular protocol is asked for.

- Small convenience tweaks in the TCP plugin.

------------------------------------------------------------------------

Sat Mar 25 18:08:38 GMT 2006             Christian <christian@whoop.org>

- Fixed a bug in plugin initialization that could leave plugins un-
registered due to sequencing of the plugins during hook-up.

------------------------------------------------------------------------

Wed Mar 22 20:06:00 GMT 2006             Christian <christian@whoop.org>

- Incorporation of libmagic, if found, for easy checking of what might
be contained in a chunk of data.

------------------------------------------------------------------------

Wed Mar  1 19:58:54 GMT 2006             Christian <christian@whoop.org>

Beefed up autogen.sh to check for MacOS X's glibtoolize.


------------------------------------------------------------------------

Wed Feb 15 21:46:56 GMT 2006             Christian <christian@whoop.org>

- Permit 0x00000000 as a valid protocol magic number.
- Fixed some erroneous uses of guint64.

------------------------------------------------------------------------

Wed Feb 15 01:46:16 GMT 2006             Christian <christian@whoop.org>

- Removed my libnd_packet_dump() manual workaround from a few days ago.

------------------------------------------------------------------------

Mon Jan 30 15:00:54 GMT 2006             Christian <christian@whoop.org>

libnd_packet_dump() doesn't rely on pcap_dump() any more since that one
doesn't return error codes.

------------------------------------------------------------------------

Tue Jan 24 17:44:29 GMT 2006             Christian <christian@whoop.org>

- Packets duplicated via libnd_packet_duplicate() now do no longer
  belong to a trace part. This bears risks in case the cloned packets
  are kept around longer than the underlying trace structures.

------------------------------------------------------------------------

Tue Jan 24 13:14:47 GMT 2006             Christian <christian@whoop.org>

- Added libnd_udp_get_payload_length() to the UDP protocol plugin.

------------------------------------------------------------------------

Sun Jan 15 13:49:46 GMT 2006             Christian <christian@whoop.org>

This is release 0.8.

------------------------------------------------------------------------

Sat Jan 14 23:37:13 GMT 2006             Christian <christian@whoop.org>

Boring cosmetics for the upcoming 0.8 release.

------------------------------------------------------------------------

Wed Dec 28 21:39:56 GMT 2005             Christian <christian@whoop.org>

- Added libnd_trace_get_pcap_handle(), a quick and safe way to obtain
  the pcap handle that may be associated with a trace.


------------------------------------------------------------------------

Sat Dec  3 23:59:30 GMT 2005             Christian <christian@whoop.org>

Hooked lnd-headerwalk into test/Makefile.am.

------------------------------------------------------------------------

Sat Dec  3 23:44:49 GMT 2005             Christian <christian@whoop.org>

Added "lnd-headerwalk", a test application that for every packet in a
trace prints out the sequence of protocols libnetdude manages to parse
out of the packet, plus up to a configurable number of bytes of any raw
uninterpreted payload.


------------------------------------------------------------------------

Thu Aug 11 21:19:07 BST 2005             Christian <christian@whoop.org>

A few GCC 4 warning fixlets.

------------------------------------------------------------------------

Wed Jun 29 12:14:21 PDT 2005             Christian <christian@whoop.org>

- Added string lengths to several unprotected fscanfs. Bad Christian.
Thanks to Markus Waldeck for pointing out.
- Debugging output tweaks.

------------------------------------------------------------------------

Wed Jun 22 16:33:13 PDT 2005

Fixed trace initialization. This was still tightly coupled to obtaining
a packet's tcpdump output and caused the obvious way to use e.g.
libnd_trace_new() and libnd_trace_save_as() to break. Trace file
initialization is now independent of the tcpdump packet output code.
Thanks to Mark Menke for reporting this bug.

------------------------------------------------------------------------

Tue May 31 13:40:15 PDT 2005

Stronger NULL pointer checking for plugin callbacks.

------------------------------------------------------------------------

Wed May  4 18:17:59 BST 2005             Christian <christian@whoop.org>

This is the 0.7 release.

------------------------------------------------------------------------

Wed May  4 10:12:23 PDT 2005

- TODO list update, final preparations for the 0.7 release.

------------------------------------------------------------------------

Tue May  3 14:42:16 PDT 2005

- libnd_tcpdump_get_packet_line() is now passed the length of the string
into which to write the tcpdump output.
- added lnd-tcpdump.c to the test apps, showing the minimum amount of
code required to interface libnetdude with tcpdump.

------------------------------------------------------------------------

Sat Mar 26 15:40:50 GMT 2005             Christian <christian@whoop.org>

When not passing arguments to lndtool -r, simply dump the installed
plugins as if using -p.

------------------------------------------------------------------------

Fri Mar 18 16:43:24 GMT 2005             Christian <christian@whoop.org>

Don't rely on the platform's FDDI headers -- every OS seems to like them
in a different place and MacOS doesn't provide them at all. We now use
our own struct.

------------------------------------------------------------------------

Thu Mar 17 14:06:54 GMT 2005             Christian <christian@whoop.org>

- Moved configure.ac to configure.in
- Started to integrate MacOS patches from Jonathan Paisley

------------------------------------------------------------------------

Sat Mar 12 13:30:30 GMT 2005             Christian <christian@whoop.org>

- Abort autogen.sh once one of the auto tools fails
- Avoid empty default case in libnd_icmp.c due to gcc pickiness, pointed
out by Breen Mullins.

------------------------------------------------------------------------

Tue Oct 12 16:31:22 BST 2004             Christian <christian@whoop.org>

Fixlet for IP: consider the first of any fragments as normal and do
continue parsing up into higher layers. Comment says the right thing,
but the code didn't :)

------------------------------------------------------------------------

Fri Oct  8 10:52:04 BST 2004             Christian <christian@whoop.org>

Removed the unused second paramter from libnd_packet_fix().

------------------------------------------------------------------------

Thu Oct  7 14:09:11 BST 2004             Christian <christian@whoop.org>

Added TODO bits to the manual.

------------------------------------------------------------------------

Tue Sep  7 02:27:09 BST 2004             Christian <christian@whoop.org>

- Debugging now goes to stderr -- less chance of colliding with
programs communicating via stdin/stdout.

- The new libnd_packet_from_pcap() now works correctly.

- Fixed a warning.

- Updated TODO.

------------------------------------------------------------------------

Mon May 10 15:43:40 PDT 2004

- Write out preferences to disk after initializing to the default
values and then overriding with on-disk values. This way new
config values that get introduced are stored on disk automatically.
Previously, users had to start over with a new config file.

------------------------------------------------------------------------

Mon May 10 15:33:51 PDT 2004

- The packet recycler now enforces a configurable maximum number
of packets. The config setting used for that value is
"num_recycled_packets" in the LND_DOM_NETDUDE preferences domain.

- Fixed a potential memleak when calling libnd_tpm_read_packet().
That function simply memset() the packet to 0 which could lead
to memory leaks. The proper way to handle this is to call the
new libnd_packet_cleanup().

------------------------------------------------------------------------

Wed Apr 21 23:03:38 PDT 2004             Christian <christian@whoop.org>

Introducing support for 802.11. I got tired of not being able to look
into the payload of packets captured on wireless links. This is only
a libnetdude extension -- there's currently no Netdude GUI plugin for
802.11. This btw shows how the GUI app can handle missing GUI protocol
plugins just fine.

The analyzer is really simple and may be partially incorrect, because
I'm not an 802.11 guru: essentially I pass all data after the two-byte
sequence control field up to the SNAP analyzer, if the type field is
zero and the subtype is 0, 1, or 2. (Is 3 okay as well?). Otherwise we
do not demux further.

------------------------------------------------------------------------

Tue Apr 20 14:01:28 PDT 2004

Up to 0.7 for development ...

------------------------------------------------------------------------

Mon Apr 19 21:23:58 PDT 2004             Christian <christian@whoop.org>

Phantastic. I do a release and the next day I find out that there's a
bug in the packet iterator that prevents filtered packets from being
dropped in a read-write iteration. Grrr.

------------------------------------------------------------------------

Mon Apr 19 00:17:54 BST 2004             Christian <christian@whoop.org>

This is 0.6 :)

------------------------------------------------------------------------

Sun Apr 18 15:23:57 PDT 2004             Christian <christian@whoop.org>

Last commits before the new release
- Date fixes
- Documentation updates

------------------------------------------------------------------------

Fri Apr 16 22:00:14 PDT 2004

Exit lndtool after showing plugins.

------------------------------------------------------------------------

Thu Apr 15 11:59:16 PDT 2004

The dummy packets sent to tcpdump processes so far announced
a length of 100, but only a caplen of 1. Apparently this
discrepancy can trigger a clogging of the pipe for reasons
that I don't understand -- but in any case, changing the
len value to 1 seems to fix the problem. If only we had a
library version of tcpdump, then this whole pile of code could
go ...

------------------------------------------------------------------------

Sat Apr 10 20:03:16 BST 2004             Christian <christian@whoop.org>

- Upped version to 0.6
- Fixed the cvs update timestamp in libnd_timestamp.h and cvs.pl
- Small typos fixed

------------------------------------------------------------------------

Tue Apr  6 15:18:21 BST 2004             Christian <christian@whoop.org>

- Added libnd_udp_get_headers() to the UDP protocol plugin
- Added an iteration mechanism for all data items in a LND_Registry.

------------------------------------------------------------------------

Tue Mar  9 15:14:37 GMT 2004             Christian <christian@whoop.org>

Yet another fix to the plugin initialization code -- for the case when
lt_dlopenext() fails. Argh.

------------------------------------------------------------------------

Mon Feb  9 12:55:51 GMT 2004             Christian <christian@whoop.org>

Argh, I missed another potential bug in the plugin initialization, when
initialization fails for some plugins. Fixed.

------------------------------------------------------------------------

Thu Feb  5 04:24:08 GMT 2004             Christian <christian@whoop.org>

Do not automatically create a tcpdump connection for each opened trace,
but do so only when a packet's tcpdump output is actually requested.
Should allow a lot more traces to be opened simultaneously.

------------------------------------------------------------------------

Wed Feb  4 02:33:02 GMT 2004             Christian <christian@whoop.org>

This is 0.5. Yay.

------------------------------------------------------------------------

Wed Feb  4 01:11:28 GMT 2004             Christian <christian@whoop.org>

And use the package version number for the libnetdude plugins as well.

------------------------------------------------------------------------

Sun Feb  1 21:17:33 GMT 2004             Christian <christian@whoop.org>

Wow. Last-minute bugfix: plugin initialization could fail if the init()
hook required using libnd_plugin_find() and plugins were not properly
hooked up yet. Also added a (hidden) debugging option to lndtool.

------------------------------------------------------------------------

Wed Jan 28 16:10:59 GMT 2004             Christian <christian@whoop.org>

Final commits before releasing 0.5...

------------------------------------------------------------------------

Tue Jan 13 16:18:11 GMT 2004             Christian <christian@whoop.org>

- LND_ProtoInfo structures also are converted to the new LND_Registry
now.

------------------------------------------------------------------------

Mon Jan 12 19:07:52 GMT 2004             Christian <christian@whoop.org>

- Separated the concept of a registry to associate arbitrary data with
libnetdude structures into a separate type: LND_Registry.
- Replaced the existing registry of LND_Traces with the new one
- Replaced the fixed user_data pointer in LND_Protocols with the new one.


------------------------------------------------------------------------

Tue Dec 16 15:34:25 GMT 2003             Christian <christian@whoop.org>

Two changes to the TCP plugin:

libnd_tcp_get_headers() returns IP and TCP headers in a packet, and
libnd_tcp_get_payload_length() returns the length of a packet's TCP
payload (excluding the header, thus useful for seq/ack calculations),
in bytes.

------------------------------------------------------------------------

Sun Dec 14 17:05:04 GMT 2003             Christian <christian@whoop.org>

RPM spec file upgraded.

------------------------------------------------------------------------

Sun Dec 14 16:57:36 GMT 2003             Christian <christian@whoop.org>

- The feature plugin's run() hook now returns wether the execution was
successful or not.

- libnetdude-config is replaced with lndtool. lndtool is a binary, not a
shell script, that provides mainly two features on top of
libnetdude-config: listing installed plugins that register successfully.
Also, lndtool allows direct execution of feature plugins from the
command line. This works for plugins designed to take command line
arguments, and significantly simplifies the linking process.

- Documentation updates illustrate this feature in detail.

- libnd_plugin_find() now operates case-insensitively.

- Two passes are made over installed plugins upon registration, to
enable plugins that rely on other plugins to initialize successfully.

------------------------------------------------------------------------

Wed Dec 10 13:52:24 GMT 2003             Christian <christian@whoop.org>

RPM spec file updates -- FTP URL to avoid SourceForge's habit of
adding something to the filename, dependencies, etc.

------------------------------------------------------------------------

Wed Dec 10 11:17:06 GMT 2003             Christian <christian@whoop.org>

- Added a spec file for building RPMs :)
- Up to devel version 0.5

------------------------------------------------------------------------

Tue Dec  9 16:23:14 GMT 2003             Christian <christian@whoop.org>

This is 0.4 :)

------------------------------------------------------------------------

Tue Dec  9 16:21:12 GMT 2003             Christian <christian@whoop.org>

More documentation updates for the upcoming 0.4 release.

------------------------------------------------------------------------

Tue Dec  9 15:40:29 GMT 2003             Christian <christian@whoop.org>

Documentation updates and fixlets.

------------------------------------------------------------------------

Tue Dec  2 20:10:37 GMT 2003             Christian <christian@whoop.org>

Overhaul of the plugin code. The directory scanning is now more
robust and cleaner code. Still too much redundancy, but that will
get fixed another time.


------------------------------------------------------------------------

Tue Nov 18 18:29:57 GMT 2003             Christian <christian@whoop.org>

- valgrind pointed out that I was accessing free'd memory when jumping
to other trace areas. That's fixed now and I hope it didn't crash all
the time on other platforms :)

- Added a LND_TRACE_RELOAD event to trace observers, since there is
a difference between jumping to other spots in a trace and loading
packets. Updated documentation accordingly.

------------------------------------------------------------------------

Mon Nov 17 14:11:44 GMT 2003             Christian <christian@whoop.org>

Doh -- fsync() doesn't make much sense on a socketpair() socket.

------------------------------------------------------------------------

Mon Nov 17 13:09:36 GMT 2003             Christian <christian@whoop.org>

- API renaming: libnd_packet_set_filtered() is more obvious given the
boolean in the parameters.
- Changed my email in the license.

------------------------------------------------------------------------

Tue Nov 11 12:06:47 GMT 2003             Christian <christian@whoop.org>

0.3 released.

------------------------------------------------------------------------

Tue Nov 11 11:35:01 GMT 2003             Christian <christian@whoop.org>

- Fixed a glib warning when NULL is passed to libnd_misc_get_tmpfile().
- lnd-dump now also prints the packet timestamps as plain numbers.


------------------------------------------------------------------------

Mon Nov 10 19:34:54 GMT 2003             Christian <christian@whoop.org>

Promply broke libnd_trace_save() in my last commit as it removed the
temporary file we need there ...

------------------------------------------------------------------------

Mon Nov 10 18:37:02 GMT 2003             Christian <christian@whoop.org>

Lots of fixes for empty traces:

- Prevent infinite loops in packet iterations when a trace part is empty.
The identical start- and end offsets caused infinite loops before.

- Fixed the testsuite and made tests more robust -- do not rely on
tcpdump output.

- Added a simple program to the testsuite that shows tcpdump output
along with packet offsets. 

- Fixed a bug in libnd_tp_free(): the current trace part was not released
properly, leaving behind a dangling temp file.

- Documentation updates.

------------------------------------------------------------------------

Fri Nov  7 17:36:26 GMT 2003             Christian <christian@whoop.org>

- New trace part observer API, similar to the trace and packet observers.
- Changed libnd_tp_insert_packet() to libnd_tp_insert_packets(), so it
can now handle a chain of packets.
- Lots of fixlets for new empty traces. There is still a bug in the file
saving code for newly created traces though.

------------------------------------------------------------------------

Wed Nov  5 16:18:42 GMT 2003             Christian <christian@whoop.org>

- Fixed a nasty bug in file saving that got triggered when saving
a file with a locally modified in-mem trace part. This problem
could have occurred whenever a packet iterator for a trace area
is initialized and the current trace part got modified in-memory.

- Better input checking in TPM routines.

- Added libnd_tpm_clear_current_part(), since it is also useful
from outside libnd_tpm.c.

- Added a few sections to the manual.

- Updated README+TODO file.



------------------------------------------------------------------------

Mon Oct 20 12:18:06 BST 2003             Christian <christian@whoop.org>

- The packet observer callbacks for packet insertion and deletion
do not report the packet indices any longer. If the callback needs
these indices, it can easily obtain them, otherwise they are wasted
time.

- Replaced the packet insertion and deletion callbacks with a pair
of callbacks each, one called before and one after the operation
is performed.

- Moved the jump observer notifier to the correct location,
libnd_tpm_goto_loc(). This fixes inconsistent behaviour after a
packet iterator finishes.

- Fixed the progress reporter to correctly report the size of a
trace area in trace area iteration modes, not the entire trace size.

- Only fire a packet visibility change event when the visibility
actually changed, not every time it is set.

- Fixed libnd_trace_save(). It now correctly saves to the original
file by first saving to a temp file on the same device, then renaming
the output file and then creating a new TPM for that new file.

- Do not automatically mark a packet as dirty after a xxx_RW iteration,
but only when the operations performed on the packet actually modified
anything.

- Updated Checksum-Fix plugin to mark trace as dirty if any packets
were corrected.


------------------------------------------------------------------------

Fri Oct 17 16:37:22 BST 2003             Christian <christian@whoop.org>

extern "C" for all symbols to allow usage from C++.

------------------------------------------------------------------------

Wed Oct 15 18:46:48 BST 2003             Christian <christian@whoop.org>

0.2 released.

------------------------------------------------------------------------

Wed Oct 15 18:23:18 BST 2003             Christian <christian@whoop.org>

Introducing packet iterator observers. Applications can now register
observers to be notified when a packet iterator is initialized, proceeds
to the next packet, etc.

------------------------------------------------------------------------

Wed Oct 15 12:12:59 BST 2003             Christian <christian@whoop.org>

- Fixed a bug in the file saving code that caused the current trace
part to be missed.
- Properly jump back to previous global offset after a trace is synced
to disk.


------------------------------------------------------------------------

Fri Sep 19 23:16:04 BST 2003             Christian <christian@whoop.org>

0.1 released :)

------------------------------------------------------------------------

Fri Sep 19 17:13:18 BST 2003             Christian <christian@whoop.org>

Final commits before the release ...

------------------------------------------------------------------------

Thu Sep 18 15:23:44 BST 2003             Christian <christian@whoop.org>

I had a busy morning and documented most of the remaining API, renamed
a few calls in the TPM to a more consistent libnd_tpm_map_foo_to_bar
scheme, and threw out libnd_gettext.h. This library should really be
free of that stuff.

------------------------------------------------------------------------

Wed Sep 17 19:59:58 BST 2003             Christian <christian@whoop.org>

Ooooh I think the manual is finished ... for now.

------------------------------------------------------------------------

Wed Sep 17 18:45:40 BST 2003             Christian <christian@whoop.org>

Lots more doco, getting there now!

------------------------------------------------------------------------

Wed Sep 17 14:49:55 BST 2003             Christian <christian@whoop.org>

Added libnd_plugin_foreach(), to allow people to iterate over the
registered plugins. Added a test program that uses this to print out
information about all the installed plugins.

------------------------------------------------------------------------

Wed Sep 17 12:32:57 BST 2003             Christian <christian@whoop.org>

Doco updates, also fixed the version numbering in the file installation.
It only used the very first digit, so installation happened into sub-
directories named "0" right now.

------------------------------------------------------------------------

Tue Sep 16 20:34:02 BST 2003             Christian <christian@whoop.org>

Documentation updates ...

------------------------------------------------------------------------

Tue Sep 16 19:35:03 BST 2003             Christian <christian@whoop.org>

Heaps of documentation ... and oooh it is looking goooooood :)

------------------------------------------------------------------------

Tue Sep 16 12:02:11 BST 2003             Christian <christian@whoop.org>

Silencing CVS a bit ...

------------------------------------------------------------------------

Tue Sep 16 11:57:44 BST 2003             Christian <christian@whoop.org>

Documentation! Fixed some comments, started the manual ... needs more
work still ...

------------------------------------------------------------------------

Sun Sep 14 18:46:10 BST 2003             Christian <christian@whoop.org>

pcapnav now has an initialization routine, so call it when libnetdude
bootstraps.

------------------------------------------------------------------------

Fri Sep 12 18:48:59 BST 2003             Christian <christian@whoop.org>

Better error checking when pcapnav fails.

------------------------------------------------------------------------

Fri Sep 12 17:57:02 BST 2003             Christian <christian@whoop.org>

Oh boy. The test trace was still not in CVS.

------------------------------------------------------------------------

Fri Sep 12 17:47:58 BST 2003             Christian <christian@whoop.org>

Renamed LND_PacketIteratorArea to LND_TraceArea. Shorter, and more
precise anyway.

------------------------------------------------------------------------

Mon Sep  8 22:25:16 BST 2003             Christian <christian@whoop.org>

Automatically filter packets after jumping to other parts -- that's
what the user expects.

------------------------------------------------------------------------

Mon Sep  8 21:20:36 BST 2003             Christian <christian@whoop.org>

Introducing a functionality/GUI separation for plugins. Functionality
plugins so far resided in the GUI code, but could obviously also be
useful for non-GUI code. Added filter registry observers so that the GUI
can be nicely notified when changes occurr. Some naming cleanups.

Added a checksum correction plugin and a BPF filter plugin.


------------------------------------------------------------------------

Mon Sep  8 15:48:14 BST 2003             Christian <christian@whoop.org>

Hooked raw protocol data plugin into the packet initialisation again.

------------------------------------------------------------------------

Sun Sep  7 16:42:15 BST 2003             Christian <christian@whoop.org>

Lots of fixes, also the new testsuite was not in CVS yet.

------------------------------------------------------------------------

Thu Sep  4 16:22:41 BST 2003             Christian <christian@whoop.org>

This is a huge commit. I essentially rewrote the trace management in
the library because the GUI-based philosophy was too present in many
parts of the trace management (e.g., thinking of a trace part of a
number of packets loaded into memory as the basic unit of working with
a trace).

This is all gone now, and the trace part management is *heaps* nicer.
It also simplified large parts of the code, which is clearly a good
sign.

There are still some fixmes, but we should be getting there now.

------------------------------------------------------------------------

Fri Jun 27 19:56:37 BST 2003             Christian <christian@whoop.org>

More work on the support of iterating arbitrary trace areas.

------------------------------------------------------------------------

Thu Jun 26 15:53:33 BST 2003             Christian <christian@whoop.org>

libnetdude needs one last feature before the release: the ability to
iterate to and from arbitrary parts in the trace. libpcapnav obviously
provides this (you just keep calling pcapnav_next() or the other calls
for this purpose) but libnetdude is currently masking this by enforcing
iteration over the selection, the current trace part or the entire
trace. Here's the beginning of LND_PACKET_IT_AREA_R and
LND_PACKET_AREA_RW.

------------------------------------------------------------------------

Wed Jun 18 16:33:34 BST 2003             Christian <christian@whoop.org>

Getting closer to the release! Woohoo ...

------------------------------------------------------------------------

Wed Jun 18 17:08:10 BST 2003             Christian <christian@whoop.org>

Packet observers can now be blocked from reporting certain events. This
is currently used only in packet captures, where Netdude blocks repor-
ting of packet insertions/deletions to improve performance.

------------------------------------------------------------------------

Tue Jun 17 18:18:15 BST 2003             Christian <christian@whoop.org>

FreeBSD build fixes. I'm going back to things like __FreeBSD__ to check
for OS-specific features since libnetdude is a library, therefore I do
not want to impose my #ifdef terms (like "BSD_HOST" or something auto-
confish) on other projects.

------------------------------------------------------------------------

Mon Jun 16 19:04:53 BST 2003             Christian <christian@whoop.org>

BSD build fixes -- now builds on OpenBSD :)

------------------------------------------------------------------------

Wed Jun 11 15:13:41 BST 2003             Christian <christian@whoop.org>

The "any" device on Linux works again; also took out some debugging
messages.

------------------------------------------------------------------------

Wed Jun  4 02:08:07 BST 2003             Christian <christian@whoop.org>

Filtering completely works across different trace parts with the imple-
mentation moved into the packet iterators. YEHAW.

Also some minor changes to the packet observer code to make things a
bit more efficient. Oh, and a much nicer README.

------------------------------------------------------------------------

Mon Jun  2 18:10:48 BST 2003             Christian <christian@whoop.org>

And more work on the filtering, moving it down to the packet iterators..
Not quite there yet.


------------------------------------------------------------------------

Mon May 19 06:16:26 BST 2003             Christian <christian@whoop.org>

- The filter stuff needs to be better integrated with packet iteration,
this is the beginning of this -- note the FIXMEs.

- Netdude can now show the protocol type of raw content, added helper
functions for that.

- Support functions for getting timestamps into ASCII format.

- Some comment fixes.

------------------------------------------------------------------------

Fri May 16 18:32:11 BST 2003             Christian <christian@whoop.org>

Move back to stdout for debugging output to avoid a varargs macro call.

------------------------------------------------------------------------

Fri May 16 15:51:09 BST 2003             Christian <christian@whoop.org>

Cleanups, again for the bpf_timeval vs. timeval conflict ...


------------------------------------------------------------------------

Fri May 16 12:55:46 BST 2003             Christian <christian@whoop.org>

Added libnd_misc_ctime() that works like ctime_r(), except that it also
includes the microseconds in the string produced.


------------------------------------------------------------------------

Fri May 16 11:13:01 BST 2003             Christian <christian@whoop.org>

Three new API calls:

double           libnd_tpm_get_size_offset(LND_TPM *tpm);
double           libnd_tpm_get_time_offset(LND_TPM *tpm);
double           libnd_tpm_get_size_fraction(LND_TPM *tpm);

Basically wrappers to pcapnav functions.



------------------------------------------------------------------------

Thu May 15 12:25:40 BST 2003             Christian <christian@whoop.org>

- Fixed a bug in the packet selection code that caused the list
structure to get corrupted when a selected packet gets selected again.

- More work on filter stuff, traces can now be asked if they use a
certain filter.

- Moved filter factories from Netdude down to the library layer.


------------------------------------------------------------------------

Tue May 13 19:39:40 BST 2003             Christian <christian@whoop.org>

Work on the filter API. The BDF filter plugin is almost there now in
Netdude, but showed some deficiencies in the API.


------------------------------------------------------------------------

Tue May 13 12:09:48 BST 2003             Christian <christian@whoop.org>

Added .cvsignores to clean things up a little bit ...


------------------------------------------------------------------------

Mon Mar 31 19:58:28 BST 2003             Christian <christian@whoop.org>

Oops. This is the library -- updated ChangeLog headline.

------------------------------------------------------------------------

Mon Mar 31 19:50:32 BST 2003             Christian <christian@whoop.org>

- Added cvs.pl ChangeLog management script.

------------------------------------------------------------------------

Mon Mar 31 19:26:41 BST 2003             Christian <christian@whoop.org>

- The ChangeLog for libnetdude is maintained as nicely as pcapnav's and
netdude's.
- Added a publish/subscribe interface for changes to packets and traces.
Applications using libnetdude can subscribe to announcements about
updates through callbacks, which get called when these changes occur.
- Miscellaneous cleanups.


------------------------------------------------------------------------