Mon Mar  9 16:04:21 EDT 2009  Irwin Tillman  (irwin at princeton dot edu)

	* Makefile.am: updated list of files in ./extras.

	* Released version 1.3.0.

Thu Feb 19 10:57:58 EST 2009  Irwin Tillman  (irwin at princeton dot edu)

	* At configure time, verify that libnet_cq_end_loop is declared as a result
	of including libnet.h; if not, refer user to INSTALL.dhcp_probe.

	* At configure time, verify that libnet_cq_end_loop is defined.
	If not, refer user to INSTALL.dhcp_probe.

Thu Jan 29 18:47:56 EST 2009 Laurent Guignard <lguignard dot debian at gmail dot com>

	* doc/dhcp_probe.8: escape -Q

Wed Dec 24 09:43:19 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* README, INSTALL, doc/dhcp_probe.8: added a paragraph warning that
	the software should not be run on a network where you don't have
	permission to do so.

Mon Dec 22 14:27:50 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* src/configfile.h, src/configfile.c, src/dhcp_probe.c, doc/dhcp_probe.8,
	doc/dhcp_probe.cf.5, extras/dhcp_probe.cf.sample: add support for new 
	legal_server_ethersrc statement.

Mon Dec  8 10:44:21 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.h: re-order dhcp_flavor_t elements, to cause the
	packets to get sent in the order we want.

Fri Dec  5 18:16:52 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* src/configfile.h, src/configfile.c, src/dhcp_probe.c, doc/dhcp_probe.8,
	doc/dhcp_probe.cf.5, extras/dhcp_probe.cf.sample:
	add support for new 'alert_program_name2' configuration file statement.

	* extras/dhcp_probe_notify2: added, supports syntax required by the new
	'alert_program_name2' configuration file statement.

	* extras/dhcp_probe_notify: add comment noting that this supports the
	old syntax used by 'alert_program_name'

	* extras/README: add dhcp_probe_notify2, update description for dhcp_probe_notify.

	* INSTALL.dhcp_probe: refer to dhcp_probe_notify2 instead of dhcp_probe_notify.

	* src/configfile.h, src/configfile.c, src/dhcp_probe.c, doc/dhcp_probe.8,
	doc/dhcp_probe.cf.5, extras/dhcp_probe.cf.sample, extras/dhcp_probe_notify2: 
	add support for new "Lease Networks of Concern" feature.

	* extras/mail-throttled: when tie() fails with EAGAIN, retry several times.
	Add new -T and -S options to tune this.

Wed Dec  3 14:38:52 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* extras/mail-throttled: add new -l option to also log errors, warnings, and debug
	output to syslog (in addition to writing to STDERR).

	* extras/dhcp_probe_notify: when calling mail-throttled, specify -l option.
 
Tue Nov 18 17:23:08 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* src/defaults.h: change BOOTP_XID from 0x00000001 to 0x19970112,
	because we have seen one DHCP server that *might* ignore
	a DHCP client that specifies BOOTP_XID of 0x00000001.

Mon Nov 10 11:20:43 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* src/bootp.c: when constructing a DHCP probe packet, place the DHCP Message
	Type option immediately after the RFC1048 cookie, because we have seen one
	(broken) DHCP server that *might* only answer DHCP clients if the specifies
	this option right after the RFC1048 cookie.

Mon Oct 20 16:02:49 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* extras/dhcp_probe.startup, extras/dhcp_probe.sh, extras/README:
	renamed dhcp_probe.startup to dhcp_probe.startup.Solaris9 to make it clearer 
	that this startup script is for Solaris 9.  
	renamed dhcp_probe.sh to dhcp_probe.FreeBSD.sh to make it clearer that this 
	startup script is for FreeBSD.

	* INSTALL.dhcp_probe, PLATFORMS: move some platform-specific information
	from INSTALL.dhcp_probe to PLATFORMS.

Fri Oct 17 15:16:14 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* Upgraded autoconf 2.62 to 2.63.  

Fri Oct 10 15:32:41 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* Released version 1.2.2.

Mon Oct  6 15:09:13 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* extras/dhcp_probe.startup: added

	* PLATFORMS: added

Mon Oct  6 15:08:53 EDT 2008  Cristian Klein (cristi at net dot utcluj dot ro)

	* extras/dhcp_probe.sh added

Fri Oct  3 17:00:57 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* lib/my_null_proc.c: added
	* configure.ac: add AC_REPLACE_FUNCS(my_null_proc) to ensure libreplace has at least
	one member.

	* configure.ac: add AC_CHECK_HEADERS(net/if_dl.h), AC_CHECK_HEADERS(ifaddrs.h), 
	AC_CHECK_FUNCS(getifaddrs).

	* src/get_myeaddr.c: if SIOCGIFHWADDR is defined (e.g. Linux), obtain our 
	Ethernet address via ioctl(SIOCGIFHWADDR); else if SIOCGARP is defined 
	(e.g. Solaris 9), obtain our Ethernet address via ioctl(SIOCGARP), else if 
	HAVE_GETIFADDRS is defined (e.g. *BSD), obtain our Ethernet address via getifaddrs().

Fri Oct  3 16:59:59 EDT 2008  Cristian Klein (cristi at net dot utcluj dot ro)

	* src/get_myipaddr.c: define max() if not defined.

Thu Oct  2 14:50:31 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* configure.ac: define STRUCT_ETHER_ADDR_HAS_ETHER_ADDR_OCTET if struct ether_addr{} 
	has an ether_addr_octet member. define STRUCT_ETHER_ADDR_HAS_OCTET if struct ether_addr{} 
	has an octet member.

	* src/bootp.c(build_frame): use ether_addr.ether_addr_octet or ether_addr.ether_addr_octet.octet
	based on values of STRUCT_ETHER_ADDR_HAS_ETHER_ADDR_OCTET and STRUCT_ETHER_ADDR_HAS_OCTET.

Wed Oct  1 16:45:21 EDT 2008   Andru Luvisi <luvisi at andru dot sonoma dot edu>,  Leo Weppelman (leo at weppelman dot net>

	* src/get_myeaddr.c: if SIOCGIFHWADDR is defined, obtain our Ethernet address
	via ioctl(SIOCGIFHWADDR) instead of ioctl(SIOCGARP).

Wed Oct  1 15:05:18 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c(my_exit): added.  Wraps a (new) log message, cleanup(), 
	and exit().
	* src/dhcp_probe.h: declare my_exit().

	* src/configfile.c, src/dhcp_probe.c, src/report.c, src/utils.c: 
	use my_exit() when it makes sense.


Tue Sep 30 17:44:17 EDT 2008 Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c: use set_pcap_timeout() only when the new '-T'
	option ('socket receive timeout') is a specified.

	* doc/dhcp_probe.8: document new -T option

Tue Sep 30 17:25:54 EDT 2008   Andru Luvisi <luvisi at andru dot sonoma dot edu>

	* src/dhcp_probe.c(set_pcap_timeout): new
	* src/dhcp_probe.h: define set_pcap_timeout()

Tue Sep 30 15:06:30 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* src/open_max.c, src/open_max.h: added.

	* src/daemonize.c: call our open_max() instead of relying on OPEN_MAX.

Tue Sep 30 13:33:30 EDT 2008  Laurent Guignard (lguignard2000 at yahoo.fr), Cristian Klein (cristi at net dot utcluj dot ro)

	* src/defaults.h, doc/dhcp_probe.8: change default value of PID_FILE from 
	/etc/dhcp_probe.pid to /var/run/dhcp_probe.pid.

Tue Sep 30 13:33:30 EDT 2008  Laurent Guignard (lguignard2000 at yahoo.fr)

	* src/defs.h: declare __FAVOR_BSD so Linux uses the BSD flavor IP structure
	headers instead of the Linux flavor headers.

Wed Sep 17 13:56:51 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* m4/ist_sys_socket_ioctls_use_streams.m4 rename cache-id from
	ist_sys_socket_ioctls_use_streams to ist_cv_sys_socket_ioctls_use_streams.
	
	* Upgraded autoconf 2.61 to 2.62.  Upgraded automake 1.10 to 1.10.1.
	
	* config/config.guess: replace version 2006-07-02 with version 2008-01-08
	from automake 1.10.1.
	
	* config/config.sub: replace version 2006-09-20 with version 2008-01-16
	from automake 1.10.1.
	
	* config/depcomp: replace version 2006-10-15.18 with version 2007-03-29.01
	from automake 1.10.1.
	
	* config/install-sh: replace version 2006-10-14.15 with version 2006-12-25.00
	from automake 1.10.1.
	
	* config/missing: replace version 2006-05-10.23 with version 2006-05-10.23
	from automake 1.10.1.

Wed Sep  3 14:39:03 EDT 2008  Irwin Tillman  (irwin at princeton dot edu)

	* INSTALL.dhcp_probe: clarify that the patch to libnet may or may not
	be required for versions of libnet newer than 1.1.2.1.

	* extras/mail-throttled: use GDBM_File.  Improve error messages.

	* extras/dhcp_probe_notify: improve error messages.

Thu Feb 28 18:27:01 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* Released version 1.2.1.

Sat Feb  9 19:33:55 EST 2008  Irwin Tillman  (irwin at princeton dot edu)

	* configure.ac src/defs.h: When checking if ether_aton(), ether_ntoa(),
	ether_ntohost(), and  ether_hostton() are declared, also check
	sys/ethernet.h, as that's where they are in Solaris 10.

	* configure.ac: When checking if ether_aton(), ether_ntoa(),
	ether_ntohost(), and  ether_hostton() are declared, switch from using
	AC_CHECK_FUNC_PROTO to using AC_CHECK_DECLS so we may specify multiple
	include files.

	* src/defs.h: Update the prototypes we provide for ether_aton(),
	ether_ntoa(), ether_ntohost(), and  ether_hostton() when we don't find
	system-provided prototypes for them.

	* lib/inet_aton.c: replace version from glibc 2.1.2 with version from
	glibc 2.7.

	* configure.ac: add calls to AC_TYPE_INT8_T, AC_TYPE_INT16_T,
	AC_TYPE_INT32_T, AC_TYPE_INT64_T, AC_TYPE_UINT8_T, AC_TYPE_UINT16_T,
	AC_TYPE_UINT32_T, AC_TYPE_UINT64_T so we may move to the integer
	types as per C99.  (libnet-specific code will still use the types
	defined by libnet.)

	* configure.ac: remove call to AC_UNP_CHECK_TYPE(u_int32_t, unsigned int).
	On systems where it didn't find a u_int32_t type, it #defined one.
	On newer platforms, that macro definition could interfere with libnet's
	typedef of u_int32_t in libnet/libnet-types.h.  In newer gcc, this
	would trigger "error: two or more data types in declaration specifiers".

	* INSTALL.dhcp_probe: update to reflect that we are known to work
	with libpcap 0.9.8.

Tue Jun 19 15:32:30 EDT 2007  Irwin Tillman  (irwin at princeton dot edu)

	* m4/ac_unp_check_type.m4, configure: upgrade AC_UNP_CHECK_TYPE to 1.6.
	That fixes its test program to work in gcc 4.1.2.

Wed Mar 14 10:06:15 EDT 2007  Irwin Tillman  (irwin at princeton dot edu)

	* Version 1.2.0 released.

Thu Dec 28 14:28:54 EST 2006  Irwin Tillman  (irwin at princeton dot edu)

	* Upgraded autoconf 2.59 to 2.61.  Upgraded automake 1.9.5 to 1.10.

	* config/config.guess: replace version 2005-07-08 with version 2006-07-02
	from automake 1.10.

	* config/config.sub: replace version 2005-07-08 with version 2006-09-20
	from automake 1.10.

	* config/depcomp: replace version 2005-07-09.11 with version 2006-10-15.18
	from automake 1.10.

	* config/install-sh: replace version 2005-05-14.22 with version 2006-10-14.15
	from automake 1.10.

	* config/missing: replace version 2005-06-08.21 with version 2006-05-10.23
	from automake 1.10.

	* config/mkinstalldirs: replace version 2005-06-29.22 with version 2006-05-11.19
	from automake 1.10.

Wed Nov 22 15:50:47 EST 2006  Irwin Tillman  (irwin at princeton dot edu)

	* configure.ac, configure: correct checks that prevented us from locating
	<net/if.h>, <net/if_arp.h), <netinet/if_ether.h>

	* src/defs.h: for some (more) system header files, only try to include them
	if configure found them.

Fri Nov  4 18:18:44 EST 2005  Irwin Tillman  (irwin at princeton dot edu)

	* Upgraded from automake 1.9.5 to 1.9.6.

	* config/config.guess: replaced version 2005-02-10 with version 2005-07-08
	from automake 1.9.6.

	* config/config.sub: replaced version 2005-02-10 with version 2005-07-08
	from automake 1.9.6.

	* config/depcomp: replaced version 2005-02-09.22 with version 2005-07-09.11
	from automake 1.9.6.

	* config/install-sh: replaced version 2005-02-02.21 with version 2005-05-14.22
	from automake 1.9.6.

	* config/missing: replaced version 2005-02-08.22 with version 2005-06-08.21
	from automake 1.9.6.

	* config/mkinstalldirs: replaced version 2005-02-02.21 with version 2005-06-29.22
	from automake 1.9.6.

Mon Oct 10 10:36:57 EDT 2005  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c: When logging certain errors (malformed packets) in received responses, 
	add the ether_src of the malformed packet.

Wed Sep 21 16:25:31 EDT 2005  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c, src/bootp.c, src/dhcp_probe.h, doc/dhcp_probe.8: 
	add -Q option to specify an 802.1Q VLAN ID for outgoing frames.

Thu Apr  7 14:10:37 EDT 2005  Irwin Tillman  (irwin at princeton dot edu)

	* To prevent specific installation instructions from being overwritten by automake,
	moved specific installation instructions from INSTALL to INSTALL.dhcp_probe,
	moved generic installation instructions from INSTALL.generic to INSTALL.

	* Upgraded automake from 1.8.3 to 1.9.5.

Sat Dec 25 21:02:19 EST 2004  Irwin Tillman  (irwin at princeton dot edu)

	* INSTALL: remove reference to libnet-config, a utility no longer installed
	by libnet.
 
Fri Nov  5 10:54:05 EST 2004  Irwin Tillman  (irwin at princeton dot edu)

	* INSTALL: describe change needed to libnet 1.1.2.1 to add 
	libnet_cq_end_loop().

	* src/dhcp_probe.c: call libnet_cq_end_loop() after iterating
	through the libnet context queue, to allow us to iterate through
	it again on next cycle.  Lacking this fix, the program only
	performs probing once at startup, then all following probe cycles
	execute without doing any probing. 

	* src/dhcp_probe.c: correct 'writing packet' message to display the
	libnet context label associated with the probe packet.

	* Version  1.1.0 released.
 
Thu Nov  4 16:02:38 EST 2004  Irwin Tillman  (irwin at princeton dot edu)

	* m4/ist_require_pcap.m4, m4/ist_require_libnet.m4:
	When setting LDFLAGS, omit space after -L.

Wed Nov  3 17:01:48 EST 2004  Irwin Tillman  (irwin at princeton dot edu)

	* Upgraded from the libnet 1.0.2a API to the libet 1.1.2.1 API.
	We no longer support the old libnet API.

Tue Nov  2 13:08:27 EST 2004  Irwin Tillman  (irwin at princeton dot edu)

	* src/get_myeaddr.c: clear arpreq before using.

	* Version 1.0.7 released.

Thu Oct 28 13:46:55 EDT 2004  Irwin Tillman  (irwin at princeton dot edu)

	* src/get_myeaddr.c, src/get_myeaddr.h, src/dhcp_probe.c, configure.ac:
	If struct arpreq has an arp_dev member, fill it in with the interface
	name before trying to perform a SIOCGARP ioctl.

Wed Oct 27 10:50:57 EDT 2004  Irwin Tillman  (irwin at princeton dot edu)

	* src/defs.h, configure.ac, configure, config.h.in: Only declare ether_ntoa(), 
	ether_addr(), ether_ntohost(), ether_hostton() if they are missing 
	from <netinet/ether.h>.

	* src/dhcp_probe.h: remove duplicate decl of ether_ntoa(), ether_addr().

Tue Sep  7 13:33:53 EDT 2004  Irwin Tillman  (irwin at princeton dot edu)

	* INSTALL: add step to verify 'bootpc' and 'bootps' are in /etc/services
	or NIS services map.

Tue Aug 24 11:17:43 EDT 2004  Irwin Tillman  (irwin at princeton dot edu)

	* Upgraded from autoconf 2.13 to 2.59.  Upgraded from automake 1.4 to 1.8.3.

	* Version 1.0.6 released.

Tue Aug 24 10:52:22 EDT 2004  Irwin Tillman  (irwin at princeton dot edu)

	* README, COPYING, Changelog: replace email addresses with human-parseable
	versions, to reduce spam from simple Web-based address harvesters.

	* extras/dhcp_probe_notify: add missing my_message() routine, add frequency throttling.

	* extras/mail-throttled: new.

	* Version number now 1.0.5.

Sun Nov 17 20:55:55 EST 2002  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c doc/dhcp_probe.8: ignore responses where bootp_chaddr != 
	my chaddr, or bootp_htype != HTYPE_ETHER, or bootp_hlen != HLEN_ETHER.

	* src/dhcp_probe.c: ignore responses where the frame length is not
	long enough to contain the IP header with the claimed ip_hlen value,
	a UDP header, and a minimum length BootP/DHCP payload.

Mon May  6 14:07:11 EDT 2002  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c: avoid incorrect use of cpp '##' to allow compilation 
	in gcc 3.x.

	* config/config.guess: replace with latest version (2002-03-20) from GNU.

	* config/config.sub: replace with latest version (2002-04-26) from GNU.

	* INSTALL: add note about dependancy on libnet 1.0.x API.  Add note about
	working around a problem in libnet.h when building with recent compilers
	(e.g. gcc 3.x).

	* configure.in: version number now 1.0.4.

	* Version 1.0.4 released.

Fri Feb 15 13:43:19 EST 2002  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c: if pcap_open_live() returns a warning message
	upon success, display the warning.

Wed Aug  1 14:17:59 EDT 2001  Irwin Tillman  (irwin at princeton dot edu)

	* README doc/dhcp_probe.8: software home has moved from wwwnet.princeton.edu to
	www.net.princeton.edu.

Tue May  1 14:06:00 EDT 2001  Irwin Tillman  (irwin at princeton dot edu)

	* INSTALL: added a PLATFORMS section listing platforms on which
	the program has been successfully built and used.

	* doc/dhcp_probe.8: remove specifics about platform versions.

Wed Apr 18 18:51:23 EDT 2001  Irwin Tillman  (irwin at princeton dot edu)

	* src/dhcp_probe.c: save and restore errno.

	* src/dhcp_probe.c: quit_requested, reread_config_file, reopen_log_file,
	and reopen_capture_file should be volatile sig_atomic_t. 

Mon Apr 16 11:03:29 EDT 2001  Irwin Tillman  (irwin at princeton dot edu)

	* doc/dhcp_probe.8: BUGS: On platforms where pcap(3) is unable to 
	support the timeout argument to pcap_open_live() the program may not 
	reliably detect responses from DHCP and BootP servers, or may not function 
	at all.

Thu Feb 15 11:10:26 EST 2001  Irwin Tillman  (irwin at princeton dot edu)

	* README COPYING doc/dhcp_probe.8 doc/dhcp_probe.cf.5: product
	is now generally available, also update legal notices.

	* src/get_myeaddr.c src/get_myipaddr.c COPYING: better identify that
	these came from "Unix Network Programming", Volume 1, Second Edition.

	* configure.in: version number now 1.0.3.

	* Version 1.0.3 released.

Sat Jan 27 17:35:10 EST 2001  Irwin Tillman  (irwin at princeton dot edu)

	* convert to automake, reorganize from flat package into shallow package

	* configure.in: replace AC_CANONICAL_SYSTEM with AC_CANONICAL_HOST

	* m4/ist_sys_socket_ioctls_use_streams.m4: replace $target with $host,
	add AC_REQUIRE([AC_CANONICAL_HOST])

	* acconfig.h m4/ist_sys_socket_ioctls_use_streams.m4 m4/sys_errlist.m4:
	move descriptions of macros for config.h.in into macro definitions

	* config/config.guess config/config.sub: sync to current GNU versions.

Sat Jan 20 16:06:39 EST 2001  Irwin Tillman  (irwin at princeton dot edu)

	* inet_aton.c (inet_aton): replaced version from "UNIX Network Programming: Volume 1",
	Second Edition, by W. Richard Stevens with version from glibc 2.1.2
	* COPYING.LIB: added, since inet_aton() is covered by it.
	* aclocal.m4: AC_UNP_CHECK_TYPE.m4 added (from "UNIX Network Programming: Volume 1",
	Second Edition, by W. Richard Stevens)
	* configure.in accongif.h: check for u_int32_t typedef, ctype.h

	* Makefile.in: remove -Wall from CFLAGS

	* COPYING.GPL: moved GPL out of COPYING file into its own file

	* dhcp_probe.cf.5 extras/dhcp_probe.cf.sample: legal_server keyword updated to 
	reflect some BootP Relay Agents overwrite IP source address

	* defaults.h: increase MAX_LEGAL_SERVERS from 16 to 64

Thu Aug 17 11:12:12 EDT 2000  Irwin Tillman  (irwin at princeton dot edu)

	* Version 1.0.1 released.

Thu Aug 17 11:00:17 EDT 2000  Irwin Tillman  (irwin at princeton dot edu)

	* configfile.c (read_configfile): Add alert_program_name keyword.
	(GetAlert_program_name): New function.

	* configfile.h (GetAlert_program_name): New function.

	* dhcp_probe.c (process_response): Execute alert_program_name
	when we receive an unexpected response packet.  
	(main): Add signal handler for SIGCHLD.

	* defs.h: Include <wait.h> and <unistd.h>.

	* extras/dhcp_probe.cf.sample: add sample of alert_program_name.

	* extras/dhcp_probe_notify: New file, a sample alert program.

	* dhcp_probe.c (main): sleep() a second time at end of cycle if
	first sleep() returns immediately as workaround.

Tue Jun 27 13:58:48 EDT 2000  Irwin Tillman  (irwin at princeton dot edu)

	* Initial version.
