*** Notes specific to am-utils version 6.0a12:

- minor or updated/broken ports fixed:
	hppa1.1-hp-hpux10.10:	compiles, untested (probably works).
	hppa1.1-hp-hpux9.05:	compiles, untested (probably works).
	hppa1.1-hp-hpux9.07:	compiles, untested (probably works).
	m68k-hp-hpux9.00:	compiles, untested (probably works).
	rs6000-ibm-aix4.1.4.0:	compiles, untested.
	sparc-sun-solaris2.6:	works w/ NFS V.3.
	sparc-sun-sunos4.1.4:	compiles, untested (probably works).

- new ports:
	powerpc-ibm-aix4.2.1.0:	compiles w/ NFS V.3, untested.

- wire-test also checks for combinations of NFS protocol/version from the
client to a remote (or local) host.

- conf/mtab/mtab_file.c: use flock() to lock the file, and fcntl() if
flock() is not available.  (Used to prefer fcntl() over flock().)

- bug fixes:
	tli get_nfs_version() gets into an infinite loop
	tli get_nfs_version() should time out faster
	sockets get_nfs_version() should work w/ secure portmappers
	ESTALE returned for NFS mounts for SunOS 4.x fixed
	do not exceed HOSTNAMESZ for nfs_args.hostname (get ENAMETOOLONG)
	properly initialize some mntent_t fields (fsck, freq, mnt_time)
	properly initialize some pcfs_args fields (mask, uid, gid)
	properly initialize some cdfs_args fields (ssector)

*** Notes specific to am-utils version 6.0a11:

- bug fixes:
	amd could not NFS mount v.2 servers from v.3 clients
	hlfsd will only use first occurrence of home dir for same uid

*** Notes specific to am-utils version 6.0a10:

- MAJOR DOCUMENTATION UPDATE! (first time in 6 years)

- new ports:
	m68k-next-nextstep3: configures, compiles, not tested.

- preliminary autofs support.  See README.autofs for details.

- new amd.conf [global] yes/no keywords:
	show_statfs_entries:	shows number of entries for df(1)
	fully_qualified_hosts:	use FQHN for NFS/RPC authentication

- detect down remote hosts faster

- log output of "amd -v" at startup

- removed $osver override for solaris: now it is 2.5.1, not 5.5.1

- buildall will use gmake first if available

- bugs fixed:
	amd core dumped when remote host was down
	allow up to 1024 entries back from readdir()
	amd.conf works even if only [global] option defined
	avoid using bad memcmp() implementations
	fixed meaning of plock [global] option (was reversed)
	hlfsd infinite loop unless compiled with --enable-debug
	NIS code works with NIS+ servers in NIS compatibility mode
	reset tag fields in amd.conf so they don't carry to other entries

*** Notes specific to am-utils version 6.0a9:

- new ports:
	sparc-sun-solaris2.4:
		 configures/compiles, and runs (no NFS V3)
	i386-unknown-openbsd2.1:
		configures/compiles, runs (NFS V3)

- updated ports:
	i486-ncr-sysv4.3.03: configures/compiles, not tested

- Multiple amd support: new amd.conf [global] key "portmap_program" can be
used to specify an alternate RPC program number for amd to un/register.
Allowed numbers range from 300019 to 300029.  A matching new option for amq:
-P prognum, will use an alternate program number to contact.

- man pages:
	amd.conf.5	new
	mk-amd-map.8	new
	amd.8		updated
	amq.8		updated
	(other man pages required minor updates)

- shared libraries support expanded.  Using GNU libtool-1.0.  You can build
a shared version of libamu, and link with it accordingly, by specifying
--enable-shared to configure.  Default is --enable-static --disable-shared,
and you can mix and match.  See "INSTALL" file for listing of systems on
which shared libraries seem to build and work fine.

- new option: amq -p, will return the PID of the running amd (local or
remote).  Uses a new RPC message.  Useful especially in "ctl-amd stop".

- new configure script options --enable-ldflags, for specifying -L flags.
The older --enable-libs is to be used only for -l options.

- two new LDAP map options for amd.conf: ldap_cache_seconds and
ldap_cache_maxmem.

- new script, am-eject from Debian linux's version of amd-upl102.

- additional passwd map support using var[0-3], from Debian folks.

- hesiod code cleanup.  works for hesiod 1.3 as well as 3.0.

- removed defunct -h option from amd.

- started using automake-1.2.  This fixed several bugs that caused some
versions of yacc/lex and non-GNU make to fail.

- bug fixes:
	amd/hlfsd mounts should be hidden from df(1)
	use "noconn" option for nfs mounts (multi-homed hosts)
	don't use connected sockets on linux before 1.3.10 (from Debian)
	better checks for [gn]dbm
	forbid excessive retries after timeouts (from Debian)
	readdir(): don't skip over map entries with prefix, and include it
	more assorted linux fixes from Debian folks
	lofs mount on svr4 was broken
	find default value of $karch from uname() not $arch
	hlfsd failed to mount itself on some little-endians


*** Notes specific to am-utils version 6.0a8:

- new ports:
	i386-unknown-netbsd1.2.1: configures/compiles (with NFS V.3), works,
				  but some OS stability problems exist.

- updated ports:
	hppa1.1-hp-hpux9.01:
			now tested and working
	rs6000-ibm-aix3.2 and rs6000-ibm-aix3.2.5:
			now tested and working

- fixed browsable directories (readdir) code.

- better methods to find amd/hlfsd pid to kill in ctl-{amd,hlfsd}

- "ignore/auto" mount types fixed for irix, sunos, and others, so "df" does not
show amd mounts by default (but GNU df -a does).

- each time amd is built, a new "build" version is incremented.  See amd -v.

- man page for fsinfo added

- empty fillers for new file (bsd44) systems: nullfs, unionfs, umapfs.

- when amd is not running, or portmapper is down, make amq timeout faster (5
sec) than system default, usually 4-5 minutes.

- bug fixes:
	hlfsd mount got "protocol not supported"
	first regular map in amd.conf didn't inherit global options
	make "bad" versions of lex still work with amd/conf_parse.l
	check for 'nodev' option, not 'nondev'
	typo in "ro" option, and fillers to ac{reg,dir}{min,max} and others
	amd.conf parsing done before switching default log/debug options
	allow doubly-quoted values in amd.conf
	hesiod-reload code cleanup

- assorted code cleanup


*** Notes specific to am-utils version 6.0a7:

- new ports:
	i386-unknown-freebsd3.0:
			fully functional with NFS V.3
	sparc-sun-solaris2.3:
			fully functional (should work for 2.4)
	sparc-unknown-netbsd1.2E:
			configures/compiles (with NFS V.3), untested

- updated ports:
	i386-pc-bsdi3.0:
			NFS V.3 works
			look for hesiod in libc
	mips-sgi-irix5.3:
			fully functional with NFS V.3

- LDAP support!  New [global] amd.conf options ldap_base and ldap_hostports.
Also includes a new script amd2ldif to convert amd maps into plain text LDAP
object files.

- the following amd.conf variables: browsable_dirs, map_options, map_type,
mount_type, and search_path --- can now be specified in [global] as well as
the map entry itself.  That way you can declare them only once in [global],
and override them as needed per map.

- option "cluster" added to [global] (HPUX clusters ala "amd -C").

- assorted info_hesiod map fixes and cleanup.  removed HESIOD_RELOAD code.

- added netgrp(name) function to amd map syntax to see if current host is in
the <name> netgroup.

- removed unused option "amd -m".

- filled in "tasks" file with todo items.

- filled "COPYING" file with legal stuff.

- cleanup: all global variables are now in one big structure (struct
amu_global_options) that's easy to identify and enhance.  Also migrated
several flags that used be an integer each into one unsigned integer that's
used as a bit-flag.

- big fixes:
	xdr_mountres3 should compile only if has NFS V3
	lex/yacc macros show full pathname (to tell if correct one runs)
	misc fixes/cleanup


*** Notes specific to am-utils version 6.0a6:

- amd configuration file!

See scripts/amd.conf-sample for help and some explanation.  This new conf
file allows for the following new features:

	default selectors can be turned on/off globally.
	browsable_dirs/readdir() support can be turned on per map.
	search paths for file type maps.
	can force the map type to file, nis, ndbm, etc. rather than default
		to looking at all of them.
	tag each map for "amd -T tag", useful for grouping maps.
	can override $os and others (so if you don't like "sunos5" default
		naming, set os=sos5 and it will work with your old maps).
	and more goodies...

- enable-default-selectors: No longer turned on by the configure script or
optionally compiled.  Code made dynamic and can be turned on or off from the
amd.conf file.  This code is off by default, and must be turned on by
amd.conf's [global] section.

- new ports:
	mips-sgi-irix5.3:	configure/compile, not tested
	i486-ncr-sysv4.3.03:	configure/compile, not tested

- updated ports:
	alpha-dec-osf4.0:	major code redone
	sparc-sun-sunos4.1.3:	fixed and working
	mips-sgi-irix6.2:	tested with gcc and "cc -32 -Wl,-woff,84"
	mips-sgi-irix6.4:	tested with gcc and "cc -32 -Wl,-woff,84"

- better NFS3 port, including more support for proto= and vers=, and
automatic determination of proto/vers combination.

- conf/nfs_prot/nfs_prot_*.h: all of the NFS protocol header files had to be
redone, because of the osf4 port.  OSF used very different names for these,
and they conflicted with am-utils'.  The only solution was to more or less
conform to OSF4's naming, and change all the others.

- ctl-amd script:
	improved to look for amd.conf in $prefix/etc and /etc
	better methods for finding the pid of amd to kill

- autoconf support for LDAP.  amd/info_ldap.c needs to be written.

- wire-test also reports the local IP address.  Some systems have multiple,
buggy version of get_myaddress(), esp. SunOS and Irix.  Note that Solaris
x86 has a buggy htonl().

- amd -H prints usage.

- bugs fixed:
	minor TLI problem in fwd_socket
	mount options properly comma delimited
	LIBS is set only to the right set of libraries to include
	selectors-on-default code ignored last selector ent in /defaults
	assorted code cleanups


*** Notes specific to am-utils version 6.0a5:

- NFS Version 3 support!!!

	Works on Solaris 2.5.1.
	Minimal testing done on Irix 6.
	Compiles cleanly on DU-4.0 but no tests performed.

Will fall back to V2 mounts when V3 is not available.  Will also use TCP if
possible, UDP otherwise.

- Ports to new platforms:

	alpha-dec-osf4.0		(not tested)
	i386-pc-bsdi3.0			(tested and working)
	i386-unknown-freebsd2.2.1	(tested and working)
	sparc-unknown-linux-gnu		(tested and working)

- New scripts added:

	amd2sun:	convert amd maps to Sun automount maps
	ctl-amd:	script to start/stop/restart amd
	ctl-hlfsd:	script to start/stop/restart hlfsd
	expn:		expand mail alias (used by hlfsd)
	lostaltmail:	redeliver "lost" mail redirected by hlfsd
	lostaltmail.conf-sample:	sample conf file for lostaltmail
	wait4amd:	run a command once amd is up on a host
	wait4amd2die:	wait for an amd process to die before returning

- "amd -v" now includes more info and "amq -v" lists all of it.

- new parser for linux specific mount options.

- Main bugs fixed:

	"new toplvl readdir" bug caused amd to dump core
	handler for SIGCHLD didn't check for all possible children
	hlfsd leaking file descriptors when home file system was full
	cdfs/pcfs mounts should not timeout by default
	hesiod domain names should be compared in case-insensitive manner
	several printfs in amq were missing \n


*** Notes specific to am-utils version 6.0a4:

- amd services both TCP and UDP amq requests.  This will help because of the
limited UDP message size.

- "amq -M" code is disabled by default because it is insecure.  It is
rarely used.  Users who wish to use it should run
"configure --enable-amq-mount".


*** Notes specific to am-utils version 6.0a3:

- New tested ports (configures, compiles, and runs):

	i386-unknown-freebsd2.2

- New ports (configures and compiles correctly, not tested):

	rs6000-ibm-aix3.2.5
	rs6000-ibm-aix4.1.5.0

- More am-utils programs ported to all existing platforms: hlfsd, fsinfo,
mk-amd-map, and fixmount.

- Shared libraries: a new configure option --enable-shared will build a
shared libamu.so, link applications with it, and use it.  Reduces binary
sizes by 20-30%.  This is the first step towards loadable modules, as many
changes had to be done to be able to compile and use PIC code.  This is code
that obviously needs to be generalized to be able to build shared libraries
on many other platforms.  It was only tested on Solaris 5.5.1.

- the file INSTALL contains the latest compatibility table of which
platforms am-utils configures, compiles and runs on.

- Trimmed down the size of the configure script.  Some tests that are not
used anywhere were removed.


*** Notes specific to am-utils version 6.0a2:

- New ports (configures and compiles correctly, not tested):

	i386-pc-bsdi2.1
	hppa1.1-hp-hpux9.01
	hppa1.1-hp-hpux10.20

- new configure options:

	--enable-cppflags[=ARG]
		configure/compile with ARG (-I) preprocessor flags
	--enable-libs[=ARG]
		configure/compile with ARG (-L/-l) library flags

- filesystem, mount table entries, and mount type tests can now look in
/lib/modules and /proc/filesystems for statically/dyadically loadable kernel
modules (linux)

- prefer vfat over msdos/pc/etc filesystem for PCFS.

- moved all fixed headers to include/am_defs.  Left only #define/#undef
entries in aux/acconfig.h.

- make more sense of systems that have full, partial, or no NFS protocol
headers.

- minor fixes for NetBSD (untested platform).

- hesiod map fixed.

- buildall -D: new option to run even stricter developer options.

- lots of other bugs fixed (see ChangeLog).


*** Notes specific to am-utils version 6.0a1:

I have it configure and build correctly for the following systems:

	i386-pc-solaris2.5.1
	i386-unknown-freebsd2.1.0
	mips-sgi-irix6.2
	sparc-sun-solaris2.5.1
	sparc-sun-sunos4.1.3

Amq, wire-test, and "amd -v" work on all of the above.  A real running amd
was only tested and confirmed working on

	i386-pc-solaris2.5.1
	sparc-sun-solaris2.5.1

Many things are still missing: options, features, etc.  But for now, let's
concentrate on getting the basic functionality working on the more popular
systems.
