PRIMARY AUTHORS AND MAJOR CONTRIBUTORS TO AM_UTILS: Original authors of amd were the Berkeley team and especially Jan-Simon Pendry. Since then many people have contributed patches.
This file lists the ones who contributed major code changes, in no particular order, and I thank them all. This is of course not to diminish the smaller contributes of the many others. Thank you all.
The most significant changes were made by Erez Zadok in terms of bug fixes, ports, and new features added. Erez Zadok is the current maintainer of am-utils, as of January 1997.
Co-maintainer of am-utils since late 1999: Linux and Solaris autofs support, Linux NFSv3 support, major code reorganization, etc…
May 7, 1997: contributed a special version of upl102 that included NFS V.3
support. Some of the code was contributed by Christos Zoulas
September 12, 1997: lots of small prototype cleanups and fixes to numerous files.
January 27, 1998: support pid files in the amd.conf file. Provide base name for hesiod zone files. Always use /etc/amd.conf if exists.
August 8, 1998: add detection support for NFS V.3 for NetBSD 1.3F.
February 1, 1998: fixes for NetBSD to better detect its features.
September 4, 1999: assorted fixes for NetBSD 1.4+.
Back in 1995, contributed code for linux. A new parser for file system specific options that only exist under linux.
June 22, 1997: minor patch to ensure that systems without an RE library work.
June 23, 1997: mount options should be properly comma limited.
July 10, 1997: info_ldap.c and prototype changes to all map init and mtime functions. Contributed scripts/amd2ldif.pl.
August 4, 1997: info_ldap.c fixes and adding two new amd.conf ldap variables: ldap_cache_seconds and ldap_cache_maxmem.
June 22, 1997: patches to ensure that proto= and vers= options work properly in mount tables and can be overridden. Later on, more code contribued to optimize the best combination of proto/vers.
July 4, 1997: patches to get NFS V.3 working under irix5.
September 9, 1997: initialize all fields of mntent_t structures to 0.
October 2, 1997: don’t log an RPC timeout as an error but only as an info message.
December 19, 1997: detected an FMR (Free Memory Read) in amd/mntfs.c, uninit_mntfs().
July, 6 1997: contributed patches to hesiod on bsdi3.
July 10, 1997: Recommdation to include libgdbm if libc has no dbm_open. Patches for netgrp(host) command. Mods to aux/config.guess to recognize sun3.
January 19, 1998: print correct -l option depending if system supports syslog and/or syslog facilities.
January 29, 1998: fix for 0.0.0.0 loopback on SunOS 3.X which defines IFF_ROUTE instead of IFF_LOOPBACK.
May 30, 2000: correct logging types for addopts/mergeopts messages.
July 11, 1997: fixes to DU-4.0 to support string POSIX.1 signals, and struct sockaddr with sa_len field.
July 13, 1997: Move amd.conf parsing to before switch_option() on log/debug options. Minor type wrt “ro” option in libamu/mount_fs.c. Added more fillers of mnttab options, for acdirmax, acdirmin, acregmax, acregmin, noac, grpid, nosuid, and actimo.
August 15, 1998: fix memory leak in processing of /defaults, and avoid accessing uninitialized memory in osf1.
July 23, 1997: Got lots of patches from the Debian Linux folks, who fixed
several generic bugs, and one serious one for Linux. The latter involved
using connected sockets for NFS mounts on kernels 1.3.10 and older. Roman’s
work is baed on amd-upl102, and work from Ian Murdock
August 6, 1997: assorted fixes to support hesiod-1.3, solaris 2.4 (which I already fixed but did not release yet), and support for $LDFLAGS at configure/compile time.
February 24, 1998: lots of patches for ultrix 4.3 port.
February 28, 1998: lots of documentation fixes!
January 8, 1999: texi fixes, and more Ultrix 4.3 fixes, among others.
January 11, 1999: hesiod_isup function. Fix format errors in dlog/plog. Remove obsolete or unnecessary files/macros. Don’t report disabled file systems. More misc fixes.
February 3, 1998: don’t start autofs listener unless autofs maps were in use.
December 10, 1999: assorted fixed and lots of fixes to support in-kernel mount tables in Solaris 8.
February 9, 2000: new debug options hrtime (hi-res timer) and xdrtrace. bug fixes.
August 25, 1997: make amd work when talking to NIS+ servers in NIS
compatibility mode. Fix originally came from Matthieu Herrb
August 29, 1997: patch to make amd use FQHN for NFS/RPC authentication, useful esp. for cross-domain NFS mounts. September 2, 1997: if plock() succeeded, don’t display errno string.
September 4, 1997: don’t ping remote servers with NFS V.3 always, but V.2, regardless of client’s NFS version. (conf/transp/transp_sockets.c)
September 19, 1997: make sure that amd works with more secure portmappers that do not allow forwarding of RPC messages to other services.
August 10, 1997: netbsd and other bsd systems have a mask flag for pcfs_args (msdos mount).
September 25, 1997: fix to initialize uid/gid fields of pcfs_args_t on netbsd.
October 10, 1997: compile time cleanups of printf()s in hlfsd code. If nfs server is down or does not support a portmapper call, then mark it down as version 2, and try again later.
November 29, 2002: compile fixes for NetBSD, a couple of bug fixes (one already fixed by maintainers)
April 12, 2003: support new “unmount” option, useful to timeout removable local media mounts.
October 12, 2004: patch to support two new amd.conf options, domain_strip and auto_attrcache. Patch to cleanup NFS attribute-cache flag computation. Patch to fix an inconsistency in timeouts in the RPC code between socket and TLI implementations. Patch to print version string (amd -v) after all options had been initialized, so we can print domain, host, and hostd. Linux patch to use umount2(2) if umount(2) fails.
November 5, 1997: NFS v.3 support for AIX 4.2.1, which does not include headers for this. Bill had to guess at the right structures, field names, sizes, alignment, etc.
January 15, 1999: small ldap bug fixes.
November 14, 1997: typo in the subscription instructions to amd-dev.
November 15, 1997: pointed out mismatching documentation for the -o option.
January 11, 1997: pointed out reversed definition of NFS mount options vers and proto.
January 12, 1998: minor bug in output of amd -H.
June 23, 2005: assortment of small compile bugs on aix4, and solaris 5/6/7.
January 13, 1998: use case insensitive comparisons for variables that need it (such as all hostname related ones, and more).
July 20, 1998: don’t leak memory in the private version of yp_all (when vendor yp_all is bad).
January 30, 1998: minor typo fixed to tftp example in am-utils.texi.
March 6, 1998: correctly inherit existing NFS V.3 mounts upon restart.
March 17, 1998: compare log file name and syslog string with correct length.
March 20, 1998: do not close stdout in case it gets reused elsewhere and to allow startup script to redirect it. Set a temporary secure umask(0022) before writing log file and restore it afterwards.
April 20, 1998: allow arbitrary number of interfaces in wire listing.
September 4, 1998: bug fix to avoid overrunning hostname buffer, and minor amd.conf man page typo correction.
September 22, 1999: use more secure vsnprintf in real_plog().
October 29, 1998: swap arguments to kill(2) in amd.c.
November 3, 1998: amd/nfs_subr.c (nfsproc_lookup_2_svc): try to avoid a race condition between unmounting and re-mounting an entry, by increasing the ttl of a looked up entry before unmounting it.
December 3, 1998: case insensitive host name match for nfsl.
Jeffrey C Honig
March 15, 1999: avoid overly verbose NIS warning even on systems that don’t run NIS. On BSD systems, wire.c uses getifaddrs(), sysctl(), IRS routines, and more fixes. Numerous IP packet security fixes.
March 16, 1999: documentation typos. new cdfs options. ufs structure detection for bsdi4.
September 17, 1999: fixes to expn.
Jon Peatfield <J.S.Peatfield AT damtp.cam.ac.uk> March 30, 1999: turn off incomplete NFS V.3 support in HPUX 10.20.
September 22, 1999: safe reloading of maps without first clearing old copies, and using cached copies if map failed to reload.
Christophe Kalt <Christophe-Kalt AT deshaw.com> July 14, 1999: add netgrpd() syntax function which uses FQHN.
Andrew J. Korty
November 1, 1999: fixes to sync maps even if they are set to mapcache:=sync.
January 19, 2000: fix (and reduce the incidence of) stale file handles when doing rapid mounts and umounts in succession.
June 5, 2000: better handling of potential race-conditions during rapid u/mounts. Correctly update d_drops stats for amq -s.
Johann Pfefferl <johann.pfefferl.jp AT germany.agfa.com> November 16, 1999: fix to ldap code so repeated calls to string2he don’t corrupt the string passed.
April 18, 2003: patch to reference am-utils info pages in man page.
November 28, 2004: small fixes to typos in amd.conf(5) man page.
Sebastien Bahloul <sebastien.bahloul AT mangoosta.fr> July 3, 2001: LDAP fixes and updates to support new APIs
March 27, 2002: LDAP bug and port to HPUX-11.
November 28, 2001: Bug fix. Support “nolock” as an NFS option, not a generic mount option.
July 17, 2003: pref:=null core dump fix. libgdbm portability. tcpd/librap support. And a few other things for the 6.0 branch.
Trond Myklebust <trond.myklebust AT fys.uio.no> January 10, 2002: Proper initialization of the timeo parameter on Linux, TCP must have a timeout 2 orders of magnitude larger than UDP
October 21, 2002: ldap_unbind fix for SIGPIPE, and support for LDAPv3
protocol version parameter (with Tim Colles
Jun-ichiro itojun Hagino
Mark Davies July 14, 2003: define “xlatecookie” mnttab option if not defined (for NetBSD). Support null hesiod entries if they start with a “.”.
Eric S. Raymond
Michael van Elst <M.van.Elst AT science-computing.de> September 1, 2004: bug fix to avoid race condition in calls to mntctl on AIX.
Jonathan Chen <jon+amd AT spock.org> October 22, 2004: patch/fix to move mlock/mlockall/plock code after the fork(). June 29, 2005: core dump going off end of exported_ap array. September 29, 2005: patch/fix for pawd not to go into an infinite loop. October 25, 2005: patch/fix for pawd to repeatedly resolve path.
Jim Zajkowski <jim.zajkowski AT gmail.com> March 14, 2005: small patch to amd2ldif.
Graeme Wilford <G.Wilford AT surrey.ac.uk> July 4, 2005: buffer overflow in pawd.