| 1 | ## |
|---|
| 2 | ## This file is part of libtrace |
|---|
| 3 | ## |
|---|
| 4 | ## Copyright (c) 2004 The University of Waikato, Hamilton, New Zealand. |
|---|
| 5 | ## Authors: Daniel Lawson, WAND Group |
|---|
| 6 | ## Perry Lorier, WAND Group |
|---|
| 7 | ## |
|---|
| 8 | ## All rights reserved. |
|---|
| 9 | ## |
|---|
| 10 | ## This code has been developed by the University of Waikato WAND |
|---|
| 11 | ## research group. For further information please see http://www.wand.net.nz/ |
|---|
| 12 | ## |
|---|
| 13 | ## libtrace is free software; you can redistribute it and/or modify |
|---|
| 14 | ## it under the terms of the GNU General Public License as published by |
|---|
| 15 | ## the Free Software Foundation; either version 2 of the License, or |
|---|
| 16 | ## (at your option) any later version. |
|---|
| 17 | ## |
|---|
| 18 | ## libtrace is distributed in the hope that it will be useful, |
|---|
| 19 | ## but WITHOUT ANY WARRANTY; without even the implied warranty of |
|---|
| 20 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|---|
| 21 | ## GNU General Public License for more details. |
|---|
| 22 | ## |
|---|
| 23 | ## You should have received a copy of the GNU General Public License |
|---|
| 24 | ## along with libtrace; if not, write to the Free Software |
|---|
| 25 | ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|---|
| 26 | ## |
|---|
| 27 | ## $Id$ |
|---|
| 28 | ## |
|---|
| 29 | ## |
|---|
| 30 | |
|---|
| 31 | - Version 2.0.25 |
|---|
| 32 | * updated rtclient_read_packet to be compatible with new rt protocol |
|---|
| 33 | * rtclient input now correctly ignores packets with type = RT_MSG |
|---|
| 34 | * erf_write_packet now deals with rxerrors appropriately |
|---|
| 35 | * building without zlib support should now work properly; |
|---|
| 36 | * stdin support works again |
|---|
| 37 | * build fixes for openbsd |
|---|
| 38 | * local lt_inttypes.h generated for PRIu64 macros etc |
|---|
| 39 | * setting __attribute__((packed)) on all structs |
|---|
| 40 | * build fixes for tracereport and testing for libgdc |
|---|
| 41 | * added tools/tracestats |
|---|
| 42 | |
|---|
| 43 | |
|---|
| 44 | - Version 2.0.24 |
|---|
| 45 | * minor bugs in format_erf |
|---|
| 46 | * applied autoconf to tools/ dir - these are now built and installed |
|---|
| 47 | automatically |
|---|
| 48 | * added --disable-libpacketdump and --disable-tools configure options |
|---|
| 49 | * improved checking for libpcap |
|---|
| 50 | * improved checking for g++ (needed for libpacketdump) |
|---|
| 51 | |
|---|
| 52 | - Version 2.0.23 |
|---|
| 53 | * configure fixes for dag |
|---|
| 54 | * set attributes on functions to improve compiler caching |
|---|
| 55 | * include tools/ dir in distributed tar.gz |
|---|
| 56 | * added get_framing_length format function, to return the length |
|---|
| 57 | of any framing headers added by the capture process (eg, pcap or |
|---|
| 58 | ERF headers) |
|---|
| 59 | * added libpacketdump, a library for dumping out packet information |
|---|
| 60 | * updated tracedump to use libpacketdump, and copied it to the tools/ |
|---|
| 61 | directory |
|---|
| 62 | |
|---|
| 63 | - Version 2.0.22 |
|---|
| 64 | * Documentation updates |
|---|
| 65 | * Added pcap_dump_flush() replacement function |
|---|
| 66 | * Better doxygen detection |
|---|
| 67 | * Support for legacy DAG POS, ATM and Ethernet formats |
|---|
| 68 | |
|---|
| 69 | - Version 2.0.21 |
|---|
| 70 | * fixed error in output erf code, where we were missing 2 bytes |
|---|
| 71 | * will skip vlan headers |
|---|
| 72 | * added trace_decode_uri() function |
|---|
| 73 | |
|---|
| 74 | - Version 2.0.20 |
|---|
| 75 | * byte-ordering fixups for WAG |
|---|
| 76 | * writer functions for pcap and wag |
|---|
| 77 | * fix of writer functions for erf |
|---|
| 78 | * format conversion into pcap and erf formats |
|---|
| 79 | * format conversion only applies if input not already in the right |
|---|
| 80 | format |
|---|
| 81 | * move internal fifo* symbols to tracefifo* to prevent collision |
|---|
| 82 | with libfifo |
|---|
| 83 | |
|---|
| 84 | - Version 2.0.19 |
|---|
| 85 | * Move code for different input formats (erf, pcap, wag) into |
|---|
| 86 | separate modules, load and initialise on library load. |
|---|
| 87 | * Add support for primitive trace writing |
|---|
| 88 | See trace_output_create(), trace_output_destroy(), and |
|---|
| 89 | trace_write_packet() |
|---|
| 90 | * Added trace_perror() and libtrace errno functionality. |
|---|
| 91 | |
|---|
| 92 | - Version 2.0.18 |
|---|
| 93 | * When opening a trace file, call open() with O_LARGEFILE set and |
|---|
| 94 | pass the fd into gzdopen/fdopen. |
|---|
| 95 | * Distributions should include man pages and other doxygen generated |
|---|
| 96 | output |
|---|
| 97 | * make install will install man pages into $PREFIX/man/man3 |
|---|
| 98 | * fixed some compilation bugs in most of the examples |
|---|
| 99 | |
|---|
| 100 | - Version 2.0.17 |
|---|
| 101 | * Fixed a bug in trace_get_erf_timestamp for the pcap path. |
|---|
| 102 | Timestamps were not being fabricated correctly. This also |
|---|
| 103 | effected trace_get_seconds, as that calls trace_get_erf_timestamp |
|---|
| 104 | internally. |
|---|
| 105 | * If bpf_setfilter() fails, output the filterstring it failed on |
|---|
| 106 | * Fixed compilation bug under older distributions (woody), where |
|---|
| 107 | the LTLIBOBJS auto* macro wasn't being expanded correctly |
|---|
| 108 | |
|---|
| 109 | - Version 2.0.16 |
|---|
| 110 | * Ported to OpenBSD - mad props to meanphil |
|---|
| 111 | * Fixed a bug in the event api where it would die instantly |
|---|
| 112 | for offline traces. |
|---|
| 113 | * Added trace_get_{source,destination}_port |
|---|
| 114 | * Added some constification fixes |
|---|
| 115 | |
|---|
| 116 | - Version 2.0.15b |
|---|
| 117 | * Fix a memory leak |
|---|
| 118 | * Correct calls to trace_get_link to catch a NULL returned |
|---|
| 119 | when an RX error is detected, handle this, and pas it up |
|---|
| 120 | the chain where appropriate |
|---|
| 121 | * Use a pcap callback handler when trace_read_packet() reads from |
|---|
| 122 | a live pcap source. This gives us better diagnostics, such as |
|---|
| 123 | being able to tell if an error occured. Also fixed a bug under |
|---|
| 124 | FreeBSD where pcap would block until a buffer was full, then |
|---|
| 125 | would let pcap_next iterate over all of them. |
|---|
| 126 | |
|---|
| 127 | - Version 2.0.14 |
|---|
| 128 | * Added support for pcap decoding of PPP interfaces (DLT_LINUX_SLL) |
|---|
| 129 | This DLT provides a direction bit, which we make use of in |
|---|
| 130 | trace_get_direction(). Check the docs for the specifics |
|---|
| 131 | * Fixed a bug where ERF traces weren't being checked for rxerrors. |
|---|
| 132 | If the ERF record indicates an rxerror, then get_link() returns |
|---|
| 133 | NULL. |
|---|
| 134 | * Removed an extra , which was preventing compilation under gcc 3.4 |
|---|
| 135 | in FreeBSD |
|---|
| 136 | |
|---|
| 137 | - Version 2.0.13 |
|---|
| 138 | * Improved source docs / doxygen |
|---|
| 139 | * Added functions to retrieve TCP, UDP and ICMP headers encapsulated |
|---|
| 140 | within the IP sublayer |
|---|
| 141 | * get_tcp_from_ip() |
|---|
| 142 | * get_udp_from_ip() |
|---|
| 143 | * get_icmp_from_ip() |
|---|
| 144 | * Added trace_get_next_option to parse TCP/IP options within a |
|---|
| 145 | libtrace_packet object |
|---|
| 146 | |
|---|
| 147 | |
|---|
| 148 | - Version 2.0.12 |
|---|
| 149 | * check for IP Fragmentation - if so, don't return TCP header on a |
|---|
| 150 | fragmented packet |
|---|
| 151 | |
|---|
| 152 | - Version 2.0.11 |
|---|
| 153 | |
|---|
| 154 | * Added in a fallback function for strndup under freebsd. |
|---|
| 155 | Thanks to mjl for this code. |
|---|
| 156 | |
|---|
| 157 | - Version 2.0.10 |
|---|
| 158 | * Removed some badly licensed code. |
|---|
| 159 | |
|---|
| 160 | - Version 2.0.9 |
|---|
| 161 | * Added improved conditional codepaths for |
|---|
| 162 | * PCAP |
|---|
| 163 | * ZLIB |
|---|
| 164 | * BPF |
|---|
| 165 | * DAG |
|---|
| 166 | - These sections of code are only compiled in if there is |
|---|
| 167 | appropriate support for them in the OS / asked by configure. |
|---|
| 168 | In the event of no zlib support, we use a fread interface for |
|---|
| 169 | uncompressed trace files instead. |
|---|
| 170 | |
|---|
| 171 | - Version 2.0.8 |
|---|
| 172 | * Added better configure time checking for pcap-bpf.h (ie, actually fail early if it can't find it or an equivalent) |
|---|
| 173 | * Added trace_set_direction , to set the direction bit in an ERF based trace. |
|---|
| 174 | * Added trace_truncate_packet, to truncate the packet at a specified length |
|---|
| 175 | |
|---|
| 176 | |
|---|
| 177 | - Version 2.0.7 |
|---|
| 178 | * Assorted bugfixes. |
|---|
| 179 | |
|---|
| 180 | - Version 2.0.3 |
|---|
| 181 | * Fixed packet->size bug for pcap |
|---|
| 182 | |
|---|
| 183 | - Version 2.0.2 |
|---|
| 184 | * Port to AMD64. Should also work on IA64 |
|---|
| 185 | * Will compile cleanly under gcc-2.95 (Debian Woody) |
|---|
| 186 | * Compiles cleanly under FBSD 4.5 and 5.2. |
|---|
| 187 | |
|---|
| 188 | - Version 2.0.1 |
|---|
| 189 | * Port to FreeBSD. Thanks to Phil Murray for testing this |
|---|
| 190 | |
|---|
| 191 | - Version 2.0.0 |
|---|
| 192 | * Major API change for cleanup purposes. |
|---|
| 193 | * libtrace_packet_t object used to hold reference to the |
|---|
| 194 | trace object, the buffer, and assorted variables |
|---|
| 195 | * First autoconf release |
|---|
| 196 | |
|---|
| 197 | - Version 1.1.0 |
|---|
| 198 | * Tagged as REL_1_1_0 |
|---|
| 199 | * First final release tag |
|---|
| 200 | |
|---|
| 201 | |
|---|
| 202 | |
|---|
| 203 | |
|---|