📄 changelog
字号:
===============================================================================
$Id: CHANGELOG,v 1.6 2003/10/17 15:14:52 kkuehl Exp $
LIBNET 1.1 (c) 1998 - 2003 Mike D. Schiffman <mike@infonexus.com>
http://www.packetfactory.net/libnet
===============================================================================
1.1.1
Added a GRE builder.
Fixed a buffer overflow in libnet_build_dhcp().
Added more sanity checks to ensure we have proper link or network layer
headers when not in advanced mode.
Fixed a bug that would sometimes make __libnet_dump_context() crash under
linux.
Migration from sprintf and strcpy snprintf and strncpy.
Fixed bug in libnet_build_ipv4() when calculating size of memory block
Removed the support directory -- if you're an OLD version of OpenBSD or
FreeBSD you deserve what you get.
Added a BGP builder.
Changed the error handing functions to be more consistent and use
__FUNCTION__.
Fixed a bug in libnet_pblock_free() -- replaced it with
libnet_pblock_delete().
Fixed all of the inconsistencies inside all of the builders and pblock code
where some fringe conditions could result in u_longs being crunched into
u_shorts.
Fixed libnet_pblock_coalesce() to only require one pass through the list.
Added better diagnostics (__libnet_dump_context(), __libnet_dump_pblock()).
Added Token Ring and FDDI builders (Linux and Solaris only).
Added Token Ring and FDDI sample programs.
Fixed the handling of TCP and IP payloads when reusing a pblocks.
Fixed the handling of IP headers such that if a TCP packet changes size
via subsequent calls to libnet_build_tcp(), the IP header automatically
changes size as well.
Added libnet_pblock_delete() to remove a pblock from the list.
Added ip.c sample program (builds an arbitrary IP packet).
Added additional payload sanity checks to libnet_build_*.
Added a payload to sample/icmp_echo_cq.c.
Added an MPLS builder.
Added an 802.1x builder.
Added an RPC builder! Bout time eh?
Fixed do1x.c sample code to make the frame valid.
Fixed link-interface semantics under Mac/OSX
Changed libnet_stats to all be unsigned long longs to accomodate all of
hardcore packet writers.
Fixed IPv6 support (to some extent) removed the IP_HDRINCL stuff and
reworked the resolver stuff to use net_pton() and inet_ntop().
Fixed libnet_build_icmpv4_*() to properly handle the IP header in the
payload.
Fixed libnet_build_igmp() to handle checksums properly.
Fixed a bug in libnet_build_dnsv4() -- now it will work for TCP or UDP --
see the sample program for details...
Fixed a bug in sample/dhcp_discover.c
Added multiple packet interface (called the context queue interface).
Until I finish the manpage, see the sample code and README files
for instructions on how it works.
Fixed Cygwin support.
Fixed an OS/X compilation error due to lack of system header files.
Fixed OS/X link layer bug.
Fixed a bug in pblock_coalesce() that resulted in bad checksums when the
advanced mode was enabled.
Fixed a potential memory leak in pblock_coalesce().
Fixed a potential memory leak in libnet_select_device().
Fixed a potential memory leak in libnet_plist_chain_new().
Fixed Solaris support for IPv6 address support.
Fixed minor bugs in libnet_advanced.c.
Added loopback device support.
Mon Aug 5 15:18:52 PDT 2002 1.1.0
First 1.1.0 non-beta release.
Added libnet_adv_write_link() which allows an advanced user to access
libnet's low-level frame injection functionality directly.
Wed Jul 10 08:18:15 PDT 2002 1.1.0 Beta 07b
Added some words to the manpage.
Fixed a typo in libnet-functions.h -- forgot a comma.
Sun Jul 7 10:37:12 PDT 2002 1.1.0 Beta 07a
My bad. Forgot to `make distclean` before last release resulting in some
compilation errors.
My bad. Forgot to add advanced *_ADV writing support to libnet_write().
Simple fix.
Tue Jul 2 08:42:57 PDT 2002 1.1.0 Beta 07
BETA support for IPv6.
Fixed the IP and TCP options bugs that bound the TCP and IP payloads to
the IP and TCP headers respectively and saw options being appended
after the payload.
Added libnet_hex_aton(). This functions reads in arbirtrarily long hex
strings from the command line and returns the equivalent byte string. It
does an implicit malloc() so make sure to free().
Fr閐閞ic Raynal submitted a patch to break the coalesce loop down to two
passes using realloc resulting in a modest performance increase! Cool!
Added "Advanced Mode" which will initialize the library with additional
functionality for advanced users who "know what they're doing". Basically
this feature will remove some of the sanity checks libnet does when
building and injecting packets, at the programmer's peril. It also exposes
the libnet_adv() functions.
FINALLY changed that irritating struct ether_addr redefintion problem.
I internalized the name space of it (-> libnet_ether_addr) so there will
be no more issues there. Please update your code accordingly!
Added IGMP checksum support which was omitted by accident.
Removed netinet/ip_icmp.h from include list. This was causing problems
when including dnet.h which includes other system headers. We can
probably stand to remove several headers from libnet.h.in.
Added sanity check to ensure that when *build_ethernet() is called the
injection method is LIBNET_LINK (except when advanced mode is on).
Thu Mar 28 22:18:46 PST 2002 1.1.0 Beta 06
Fixed ICMP unreachable checksum error and payload issues. Now using the
payload interface with unreachables will append the payload to the IPv4
header of the "offending packet".
Split STP builder into two; libnet_build_stp_conf() and
libnet_build_stp_tcn().
New CHANGELOG format. :)
Mar 24 2002 1.1.0 Beta 05
New building logic. Top down. Much smarter, we now build packets and
frames like an OS kernel.
Added Cisco ISL builder.
Mar 18 2002 1.1.0 Beta 04
Added an STP builder.
Hooks for Cisco ISL builder.
Changed libnet_init() to now accept an IP address for the device (so
either "fxp0" or "192.168.0.1" will work).
Added libnet_clear_packet() to free packet memory when we're done with it.
Feb 28 2002 1.1.0 Beta 03
Added 802.1q, 802.2, 802.3 builders.
Feb 25 2002 1.1.0 Beta 02
Fixed Cygwin support.
Feb 01 2002 1.1.0 Beta 01
Complete new API and overhaul of most everything.
Improved linux packet socket support.
Renamed libnet_host_lookup() and libnet_name_resolved() to the more
intuitive libnet_addr2name() and libnet_name2adrr().
All of the address resolution functions return host byte order (which
is what the build functions want).
Removed a ton of code from every corner of libnet.
Removed alot of useless crap:
misc directory
ports directory
util directory
cleaned out the test directory and moved it to sample
The libnet-config script is no longer needed to specify machine
endianess -- that has been moved to libnet.h and done at compile time.
You can still use it to specify other CPP constants as well as
libraries.
Added cygwin support.
Hooks for a few ieee 802 builders.
Added NTP builder.
Added DHCP builder.
Added BOOTP builder.
Added Cisco CDP builder (needs work).
Added IPSEC builder (needs work).
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1.0.2a 02.06.2001 Oops! Messed up the install stuff. Fixed now.
Fixed the config.sub to correctly look for arm*
architecture.
Fixed the test.sh script
(Thankz again to syke).
1.0.2 02.03.2001 Added OpenBSD 2.7 etherspoof lkm and kernel patch.
(Thankz to obecian).
Added FreeBSD 4.0-STABLE (and 5.0-CURRENT?)
etherspoof kernel patch.
(Thankz to Matt Bing).
Added FreeBSD 4 support for automagic MAC address
spoofing (via ioctl). No more lkm!
(Thankz to Toni Andjelkovic).
Added VRRP support.
Fixed a NULL pointer check in libnet_checksum.c.
(Thankz to syke).
Fixed a function naming problem in libnet_if_addr.c.
(Thankz to gigisull).
Fixed a potential byte error in libnet_version.
(Thankz to wotan).
Fixed a potential overflow in
libnet_link_sockpacket.c and libnet_link_dlpi.c.
(Thankz to Jarno Huuskonen).
Fixed a manpage discrepancy (get_ip_addr returns
host-byte, not network-byte).
Fixed arena allocation code (misalignments and
whatnot) and arena manpage entry (2 arguments
were swapped).
(Thankz to Bryan T. Schmersal).
Fixed datatype discrepancies (u_char was used
liberally when char should have been used).
(Thankz to Kyle Hargraves).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -