NEWS revision 119679
1*** Notes specific to am-utils version 6.0.10-pre: 2 3- minor new ports: 4 ia64-unknown-linux-rh2.1AS (Red Hat Itanium Advanced Server) 5 i386-unknown-freebsd5.0 (5.0-RELEASE) 6 sparc64-unknown-linux-suse7.3 7 8- bug fixes: 9 rename log() in fsinfo to avoid glibc/gcc-3.3 conflict 10 am_pref free NULL pointer 11 12*** Notes specific to am-utils version 6.0.9: 13 14- Minor new ports: 15 i386-apple-darwin6.0 16 sparc-sun-solaris2.9 17 18- bugs fixed: 19 20 * handle std{in,out,err} correctly when releasing controlling tty 21 (for real this time) 22 * don't cast pointers between enum_t and u_long, it doesn't work on 23 64-bit big-endian platforms 24 25*** Notes specific to am-utils version 6.0.8: 26 27- Minor new ports: 28 i386-pc-linux-rh7.2 29 i386-pc-linux-rh7.3 30 i386-unknown-freebsd4.4 31 i386-unknown-freebsd5.0 32 ia64-hp-hpux11.20 33 ia64-unknown-linux-rh7.1 34 powerpc-ibm-aix5.1.0.0 35 36- Work around IBM's NFSv3 ABI change in aix4.3 37 38- Support network/netmask and network/masklen syntax in in_network() 39 40- Support disabling LDAP and Hesiod support using configure 41 42- Support xfs on Linux 43 44- Red Hat specific Amd startup script included 45 46- Remove (non-functional) autofs code and detection support. If you want 47 autofs support, use am-utils-6.1. 48 49- bugs fixed: 50 51 * hlfsd takes uid 0's home from root's passwd entry instead of 52 defaulting to '/' 53 * (not really our bug) Linux ignores the microseconds field in 54 mtime, so hlfsd and amd need to increment the seconds field all 55 the time to prevent symlink caching 56 * generic map parsing bug which was rejecting a numerical mount option 57 if it was the last option in the string 58 * MacOS X compile bug 59 * minor fix for GNU getopt 60 * Linux has no "dev" mtab option 61 * "nolock" is an NFS mount option, not a generic one 62 * Irix N32 ABI fixes with cc 63 * security: use mkstemp instead of mktemp 64 * correct timeo values for Linux tcp/udp NFS mounts 65 * hlfsd use of setuid() not seteuid() 66 * AIX ABI changes to nfs_args fixes 67 68*** Notes specific to am-utils version 6.0.7: 69 70- minor new ports: i386-unknown-freebsd5.0 71 72- bug fixes: 73 type:=host, don't fail mount if one share is already mounted 74 don't report NFS NE_IO error as success (Linux) 75 76*** Notes specific to am-utils version 6.0.6: 77 78- new ports: 79 Mac OS X support (Darwin, Rhapsody) 80 81- reworked autoconf scripts so that newer versions of known OSs will default 82 their configuration to the last known version (better chance that it will 83 pass autoconf and work). 84 85- linux support for lofs and "bind" mounts, so type:=lofs can work (whether 86 you're using autofs or not) 87 88- renamed amd.conf option "selectors_on_default" to "selectors_in_defaults" 89 (on -> in, and added "s"). Old name remains in place for compatibility. 90 91- lots of cleanups of debugging and logging messages 92 93- Bugs fixed: 94 lots of Linux-related ones, so it compiles for recent kernels 95 better checking on various mount options of the form foo=N or foo=STR 96 fixed NFS errno mapping bug which mapped ENOENT to success on Linux 97 98*** Notes specific to am-utils version 6.0.5: 99 100- Minor ports: 101 alphaev6-dec-osf5.1 102 i386-unknown-freebsd4.2 103 support for Linux 2.4 kernels and newer GLIBC versions 104 cleanup of AIX and IRIX6 ports 105 106- Support new mount options: 107 proplist (ACLs over NFS, DU-4.0) 108 kerb, rdirplus, readdirsize, and xlatecookie (NetBSD-1.5K+) 109 nonlm, lock, nolock (Linux) 110 111- Don't force rsize/wsize on Linux 2.2.18+ and 2.4.x. Improves performance 112 a lot. 113 114- Lots of documentation updates: texinfo, man pages, scripts, and more. 115 116- LDAP: included proposed Schema and Internet Draft for LDAP Schema. See 117 README.ldap for more information. 118 119- Removed all remains of the dangerous amq -M code. 120 121- Major bug fix: initialize NFS fileid field correctly, to avoid cache 122 aliasing problems, esp. on Linux. 123 124- Major Linux bug fix: map errnos to NFS errors (mistakenly turned off a 125 while back). Also support unused errno 41. 126 127- Other bugs fixes: 128 default MAXHOSTNAMELEN (if undefined) is 256, not 64 129 truncate hostnames to MAXHOSTNAMELEN (security fix) 130 alignment problem in getwire() on ALPHA 131 other buf overflow problems (security fixes) 132 ctl-amd supports "condrestart" (Red Hat) 133 bell char is \g not \a 134 lostaltmail verify MAILDIR is defined 135 am-eject accepts "floppy" and "cdrom" as args 136 other assorted small bug fixes 137 138*** Notes specific to am-utils version 6.0.4: 139 140- NFSv3 support for Linux and HPUX-11 141 142- new amd.conf [global] options: 143 nfs_vers: force all NFS mounts to version 2 or 3 144 nfs_proto: force all NFS mounts to udp or tcp 145 146- new debug_options (amd -D): 147 hrtime: turns on high-resolution timer if available 148 readdir: traces browsable_dirs code 149 xdrtrace: traces XDR routines 150 (trace: only traces NFS and RPC) 151 152- new amq options: 153 -H: shows usage 154 -w: translate getpwd() into an Amd path 155 156- new map syntax: 157 ${dollar}: to include a literal '$' in assignments 158 159- new "opts:=" options: 160 ver3: turns on NFS version 3 on some systems (linux) 161 162- updated or minor new ports: 163 alpha-dec-osf4.0f 164 alphaev6-dec-osf5.0 165 i386-pc-linux-rh6.2 166 i386-unknown-freebsd3.4 167 168- bugs fixed: 169 symlink mtime fixes to avoid u/mount race conditions 170 update amq -s failed umounts count correctly 171 linux compiles even if efs is available 172 linux works with mount(2) option "intr" 173 linux works with pcfs and cdfs 174 handle std{in,out,err} correctly when releasing controlling tty 175 browsable_readdir works on 64-bit kernel architectures 176 irs/wire routines compile for bsdi{2,3,4} 177 178*** Notes specific to am-utils version 6.0.3: 179 180- updated or minor new ports: 181 hppa1.0-hp-hpux11.00 182 i386-pc-bsdi4.1 183 i386-unknown-netbsd1.4.1 184 sparc-sun-solaris2.8 185 i*86-pc-linux-gnu-rh6.1 186 (some preparations for Compaq Tru64) 187 188- new variables ${uid} and ${gid}, return the numeric UID/GID of the user 189 (not root) who invokes an amd pathname. Similar to what hlfsd does. 190 191- automake now uses automatic dependency tracking 192 193- new mount options: optionstr, noexec, nomnttab 194 195- maps of type:=auto are now browsable (using map option "browsable") 196 197- ctl-amd has "status" argument (same as RedHat) 198 199- bugs fixed: 200 document buggy AIX 4.3 plock() behavior 201 fixes to stale file handle on symlinks 202 reduce race conditions upon rapid umount/mount sequences 203 use vsnprintf, more secure than vsprintf 204 more assorted and smaller bugs 205 206*** Notes specific to am-utils version 6.0.2: 207 208- safe map reloads: when a map needs to be reloaded, it is reloaded into a 209 temporary copy first. Only if the reload was completely successful, Amd 210 discards the old map and uses the new one. Otherwise Amd continues to use 211 the old maps. This should help a lot with transient NIS problems. 212 213- amq -f now also forces a (safe) map reload, but only if the timestamp on 214 the maps was updated. 215 216- two new selector variables: ${vendor} and ${full_os}, which are the same 217 as the output seen in "amd -v". 218 219- documentation fixes and updates 220 221- updated or minor new ports: 222 i386-unknown-freebsdelf3.3 223 224- support 'ignore' flags (automntfs) in bsdi-4.1 225 226- bugs fixed: 227 expn.pl uses correct sockaddr_in() not, pack() 228 make sure configure --enable-*args take an argument 229 don't busy-loop trying to rebind to ldap servers 230 use vsnprintf, not vsprintf (security) 231 232*** Notes specific to am-utils version 6.0.1: 233 234- updated or minor new ports: 235 i386-pc-bsdi4.0.1 236 i386-unknown-freebsdelf3.0 237 i386-unknown-freebsdelf3.1 238 i386-unknown-freebsdelf3.2 239 i386-unknown-freebsdelf4.0 240 i386-unknown-netbsd1.4 241 i386-unknown-openbsd2.5 242 powerpc-unknown-linux-gnu 243 244- automount2amd added, a new script to convert Sun automount maps to Amd maps 245 246- new map function netgrpd(ARG), same as netgrp() but matches FQHN 247 248- 'ignore' is a generic mount option 249 250- hesiod info service isup() function to check if service is up 251 252- more Y2K fixes (see README.y2k for the full story) 253 254- using alloca.c on systems that don't have it (hpux9 with /bin/cc) 255 256- configure script reduced in size by using M4/sh loops instead of repeated 257 entries 258 259- documentation updates 260 261- too many bugs fixed to list here: 262 'addopts' option works with 'remopts' as well as 'opts' 263 AIX can perform NFS V.3 mounts explicitly 264 NIS is_up fixed, especially for NIS+ running in compatibility mode 265 amd -v incorrectly listing file systems that don't really work 266 amd's own mounts use reserved ports if possible 267 browsable directories works for Linux 2.3 (NFS cookies) 268 bsd44 systems check for isofs flags 269 bsd44 systems check for new options: norrio, gens, and extatt 270 buildall works better on Ultrix's /bin/sh 271 compile and build on Linux kernels 2.2 and newer 272 compile and build on RedHat Linux 6.0 (glibc 2.1) 273 compile and build on Solaris 7 (with or without vendor LDAP) 274 completely eliminate all of amd's amq -M code, when not enabled 275 correctly interpret failure code of unmount of type:=program 276 don't create autofs listener service unless used 277 don't list or process amq's -M option unless feature was turned on 278 don't turn on/off noconn option if it was already in that state 279 ldap info service: don't strcmp null strings 280 lostaltmail correctly sets struct sockaddr_in 281 make sure Linux systems have configured kernel headers 282 test for bsize/namlen fields in nfs_args (linux mount versions 2/3) 283 turn off broken NFS V.3 support for HPUX 284 use getifaddrs() on bsd44 systems makes wire.c more reliable 285 use matching NFS rsize/wsize on Linux 2.0 and 2.[123] kernels. 286 verify that RPC requests come from reserved, privileged local ports 287 warn when Linux kernel headers mismatch with running kernel 288 pawd works for type:=nfsl too 289 290*** Notes specific to am-utils version 6.0: 291 292- updated or minor new ports: 293 hppa2.0w-hp-hpux11.00, 294 i386-pc-bsdi4.0 295 i386-unknown-freebsd2.2.8 296 i386-unknown-netbsd1.3.3 297 i386-unknown-openbsd2.4 298 mips-sgi-irix6.5 299 powerpc-ibm-aix4.3.1.0 300 i386-unknown-freebsd3.0 now supports nfs v.3 301 302- ctl-amd and ctl-hlfsd now compatible with RedHat's chkconfig utility 303 304- ctl-amd stop will now wait until amd is down 305 306- libamu.so completely self contained --- does not export any symbols which 307 must be defined by the process linking with it. This is so shared 308 libraries could be supported on systems that have restrictive shared 309 libraries. 310 311- use latest autoconf, automake, and libtool (off of cygnus' CVS server) to 312 support shared libraries on many more platforms. 313 314- posix code cleanups 315 316- bugs fixed: 317 case insensitive host match in type:=nfsl 318 correct swapped args to kill(2) 319 try to avoid a race condition b/t mounting and unmounting 320 yp_all support is found in libnsl in RH-5.1 systems 321 322*** Notes specific to am-utils version 6.0b1: 323 324- updated or minor new ports: 325 - *-pc-linux-gnu (glibc2 systems such as RedHat 5.1) 326 - sparc-sun-solaris2.7 327 - i386-pc-solaris2.7 328 - i386-unknown-freebsd3.0 (official release, post 4.4lite port) 329 - sparc64-unknown-linux-gnu (RH 5.1 on Sun Sparc Ultra) 330 331- bugs fixed: 332 - major memory leak in processing of /defaults 333 - core dump if map_type given in amd.conf doesn't exist 334 - memory leak in replacement yp_all 335 - don't access uninitialized memory in DU 4.0 336 - other smaller bugs, see ChangeLog 337 338*** Notes specific to am-utils version 6.0a16: 339 340- new ports: 341 hppa1.0-hp-hpux11.00 (works, not NFS V.3 due to missing headers) 342 mips-dec-ultrix4.3 (working, unverified) 343 344- new minor ports: 345 i386-pc-bsdi3.1 346 i386-unknown-netbsd1.3.1 347 alpha-dec-osf2.1 348 349- new options addopt:=ARG will "smartly" add and override options specified 350in opts:= 351 352- new amd.conf options: 353 pid_file: specifies the file to store the PID 354 hesiod_base: specifies the base for the Hesiod service 355 unmount_on_exit: if 'yes' will attempt to unmount all file systems 356 when amd exits. 357 358- amd.conf file is parsed after all other command line options. If no 359options specified at all, then use /etc/amd.conf by default. 360 361- some variables' values are now compared case-insensitive as per specs, 362such as host names, domain names, and more. 363 364- NIS service uses a new isup() function to detect if the service is up 365before using it. Used to ensure amd doesn't clear the existing maps before 366reloading them, unless the remote info service is working. 367 368- new cdfs mount options: rrip, noversion, defperm, nodefperm (OSF) 369 370- support efs/xfs separately on irix 371 372- new -D info trace option to turn on info specific debugging, such as 373RES_DEBUG for hesiod services. 374 375- document updates and fixes 376 377- new file MIRRORS lists official mirror sites (also in am-utils home page) 378 379- new file BUGS lists known amd/OS bugs 380 381- source restructuring: rename all Amd file-systems' sources to amfs_ARG.c 382such that it matches the type:=ARG as well. Free names afs/dfs for Andrew 383F/S and Distributed F/S. 384 385- checkpoint config.guess several times during the long configure, so that 386if it is aborted midway, the bulk of the features discovered will be re-read 387from the config.cache file. 388 389- more systems support shared libraries (libtool 1.2) 390 391- using automake 1.3 + more fixes 392 393- bugs fixed: 394 use dynamic buffer for list of interfaces, not fixed size 395 output of amd -H duplicated if >2 interfaces 396 -D mem for hlfsd not on by default (so it will daemonize) 397 linux looks for ext2fs before ufs 398 CDFS looks for 'isofs' mount type as well 399 compile on Solaris 2.6 with /opt/SUNWspro/bin/cc 400 various additional fixes which gcc 2.8.x reported 401 print syslog help string based on what's supported 402 correctly ignore loopback interface on SunOS 3.x 403 don't use -lucb for strcasecmp 404 hlfsd's dump file securely written in /usr/tmp/hlfsd.dump.XXXXXX 405 inherit NFS V.3 mounts correctly 406 write pid file securely 407 408*** Notes specific to am-utils version 6.0a15: 409 410- new ports: 411 alpha-unknown-linux-gnu: works 412 i386-unknown-netbsd1.3: fully working 413 *-sun-sunos3: compiles, not tested 414 415- updated ports: 416 m68k-next-nextstep3: cleaner compile, works. 417 418- new file system type nfsl (NFS Link). Uses nfs if file system is remote, 419and link if it is local (based on if $rhost equals the host name). 420 421- support for Solaris cachefs. Requires setting fs, rfs, and a new variable 422cachedir. See documentation for explanation, examples, and caveats. 423 424- support negated selector functions such as !exists(/foo/bar) 425 426- wire, network, netnumber, in_network() selectors now match against all 427locally attached networks (by either name or number), not just the first two 428interfaces. 429 430- new program pawd (and man page for it) --- Print Automounter Working 431Directory, to print the proper pathname of the cwd or any other pathname, 432adjusted for automounter paths, while avoiding mount points. 433 434- two new switches to amq: -U will force using UDP only; -T will force using 435only TCP to communicate with amd. If neither (or both) are specified, amq 436will try TCP first, and if that failed, will try UDP. 437 438- support syslog facilities, using "amd -l syslog:facility". Old behavior 439when using only -l syslog is to use the LOG_DAEMON facility. 440 441- you may specify browsable_dirs=full, to get a listing of all entries 442(other than /default), including those with '*' wildcard and '/' 443characters. 444 445- amd -D trace now also includes as much of struct nfs_args as can be 446displayed. Useful in figuring out what the kernel really gets during a 447mount(2), as opposed to what the /etc/mnttab file says. -D trace also 448traces the xdr_* functions. 449 450- support for versions of shared libamu version. upped version from 0.0.0 451to 1.0.0. each am-utils release that will change the library will also 452update its version. 453 454- amd/ops_TEMPLATE.c: a new template file for those brave enough to try and 455implement a new amd file system. Includes comments and other info useful 456for developers. 457 458- if localconfig.h exists in the current directory during the run of 459configure, it is included in all am-utils sources. This allows courageous 460developers to make certain modifications during compilations, and especially 461turn off undesired features (not very recommended). 462 463- documentation types and updates for all new features, ports, etc. 464 465- bugs fixed: 466 support NFS mount options grpid and maxgrps 467 nextstep: set NFS success code to 0 (NFS_OK), not 1 (EPERM) 468 bsdi2: set NFS success code to 0 (NFS_OK), not 1 (EPERM) 469 set NFS V.3 mount table names to "nfs" if vers/proto exist 470 use mkstemp() if possible (more secure) 471 ctl-amd looks for amd.conf in ${prefix}/etc after /etc 472 hpux: use "ignore" mount table type 473 openbsd2.2: turn off "noconn" mount option, so only connected used 474 fixed memory leak in hlfsd (don't setpwent after endpwent) 475 all NFS3 systems should have proto/vers mount/amd options 476 DEBUG_MEM compiles and prints something more useful 477 uninit_mntfs(): free() mf_private *after* it is used 478 browsable_readdir: fewer bytes sent back to kernel for each chunk 479 mount_toplvl: don't free() an automatic variable! 480 amd should chdir() to / before daemonzing (for core dumps etc) 481 cdfs should be called 'cdfs' not whatever the mnttab type is 482 amd -v: don't print "FS:" list twice when >=2 net interfaces 483 484*** Notes specific to am-utils version 6.0a14: 485 486- updated ports: 487 powerpc-ibm-aix4.2.1.0: NFS V.3 works 488 489- minor new ports: 490 sparc-sun-sunos4.1.3C 491 m68k-sun-sunos4.1.1 (sun3) 492 mips-sgi-irix5.2 493 494- new option to amd, -O ARG, will override the operating systems *name* with 495ARG. Corrected documentation for amd -o ARG --- it overrides the operating 496system *version* and not the name as the docs incorrectly stated. 497 498- logging now behave more like syslog: will not print repeated strings, but 499rather a count such as "last message repeated N times". (N will not exceed 500100.) 501 502- restructured the code which deals with the numerous possible fields and 503flags that are set in struct nfs_args. That code was moved to libamu as 504the functions compute_nfs_args() and compute_automounter_nfs_args(). 505 506- bugs fixed: 507 mnttab name ufs/cdfs/pcfs/etc filesystems corrected 508 use pmap_ping for amq (a must for secure portmappers, bsdi2/3) 509 test for xfs (irix) as a disk-based filesystem 510 set correct nfs_prot headers for Solaris 2.5 511 removed stale code from lostaltmail.in 512 lostaltmail will look for conf file in multiple locations 513 assorted documentation corrections 514 amq does not print "get_secure_amd_client" if run as root 515 516*** Notes specific to am-utils version 6.0a13: 517 518- new in_network(ARG) nomadic selector, true if ARG is the name (or number) 519of any of this host's network interfaces. 520 521- removed variables primnetname, primnetnum, subsnetname, and subsnetnum. 522(Kept "wire" and its alias "network", and "netnumber".) 523 524- include am-utils.dvi and am-utils.ps in distribution. 525 526- hlfsd supports new option -P ARG, for reading password map off of file 527ARG. Allows you to use the hlfs redirector using paths other than user's 528home directories. 529 530- use a replacement yp_all for some systems (irix) known to have a broken 531one which leaks a file descriptor each time called. 532 533- if remote NFS server is down or does not support portmap, downgrade 534machine to NFS V.2 and retry again later. 535 536- bugs: 537 don't redefine yywrap on systems using a modified flex 538 use correct "ignore" mnttab/mount option on hpux for df(1) 539 use nfs_args' fsname field (hpux) to avoid syncer/mount(1) problems 540 don't add ops_ufs.o twice to Makefile's $(OBJS) 541 don't fail if autofs listener fails to initialize 542 hlfsd should test if run as root after usage() and getopt 543 544- minor code cleanups for netbsd 545 546- html docs now in http://www.am-utils.org 547 548- added README file in binaries ftp directory 549 550*** Notes specific to am-utils version 6.0a12: 551 552- minor or updated/broken ports fixed: 553 hppa1.1-hp-hpux10.10: compiles, untested (probably works). 554 hppa1.1-hp-hpux9.05: compiles, untested (probably works). 555 hppa1.1-hp-hpux9.07: compiles, untested (probably works). 556 m68k-hp-hpux9.00: compiles, untested (probably works). 557 rs6000-ibm-aix4.1.4.0: compiles, untested. 558 sparc-sun-solaris2.6: works w/ NFS V.3. 559 sparc-sun-sunos4.1.4: compiles, untested (probably works). 560 561- new ports: 562 powerpc-ibm-aix4.2.1.0: compiles w/ NFS V.3, untested. 563 564- wire-test also checks for combinations of NFS protocol/version from the 565client to a remote (or local) host. 566 567- conf/mtab/mtab_file.c: use flock() to lock the file, and fcntl() if 568flock() is not available. (Used to prefer fcntl() over flock().) 569 570- bug fixes: 571 tli get_nfs_version() gets into an infinite loop 572 tli get_nfs_version() should time out faster 573 sockets get_nfs_version() should work w/ secure portmappers 574 ESTALE returned for NFS mounts for SunOS 4.x fixed 575 do not exceed HOSTNAMESZ for nfs_args.hostname (get ENAMETOOLONG) 576 properly initialize some mntent_t fields (fsck, freq, mnt_time) 577 properly initialize some pcfs_args fields (mask, uid, gid) 578 properly initialize some cdfs_args fields (ssector) 579 580*** Notes specific to am-utils version 6.0a11: 581 582- bug fixes: 583 amd could not NFS mount v.2 servers from v.3 clients 584 hlfsd will only use first occurrence of home dir for same uid 585 586*** Notes specific to am-utils version 6.0a10: 587 588- MAJOR DOCUMENTATION UPDATE! (first time in 6 years) 589 590- new ports: 591 m68k-next-nextstep3: configures, compiles, not tested. 592 593- preliminary autofs support. See README.autofs for details. 594 595- new amd.conf [global] yes/no keywords: 596 show_statfs_entries: shows number of entries for df(1) 597 fully_qualified_hosts: use FQHN for NFS/RPC authentication 598 599- detect down remote hosts faster 600 601- log output of "amd -v" at startup 602 603- removed $osver override for solaris: now it is 2.5.1, not 5.5.1 604 605- buildall will use gmake first if available 606 607- bugs fixed: 608 amd core dumped when remote host was down 609 allow up to 1024 entries back from readdir() 610 amd.conf works even if only [global] option defined 611 avoid using bad memcmp() implementations 612 fixed meaning of plock [global] option (was reversed) 613 hlfsd infinite loop unless compiled with --enable-debug 614 NIS code works with NIS+ servers in NIS compatibility mode 615 reset tag fields in amd.conf so they don't carry to other entries 616 617*** Notes specific to am-utils version 6.0a9: 618 619- new ports: 620 sparc-sun-solaris2.4: 621 configures/compiles, and runs (no NFS V3) 622 i386-unknown-openbsd2.1: 623 configures/compiles, runs (NFS V3) 624 625- updated ports: 626 i486-ncr-sysv4.3.03: configures/compiles, not tested 627 628- Multiple amd support: new amd.conf [global] key "portmap_program" can be 629used to specify an alternate RPC program number for amd to un/register. 630Allowed numbers range from 300019 to 300029. A matching new option for amq: 631-P prognum, will use an alternate program number to contact. 632 633- man pages: 634 amd.conf.5 new 635 mk-amd-map.8 new 636 amd.8 updated 637 amq.8 updated 638 (other man pages required minor updates) 639 640- shared libraries support expanded. Using GNU libtool-1.0. You can build 641a shared version of libamu, and link with it accordingly, by specifying 642--enable-shared to configure. Default is --enable-static --disable-shared, 643and you can mix and match. See "INSTALL" file for listing of systems on 644which shared libraries seem to build and work fine. 645 646- new option: amq -p, will return the PID of the running amd (local or 647remote). Uses a new RPC message. Useful especially in "ctl-amd stop". 648 649- new configure script options --enable-ldflags, for specifying -L flags. 650The older --enable-libs is to be used only for -l options. 651 652- two new LDAP map options for amd.conf: ldap_cache_seconds and 653ldap_cache_maxmem. 654 655- new script, am-eject from Debian linux's version of amd-upl102. 656 657- additional passwd map support using var[0-3], from Debian folks. 658 659- hesiod code cleanup. works for hesiod 1.3 as well as 3.0. 660 661- removed defunct -h option from amd. 662 663- started using automake-1.2. This fixed several bugs that caused some 664versions of yacc/lex and non-GNU make to fail. 665 666- bug fixes: 667 amd/hlfsd mounts should be hidden from df(1) 668 use "noconn" option for nfs mounts (multi-homed hosts) 669 don't use connected sockets on linux before 1.3.10 (from Debian) 670 better checks for [gn]dbm 671 forbid excessive retries after timeouts (from Debian) 672 readdir(): don't skip over map entries with prefix, and include it 673 more assorted linux fixes from Debian folks 674 lofs mount on svr4 was broken 675 find default value of $karch from uname() not $arch 676 hlfsd failed to mount itself on some little-endians 677 678 679*** Notes specific to am-utils version 6.0a8: 680 681- new ports: 682 i386-unknown-netbsd1.2.1: configures/compiles (with NFS V.3), works, 683 but some OS stability problems exist. 684 685- updated ports: 686 hppa1.1-hp-hpux9.01: 687 now tested and working 688 rs6000-ibm-aix3.2 and rs6000-ibm-aix3.2.5: 689 now tested and working 690 691- fixed browsable directories (readdir) code. 692 693- better methods to find amd/hlfsd pid to kill in ctl-{amd,hlfsd} 694 695- "ignore/auto" mount types fixed for irix, sunos, and others, so "df" does not 696show amd mounts by default (but GNU df -a does). 697 698- each time amd is built, a new "build" version is incremented. See amd -v. 699 700- man page for fsinfo added 701 702- empty fillers for new file (bsd44) systems: nullfs, unionfs, umapfs. 703 704- when amd is not running, or portmapper is down, make amq timeout faster (5 705sec) than system default, usually 4-5 minutes. 706 707- bug fixes: 708 hlfsd mount got "protocol not supported" 709 first regular map in amd.conf didn't inherit global options 710 make "bad" versions of lex still work with amd/conf_parse.l 711 check for 'nodev' option, not 'nondev' 712 typo in "ro" option, and fillers to ac{reg,dir}{min,max} and others 713 amd.conf parsing done before switching default log/debug options 714 allow doubly-quoted values in amd.conf 715 hesiod-reload code cleanup 716 717- assorted code cleanup 718 719 720*** Notes specific to am-utils version 6.0a7: 721 722- new ports: 723 i386-unknown-freebsd3.0: 724 fully functional with NFS V.3 725 sparc-sun-solaris2.3: 726 fully functional (should work for 2.4) 727 sparc-unknown-netbsd1.2E: 728 configures/compiles (with NFS V.3), untested 729 730- updated ports: 731 i386-pc-bsdi3.0: 732 NFS V.3 works 733 look for hesiod in libc 734 mips-sgi-irix5.3: 735 fully functional with NFS V.3 736 737- LDAP support! New [global] amd.conf options ldap_base and ldap_hostports. 738Also includes a new script amd2ldif to convert amd maps into plain text LDAP 739object files. 740 741- the following amd.conf variables: browsable_dirs, map_options, map_type, 742mount_type, and search_path --- can now be specified in [global] as well as 743the map entry itself. That way you can declare them only once in [global], 744and override them as needed per map. 745 746- option "cluster" added to [global] (HPUX clusters ala "amd -C"). 747 748- assorted info_hesiod map fixes and cleanup. removed HESIOD_RELOAD code. 749 750- added netgrp(name) function to amd map syntax to see if current host is in 751the <name> netgroup. 752 753- removed unused option "amd -m". 754 755- filled in "tasks" file with todo items. 756 757- filled "COPYING" file with legal stuff. 758 759- cleanup: all global variables are now in one big structure (struct 760amu_global_options) that's easy to identify and enhance. Also migrated 761several flags that used be an integer each into one unsigned integer that's 762used as a bit-flag. 763 764- big fixes: 765 xdr_mountres3 should compile only if has NFS V3 766 lex/yacc macros show full pathname (to tell if correct one runs) 767 misc fixes/cleanup 768 769 770*** Notes specific to am-utils version 6.0a6: 771 772- amd configuration file! 773 774See scripts/amd.conf-sample for help and some explanation. This new conf 775file allows for the following new features: 776 777 default selectors can be turned on/off globally. 778 browsable_dirs/readdir() support can be turned on per map. 779 search paths for file type maps. 780 can force the map type to file, nis, ndbm, etc. rather than default 781 to looking at all of them. 782 tag each map for "amd -T tag", useful for grouping maps. 783 can override $os and others (so if you don't like "sunos5" default 784 naming, set os=sos5 and it will work with your old maps). 785 and more goodies... 786 787- enable-default-selectors: No longer turned on by the configure script or 788optionally compiled. Code made dynamic and can be turned on or off from the 789amd.conf file. This code is off by default, and must be turned on by 790amd.conf's [global] section. 791 792- new ports: 793 mips-sgi-irix5.3: configure/compile, not tested 794 i486-ncr-sysv4.3.03: configure/compile, not tested 795 796- updated ports: 797 alpha-dec-osf4.0: major code redone 798 sparc-sun-sunos4.1.3: fixed and working 799 mips-sgi-irix6.2: tested with gcc and "cc -32 -Wl,-woff,84" 800 mips-sgi-irix6.4: tested with gcc and "cc -32 -Wl,-woff,84" 801 802- better NFS3 port, including more support for proto= and vers=, and 803automatic determination of proto/vers combination. 804 805- conf/nfs_prot/nfs_prot_*.h: all of the NFS protocol header files had to be 806redone, because of the osf4 port. OSF used very different names for these, 807and they conflicted with am-utils'. The only solution was to more or less 808conform to OSF4's naming, and change all the others. 809 810- ctl-amd script: 811 improved to look for amd.conf in $prefix/etc and /etc 812 better methods for finding the pid of amd to kill 813 814- autoconf support for LDAP. amd/info_ldap.c needs to be written. 815 816- wire-test also reports the local IP address. Some systems have multiple, 817buggy version of get_myaddress(), esp. SunOS and Irix. Note that Solaris 818x86 has a buggy htonl(). 819 820- amd -H prints usage. 821 822- bugs fixed: 823 minor TLI problem in fwd_socket 824 mount options properly comma delimited 825 LIBS is set only to the right set of libraries to include 826 selectors-on-default code ignored last selector ent in /defaults 827 assorted code cleanups 828 829 830*** Notes specific to am-utils version 6.0a5: 831 832- NFS Version 3 support!!! 833 834 Works on Solaris 2.5.1. 835 Minimal testing done on Irix 6. 836 Compiles cleanly on DU-4.0 but no tests performed. 837 838Will fall back to V2 mounts when V3 is not available. Will also use TCP if 839possible, UDP otherwise. 840 841- Ports to new platforms: 842 843 alpha-dec-osf4.0 (not tested) 844 i386-pc-bsdi3.0 (tested and working) 845 i386-unknown-freebsd2.2.1 (tested and working) 846 sparc-unknown-linux-gnu (tested and working) 847 848- New scripts added: 849 850 amd2sun: convert amd maps to Sun automount maps 851 ctl-amd: script to start/stop/restart amd 852 ctl-hlfsd: script to start/stop/restart hlfsd 853 expn: expand mail alias (used by hlfsd) 854 lostaltmail: redeliver "lost" mail redirected by hlfsd 855 lostaltmail.conf-sample: sample conf file for lostaltmail 856 wait4amd: run a command once amd is up on a host 857 wait4amd2die: wait for an amd process to die before returning 858 859- "amd -v" now includes more info and "amq -v" lists all of it. 860 861- new parser for linux specific mount options. 862 863- Main bugs fixed: 864 865 "new toplvl readdir" bug caused amd to dump core 866 handler for SIGCHLD didn't check for all possible children 867 hlfsd leaking file descriptors when home file system was full 868 cdfs/pcfs mounts should not timeout by default 869 hesiod domain names should be compared in case-insensitive manner 870 several printfs in amq were missing \n 871 872 873*** Notes specific to am-utils version 6.0a4: 874 875- amd services both TCP and UDP amq requests. This will help because of the 876limited UDP message size. 877 878- "amq -M" code is disabled by default because it is insecure. It is 879rarely used. Users who wish to use it should run 880"configure --enable-amq-mount". 881 882 883*** Notes specific to am-utils version 6.0a3: 884 885- New tested ports (configures, compiles, and runs): 886 887 i386-unknown-freebsd2.2 888 889- New ports (configures and compiles correctly, not tested): 890 891 rs6000-ibm-aix3.2.5 892 rs6000-ibm-aix4.1.5.0 893 894- More am-utils programs ported to all existing platforms: hlfsd, fsinfo, 895mk-amd-map, and fixmount. 896 897- Shared libraries: a new configure option --enable-shared will build a 898shared libamu.so, link applications with it, and use it. Reduces binary 899sizes by 20-30%. This is the first step towards loadable modules, as many 900changes had to be done to be able to compile and use PIC code. This is code 901that obviously needs to be generalized to be able to build shared libraries 902on many other platforms. It was only tested on Solaris 5.5.1. 903 904- the file INSTALL contains the latest compatibility table of which 905platforms am-utils configures, compiles and runs on. 906 907- Trimmed down the size of the configure script. Some tests that are not 908used anywhere were removed. 909 910 911*** Notes specific to am-utils version 6.0a2: 912 913- New ports (configures and compiles correctly, not tested): 914 915 i386-pc-bsdi2.1 916 hppa1.1-hp-hpux9.01 917 hppa1.1-hp-hpux10.20 918 919- new configure options: 920 921 --enable-cppflags[=ARG] 922 configure/compile with ARG (-I) preprocessor flags 923 --enable-libs[=ARG] 924 configure/compile with ARG (-L/-l) library flags 925 926- filesystem, mount table entries, and mount type tests can now look in 927/lib/modules and /proc/filesystems for statically/dyadically loadable kernel 928modules (linux) 929 930- prefer vfat over msdos/pc/etc filesystem for PCFS. 931 932- moved all fixed headers to include/am_defs. Left only #define/#undef 933entries in aux/acconfig.h. 934 935- make more sense of systems that have full, partial, or no NFS protocol 936headers. 937 938- minor fixes for NetBSD (untested platform). 939 940- hesiod map fixed. 941 942- buildall -D: new option to run even stricter developer options. 943 944- lots of other bugs fixed (see ChangeLog). 945 946 947*** Notes specific to am-utils version 6.0a1: 948 949I have it configure and build correctly for the following systems: 950 951 i386-pc-solaris2.5.1 952 i386-unknown-freebsd2.1.0 953 mips-sgi-irix6.2 954 sparc-sun-solaris2.5.1 955 sparc-sun-sunos4.1.3 956 957Amq, wire-test, and "amd -v" work on all of the above. A real running amd 958was only tested and confirmed working on 959 960 i386-pc-solaris2.5.1 961 sparc-sun-solaris2.5.1 962 963Many things are still missing: options, features, etc. But for now, let's 964concentrate on getting the basic functionality working on the more popular 965systems. 966