2009-09-29  enrico@enricozini.org

	* output.cc: reissue va_start before calling vsyslog

2009-09-28  enrico@enricozini.org

	* netwatcher.cc: 1000ms timeout to pcap, seems to be needed on amd64.
	  Thanks Dietz Pröpper and Vincent Lefevre
	* scanbag.h, scanbag.cc: fixed small compiler warnings
	* guessnet-ifupdown.8: fixed dashes
	* Makefile.am: also include the examples in the tarball

2008-05-26  enrico@enricozini.org

	* iwscan.cc: In wireless scan, evaluate profiles in the same order
	  they appear in the config file

2007-12-06  enrico@enricozini.org

	* Output routines are now protected with a mutex
	* Only the thread safe output routines are used now

2007-11-04  enrico@enricozini.org

	* Reverted adding interface name to script command line
	* Implemented interface autofilter based on name, when enabled
	  using 'map autofilter: true' directive (thanks to Massimiliano
	  Masserelli)
	* Actually activated the interface filter

2007-11-03  enrico@enricozini.org

	* Reorganised all the code
	   - Make strong use of singleton classes for subsystems like the
	     network scanner
	   - Removed lots of useless infrastructure code and abstractions
	   - util::Starter coordinates starting subsystems, only those that
	     are needed, and in the right order
	* Implemented wireless scan tests using iwlib: test-wireless script is
	  not used anymore.  Thanks to Massimiliano Masserelli for giving
	  ideas, setting up the test setup and assisting in the development.
	* Released as version 0.43

2007-11-02  enrico@enricozini.org

	* Removed unused wireless low-level code
	* Compiles with GCC 4.3

2005-05-02: New version 0.36

  * If link beat detection fails completely (like, is not supported),
    then act as if the link beat is present
  * Make test-wireless-ap handle MAC address argument properly
  * Speed up test-wireless
  * No longer use ip command in /usr/share/guessnet/test/test-*.
    Use ifconfig instead.
  * Remove dns-* lines from /etc/network/interfaces example stanzas
    since these are Debian-specific and users may be confused by them

2005-02-07: New version 0.35

  * Allows any amount of whitespace in /etc/network/interfaces between "test"
    and the rest of the line
  * Complains if a line starts with "test(-|\s)" but it cannot be parsed by
    guessnet

  * Integrate material from ifupdown-roam README into the README

  * Fix FTBFS on Alpha

2004-10-05: New version 0.30

  * Move auxiliary test programs to /usr/share/guessnet/test/
  * Replace test-wifi-* scripts with test-wireless
  * Remove test-dhcp
  * test-wireless-*:
    - Add sleeps after ip link set up
  * guessnet:
    - Implement automatic bound check when accessing packets
    - Redirect output of pppoe test to /dev/null
    - Make wireless test work
    - Add experimental dhcp test
    - Remove parsing of old-style ifupdown peer and script options
    - Make 'script' a (deprecated) synonym for 'command' keyword
    - Print "guessnet: " before messages
    - Use 'command' instead of 'script' in debug messages
    - Use 'test' instead of 'scan' in many places
  * getmac:
    - Add comment that it is written for the iputils-arping version
      of arping.
  * Merge TODO into README
  * Merge old NEWS into ChangeLog
  * guessnet.8
    - Many editorial changes
    - Document "wireless" as a new experimental test
    - Note that multiple test peer IP addresses must differ from
      one another

2003-12-21: New version 0.23

 - Implemented two different environments for the two different work modes
   (normal and ifupdown)
 - Port to libnet1
 - Encapsulate configuration parsing, and instantiate the right parser through
   a factory class that checks commandline switches and whatever
 - If there are no profiles given in stdin in ifupdown mode, assume they are
   all enabled
 - Integrate the simple patch from the BTS (thank you Fabian Knittel!)
 - If the interface detects no link beat, output a profile "none".  Add a
   switch to change its name and to turn the feature off for interfaces that do
   not support link beat detection.

2003-05-27: New in version 0.22

 - Fixed a typo in the manpage (Courtesy of Hervé Eychenne)
 - Fixed typos in the Debian package description
 - Applied patches by Fabien Knittel to make ifupdown mode work
 - Fixed another bunch of things to make reading commandline arguments from
   stdin work

2003-05-26: New in version 0.21

 - In ifupdown mode, read from stdin all the commandline parameters, not just
   the --default equivalent
 - Documented the new peer and commandline-in-map-lines syntax
 - Added guessnet-scan

2003-05-25: New in version 0.20

 - Lots of manpage updates and fixes (Thanks to Thomas Hood)
 - Removed redundant documentation from the README, and added a line pointing
   to the manpage for further documentation
 - The new peer syntax was not be parsed well (it misses all key-value pairs
   except the first)
 - Replaced -V with --debug and let -V work as --version
 - Remove dependancy on libpopt
 - When bringing up an interface, check when it comes up and do not wait for
   all the init-timeout.  Use init-timeout only to avoid waiting indefinitely
   in case of problems.

2003-05-16: New in version 0.19

 - Correctly handle when libpopt popt_next returns null instead of a packet
   (had to look at popt code to see what it means, since I couldn't find it
   documented anywhere >:((( )

New version 0.18
 
 - -v and -V switch can now work without specifying an ethernet device
 - Ship with guessnet-ifupdown alias to be used in ifupdown config file
 - Do not append the interface name to the output tag in ifupdown mode
 - "script" scan mode added
 - "default" scan mode added
 - Read from stdin a list of profiles to be checked when in ifupdown mode
 
New version 0.17

 - Rewrite in c++ to support a more flexible and extensible architecture:
   expect more discovery methods soon
 - Discovered ARP DAD mode (RFC2131, 4.4.1.) looking at arping manpage, `-D'
   switch: finally found a way to avoid the need for the source IP address.
   The source IP address is now ignored
 - Backported to libnet0, since libnet1 is broken for nonconfigured interfaces

2003-05-09	Enrico Zini	<enrico@debian.org>
	* guessnet.c
	Implement evil ifupdown detection
	* guessnet.1
	Path is /usr/sbin, not /usr/bin
	(thanks to Hervé Eychenne)
	
	Got tired of writing changelogs when I'm the only one that maintains
	the code.  I'd be happy of having guessnet in a CVS somewhere, with
	other people contributing to it, and it would be essential for
	implementing wireless scans, since I don't have access to a wireless
	network or wireless hardware.

2003-05-08
	* guessnet.c
	Corrected commandline parsing code (now the presence of commandline
	switches does not force taking the interface name from commandline)

2003-05-17	Enrico Zini	<enrico@debian.org>
	* Extensive code reorganization and rewrite

2003-02-09	Enrico Zini	<enrico@debian.org>
	* guessnet.c
	Print the ethernet device if using -v
	Print a good error message in case libnet intialization fails

2003-02-07	Enrico Zini	<enrico@debian.org>
	* guessnet.c
	Finished porting to libnet1
	Documentation updates

2003-02-05	Enrico Zini	<enrico@debian.org>
	* Makefile.am
	Install guessnet under /usr/sbin (thanks to Thomas Hood)
	* guessnet.1
	Uses new description by Thomas Hood, slightly edited by me
	* AUTHORS
	Added mention to Thomas Hood
	* guessnet.c
	Started porting to libnet1

2002-03-24	Enrico Zini	<enrico@debian.org>
	* guessnet.c
	Insulated possible endianness issues and enclosed them in functions
	and macros
	* configure.ac
	Added check for libpopt, since libnet-config does not add -lpopt to
	LIBS anymore
	* guessnet.1
	Filled the SECTION template with the section number at the start of
	the file (ops!)

2002-03-16	Enrico Zini	<enrico@debian.org>
	* guessnet.c
	target = *((int *)arp_header->ar_tpa);
		becomes
	target = *((int *)&arp_header->ar_tpa);
	Thanks to Lucien Saviot for pointing me of the typo.  Next issue to
	solve is how could it possibly work before :)
	* AUTHORS
	Added thanks to Lucien Saviot

2001-12-06	Enrico Zini	<enrico@debian.org>
	* guessnet.c
	Added #include <net/ethernet.h> to make it compile on S390
	(thanks to Gerhard Tonn <GerhardTonn@swol.de>)
	* examples/
	Added README, laptop-netconf and getmac
	* README
	Updated to mention getmac

2001-12-05:
	Added examples/README, examples/laptop-netconf and examples/getmac
	Should now compile on S390

2001-11-30	Enrico Zini	<enrico@debian.org>
	* guessnet.1, README
	Added suggestions and examples on how to retrieve the MACaddress of a
	remote interface with arping or arp -a

2001-11-23	Enrico Zini	<enrico@debian.org>
	* guessnet.c
	Added sleep after interface initialization and --init-time option
	Cleaned comment style, getting rid of C++ style comments
	Use memcpy instead of strncpy to compare MACaddresses
	  (oh, shame! shame! shame on me!)
	Added debugging output and --more-verbose (-V) option
	Code cleanups
	
	* guessnet.1
	Documented new option --init-time
	Documented new option --more-verbose (-V)

	* README
	Updated invocation summary

2001-11-23:
	Added --init-time option
	Added --very-verbose option
	Fixed a bug that caused false positives
