]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/amd/ChangeLog
This commit was generated by cvs2svn to compensate for changes in r51728,
[FreeBSD/FreeBSD.git] / contrib / amd / ChangeLog
1 1999-09-22  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2
3         * released snapshot am-utils-6.0.2s2
4
5         * aux/configure.in: bumped library version-info to 3:2:1, since
6         some libamu code got changed.
7
8         * libamu/xutil.c (real_plog): use vsnprintf, not vsprintf, which
9         is better and more secure.  Fix from "David O'Brien"
10         <obrien@NUXI.com>.
11
12         * aux/configure.in: check for vsnprintf.
13
14 1999-09-21  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
15
16         * aux/macros/linux_headers.m4: use AC_MSG_ERROR.
17
18         * aux/macros/opt_{cppflags,ldflags,libs,amu_cflags}.m4: the ARG is
19         not optional.  Make sure ARG is supplied else flag an error.
20
21 1999-09-18  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
22
23         * minor port i386-unknown-freebsdelf3.3
24
25         * released snapshot am-utils-6.0.2s1
26
27 1999-09-17  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
28
29         * aux/configure.in (AC_CHECK_FUNCS): check for getitimer().
30
31         * include/am_defs.h: extern definition for getitimer().
32
33         * aux/configure.in: use AC_CHECK_EXTERNS.  Look for getitimer()
34         extern.
35
36         * aux/macros/check_extern.m4: define a simple AC_CHECK_EXTERNS
37         that calls AC_CHECK_EXTERN in a loop.  This saves repeated code in
38         configure.
39
40         * aux/macros/type_auth_create_gidlist.m4: AIX 4.x systems use
41         'int' as the 5th arg to authunix_create().
42
43         * aux/macros/type_recvfrom_fromlen.m4: all AIX 4.x systems use a
44         size_t for the 6th arg of recvfrom().
45
46         * aux/macros/os_cflags.m4: define _XOPEN_EXTENDED_SOURCE for
47         aix4.x systems.
48
49         * libamu/mount_fs.c (print_nfs_args): cast some values to int, to
50         avoid gcc -Wall errors.
51
52         * scripts/expn.in: use sockaddr_in(), not pack() to correctly fill
53         in a struct sockaddr_in.  On Solaris x86 hosts, using pack()
54         results in byte-misaligned values.   Bug fix from Jeffrey C Honig
55         <jch@BSDI.COM>.
56
57         * libamu/mount_fs.c (compute_automounter_mount_flags): turn on
58         automntfs (ignore on bsdi-4.1) flag.
59         (compute_automounter_nfs_args): ditto.
60
61         * aux/acconfig.h: add new flag for automntfs (ignore)
62
63         * aux/configure.in: check for new automntfs flag (bsdi-4.1).
64
65 1999-09-14  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
66
67         * MIRRORS: added new site in Germany.  Updated status of umn.edu
68         and ferginc.com, who may no longer be mirroring am-utils.
69
70 1999-09-08  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
71
72         *******************************************************************
73         *** Released am-utils-6.0.1                                     ***
74         *******************************************************************
75
76 1999-09-08  Erez Zadok  <ezk@cs.columbia.edu>
77
78         * aux/macros/mount_headers.m4: bsdi-2.1 needs MAXQUOTAS and struct
79         netexport defined.
80
81         * aux/macros/try_compile_anyfs.m4: bsdi-2.1 needs MAXQUOTAS and
82         struct netexport defined.
83
84 1999-09-07  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
85
86         * aux/macros/check_field.m4 (ac_upcase_var_name): include
87         <ifaddrs.h> so we can detect fields within struct ifaddrs.
88
89         * libamu/wire.c (getwire): bsdi-2.1 uses a second arg to
90         getifaddrs() and struct ifaddrs has no ifa_next field.
91
92         * aux/configure.in: check if 'struct ifaddrs' has a field
93         ifa_next.
94
95         * include/amq_defs.h (AMQ_STRLEN): double size of amq string
96         length to 2048 bytes.
97
98         * conf/nfs_prot/nfs_prot_netbsd1_4.h: include several more nfs
99         header files and ufs/ufs/ufsmount.h.  Bug reported by <Christos
100         Zoulas> christos@zoulas.com.
101
102         * aux/macros/try_compile_anyfs.m4: include <ufs/ufs/ufsmount.h>.
103         Bug reported by <Christos Zoulas> christos@zoulas.com.
104
105         * aux/macros/mount_headers.m4: include <ufs/ufs/ufsmount.h>
106
107 1999-09-06  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
108
109         * libamu/xutil.c (expand_error): use strerror if available instead
110         of sys_errlist.  Bug reported by <Christos Zoulas>
111         christos@zoulas.com.
112
113         * hlfsd/hlfsd.c (fatal): use strerror if available instead of
114         sys_errlist.
115
116         * amq/amq.c (show_mi): use strerror if available instead of
117         sys_errlist.
118
119         * aux/macros/check_nfs_prot_headers.m4: make sure netbsd1.4
120         nfs_prot header is used for any future (1.5 etc.) netbsd systems.
121
122         * amq/pawd.c (find_mt): check for type nfsl as well.  Fix from
123         "Andrew J. Korty" <ajk@purdue.edu>
124
125 1999-08-29  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
126
127         * doc/am-utils.texi (Supported Platforms): updates for redhat
128         systems.
129
130         * INSTALL: updates for redhat systems.
131
132         * libamu/wire.c (getwire_lookup): spell "succeeded" correctly
133
134 1999-08-28  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
135
136         * scripts/ctl-amd.in: sleep 1 second between killing amd and
137         restarting it, because amq may respond that amd is down, where in
138         fact it is still trying to unmount itself after unmapping itself
139         from the portmapper.
140
141         * aux/config.guess.long: new script to print long version of
142         config.guess output.
143
144         * buildall (host_alias): use long version of config.guess.
145
146 1999-08-27  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
147
148         * scripts/ctl-{amd,hlfsd}.in: update RH tags for start/stop
149         scripts.
150
151 1999-08-24  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
152
153         * released snapshot am-utils-6.0.1s11
154
155         * libamu/xutil.c (expand_error): make sure expanding the string
156         with textual version of errno doesn't overrun the 1024 bytes
157         buffer.
158         (real_plog): null terminate msg, just in case.
159
160         * amq/amq.c (main): don't getopt -M option and don't process it
161         unless ENABLE_AMQ_MOUNT is on.
162
163         * amd/amq_svc.c (amq_program_1): all code that relates to amq -M
164         is conditional on #ifdef ENABLE_AMQ_MOUNT.
165
166         * amd/amq_subr.c: remove amqproc_mount_1_svc() function invoked
167         when amq -M code is disabled.  Not taking any chances.
168
169 1999-08-23  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
170
171         * released snapshot am-utils-6.0.1s10
172
173 Sun Aug 22 16:18:59 1999  Erez Zadok  <ezk@subzero.cs.columbia.edu>
174
175         * libamu/wire.c (getwire_lookup): if getnetbyaddr failed (e.g., on
176         128.59.16.0), try to shift the network out of zeros (e.g.,
177         128.59.16) and try again.  Irix 6.4 requires short network
178         numbers.
179
180 1999-08-22  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
181
182         * libamu/wire.c (getwire_lookup): correctly compute subnet using
183         netmask.
184
185         * libamu/mount_fs.c (compute_automounter_nfs_args): require that
186         Amd's own NFS mounts use reserved ports (if possible).  IP packet
187         security fix from Jeffrey C Honig <jch@BSDI.COM>.
188
189         * conf/transp/transp_tli.c (create_autofs_service): use correct
190         autofs_port.  IP packet security fix from Jeffrey C Honig
191         <jch@BSDI.COM>.
192
193         * conf/transp/transp_sockets.c (bindnfs_port): remove unnecessary
194         function.  IP packet security fix from Jeffrey C Honig
195         <jch@BSDI.COM>.
196         (create_nfs_service): use bind_resv_port() directly.  ensure that
197         privileged ports are used.  IP packet security fix from Jeffrey C
198         Honig <jch@BSDI.COM>.
199
200         * amd/nfs_prot_svc.c (nfs_program_2): verify that requests come
201         from reserved ports and from a local IP address.  IP packet
202         security fix from Jeffrey C Honig <jch@BSDI.COM>.
203
204         * amd/amq_subr.c (ok_security): use IPPORT_RESERVED, instead of
205         hard-coded 1024.  IP packet security fix from Jeffrey C Honig
206         <jch@BSDI.COM>.
207         (amqproc_mount_1_svc): provide information on the caller making an
208         amq -M request.  IP packet security fix from Jeffrey C Honig
209         <jch@BSDI.COM>.
210
211         * amd/map.c (free_map_if_success): If the program doing an unmount
212         of a program filesystem fails, amd tries to interpret the return
213         code as an errno.  Fix from Jeffrey C Honig <jch@BSDI.COM>.
214
215         * amd/info_nis.c (determine_nis_domain): don't always print
216         warning about NIS domain name not being set, even if NIS is not in
217         use.
218
219 1999-08-21  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
220
221         * amd/info_ldap.c (get_ldap_timestamp): initialize variable err.
222         (amu_ldap_search): initialize variable err.
223
224 1999-08-16  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
225
226         * libamu/wire.c: written using getifaddrs() for BSD systems,
227         contributed by BSDI, Jeffrey C Honig <jch@BSDI.COM>).
228
229 1999-08-15  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
230
231         * include/am_utils.h (SALLOC): a simple macro to allocate N bytes.
232
233         * aux/configure.in: check for irs.h and ifaddrs.h.
234         Increase libamu.so --version-info to 3:1:1 since we've changed the
235         source code for the library.
236         Check for getifaddrs() function.
237
238 1999-08-14  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
239
240         * libamu/mount_fs.c (print_nfs_args): print fields namlen and
241         bsize if they exist.
242
243         * conf/mount/mount_linux.c (mount_linux): set nfs_args_t->namlen
244         and ->bsize fields correctly, if those fields exist.  This is a
245         bug in that amd neglected to set these fields, but told the
246         kernel it is mounting the nfs_args_t structure using mount version
247         3 (which requires both bsize and namlen fields).
248
249         * aux/configure.in: test for two new nfs_args_t fields (used on
250         newer linux with mount versions 2 and 3): bsize and namlen.
251
252         * doc/am-utils.texi (netgrpd Selector Function): document new
253         selector function.
254
255         * amd/opts.c (f_netgrpd): new amd map function netgrpd(ARG) to
256         test if the current host (fully-qualified name) is in the ARG host
257         netgroup.  The netgrp() function uses the short form of a host
258         name.  Patch from Christophe Kalt <Christophe-Kalt@deshaw.com>.
259
260         * doc/am-utils.texi (automount2amd): document new script.
261
262         * scripts/Makefile.am: create, install, and distribute
263         automount2amd perl script and its man page.
264
265         * scripts/automount2amd.8: new man page for automount2amd.
266
267         * scripts/automount2amd.in: new file, contributed a in 1993 by
268         Mike Walker <mike@tab00.larc.nasa.gov>.  Fixed to use addopts for
269         any automount map options specified.
270
271 1999-08-09  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
272
273         * released snapshot am-utils-6.0.1s9
274
275 1999-08-09  Erez Zadok  <ezk@beetle.mcl.cs.columbia.edu>
276
277         * amd/amfs_auto.c (DOT_DOT_COOKIE): set the NFS cookie of '..' to
278         1.
279         (amfs_auto_readdir): use DOT_DOT_COOKIE instead of (u_int)~0.
280         (amfs_auto_readdir_browsable): use DOT_DOT_COOKIE instead of
281         (u_int)~0.
282
283         * amd/mapc.c (make_entry_chain): NFS cookies should be
284         monotonically increasing, because Linux 2.3 expects that, even
285         though it is not in the spec (RFC-1094) for NFS V2.
286
287 1999-08-06  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
288
289         * aux/macros/check_lib_funcs.m4: removed unused macro.
290
291         * aux/macros/linux_headers.m4: new macro to ensure that linux
292         kernel headers match running kernel version.
293
294         * aux/acconfig.h: define HOST_HEADER_VERSION so we can check if
295         amd is configured on linux hosts that run one kernel but have
296         headers for a different version.
297
298         * amd/info_nis.c (nis_isup, nis_search, nis_init): fixes for the
299         logic which uses nis_isup and has_yp_order.  Make sure it is used
300         correctly , esp. for NIS+ in NIS-compatibility mode.  Bug fix from
301         Peter Breitenlohner <peb@mppmu.mpg.de>.
302
303         * include/am_defs.h: fix conflicts on linux 2.2 systems with older
304         libc5.  Bug fix from Peter Breitenlohner <peb@mppmu.mpg.de>.
305
306         * scripts/lostaltmail.in: use sockaddr_in(), not pack() to
307         correctly fill in a struct sockaddr_in.  On Solaris x86 hosts,
308         using pack() results in byte-misaligned values.
309
310 1999-08-02  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
311
312         * conf/mtab/mtab_aix.c (mnt_dup): add support for nfs3
313         mounting, as per Dale Talcott <aeh@quest.cc.purdue.edu>.  Also use
314         better macros for case statement.
315
316         * conf/nfs_prot/nfs_prot_sunos5_7.h: don't include ldap structures
317         unless ldap is actually available.
318
319         * use updated config.guess and config.sub.  Use newer automake
320         that fixes problems with distributing optional libamu files
321         (clnt_sperrno.c, hasmntopt.c, strcasecmp.c, strdup.c, strstr.c,
322         and ualarm.c)
323
324 1999-07-19  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
325
326         * minor port i386-unknown-openbsd2.5
327
328 1999-07-17  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
329
330         * minor ports to freebsdelf 3.[0-2] and 4.0 completed
331
332         * aux/macros/check_nfs_prot_headers.m4: support freebsdelf
333
334         * aux/macros/check_nfs_socket_connection.m4: support freebsdelf
335
336 1999-06-24  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
337
338         * released snapshot am-utils-6.0.1s8
339
340 1999-06-23  Erez Zadok  <ezk@beetle.mcl.cs.columbia.edu>
341
342         * include/am_defs.h: avoid various header conflicts on
343         RedHat/Linux 6.0 and kernels 2.2.10 or newer.
344
345         * aux/configure.in: look for <db1/ndbm.h> (RedHat/Linux 6.0 and
346         kernel 2.2.10)
347
348         * amd/amfs_program.c (amfs_program_exec): make sure logfp is
349         initialized dynamically to stderr if needed.
350
351         * libamu/xutil.c (dplog): make sure logfp is initialized
352         dynamically to stderr if needed.
353         (plog): ditto.
354
355         * amd/amfs_program.c (amfs_program_exec): set logfp to stderr if
356         not initialized.
357
358         * libamu/xutil.c: don't initialize logfp statically to stderr,
359         because on RedHat/Linux 6.0 (kernel 2.2.10) stderr can no longer
360         be manipulated like a variable.
361
362         * include/am_defs.h: avoid more conflicts between <linux/fs.h> and
363         <sys/mount.h> on 2.2 linux kernels.
364         include <db1/ndbm.h> as needed (RedHat/Linux 6.0)
365
366 1999-04-20  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
367
368         * all Makefile.am: use AMU_NFS_PROT_HEADER (not *_HEADERS)
369
370         * aux/macros/check_nfs_prot_headers.m4 (AMU_NFS_PROT_HEADER):
371         renamed AC_SUBST name from *_HEADERS to *_HEADER so that automake
372         won't attempt to add it to the header files to distribute.
373
374 1999-04-19  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
375
376         * aux/GNUmakefile: invoke aclocal with new --altdir flag.
377
378 1999-04-16  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
379
380         * minor new port: i386-unknown-netbsd1.4 (ALPHA)
381
382         * aux/macros/check_field.m4: no need to include <cdfs/cdfsmount.h>
383         and <isofs/cd9660/cd9660_mount.h> because they are also included
384         from MOUNT_HEADERS.  Causes multiple inclusion of unprotected
385         headers on netbsd-1.4_ALPHA.
386
387 1999-04-15  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
388
389         * aux/macros/extern_sys_errlist.m4 (pattern): netbsd-1.4_ALPHA's
390         sys_errlist extern doesn't end with [].
391
392         * aux/macros/check_nfs_prot_headers.m4: netbsd 1.4 support.
393
394 1999-04-11  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
395
396         * newer automake wants texinfo.tex to be in aux/ not doc/
397
398 1999-03-30  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
399
400         * amd/conf_parse.y: alloca support.
401
402         * fsinfo/fsi_gram.y: alloca support.
403
404         * libamu/Makefile.am (libamu_la_LIBADD): compile alloca.o if
405         needed.
406
407         * aux/configure.in: test for alloca support.  Needed because bison
408         generates parsers that use alloca, and hpux9 does have alloca and
409         its /bin/cc doesn't support it builtin (the way gcc does).
410
411         * libamu/alloca.c: new file, needed on hpux9 with /bin/cc.  Taken
412         verbatim from bison-1.25.
413
414         * include/am_defs.h: fixed typo #errir -> #error
415
416         * released snapshot am-utils-6.0.1s7
417
418         * README.y2k: more information about am-utils' compatibility, from
419         Paul Balyoz <pbalyoz@sedona.ch.intel.com>.
420
421         * scripts/lostaltmail.in (Splice_in_resent_headers): ensure Y2K
422         compliant format.  Patch from Paul Balyoz
423         <pbalyoz@sedona.ch.intel.com>
424
425         * doc/am-utils.texi (Supported Platforms): hpux10.20 could have
426         nfs v.3 support (with some vendor patches), but it is turned off.
427
428         * aux/macros/os_cflags.m4: use ansi compiler options on hpux.
429
430         * conf/nfs_prot/nfs_prot_hpux.h: Turn off NFS V.3 support to avoid
431         confusing am-utils.  10.20 with some patches has incomplete
432         support.  Patch from Jon Peatfield
433         <J.S.Peatfield@damtp.cam.ac.uk>.
434
435 1999-03-24  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
436
437         * minor port i386-pc-bsdi4.0.1
438
439 1999-03-20  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
440
441         * doc/am-utils.texi (Supported Platforms): add forgotten listing
442         for powerpc-linux.
443
444 1999-03-18  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
445
446         * scripts/amd.conf.5: fix typo.  From Jeffrey C Honig
447         <jch@BSDI.COM>.
448
449         * doc/am-utils.texi: document iso9660 options norrip, gens, and
450         extatt.
451         (opts Option): documented dumbtimr and noauto options.  From
452         Jeffrey C Honig <jch@BSDI.COM>.
453
454         * include/am_compat.h: define default strings for options norrip,
455         gens, and extatt.
456
457         * amd/ops_cdfs.c (mount_cdfs): support options norrip, gens, and
458         extatt.
459
460         * aux/macros/mount_headers.m4: also include
461         <isofs/cd9660/cd9660_mount.h> as needed.
462
463         * aux/configure.in: check for isofs mount options for bsdi4:
464         norrip, gens, and extatt.  Reported by Jeffrey C Honig
465         <jch@BSDI.COM>.
466
467         * aux/macros/check_mnt2_cdfs_opt.m4: check for ISOFSMNT_* flags
468         (bsdi4).
469
470 1999-03-17  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
471
472         * conf/nfs_prot/nfs_prot_freebsd3.h: ditto.
473
474         * conf/nfs_prot/nfs_prot_bsdi3.h: include <ufs/ufs/ufsmount.h>,
475         for bsdi4, as per Jeffrey C Honig <jch@BSDI.COM>.
476
477 1999-03-15  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
478
479         * get latest copies of config.guess, config.sub, ltconfig, and
480         ltmain.sh from libtool-1.2f.
481
482         * all Makefile.am: don't use continuation lines (using \) for
483         short lists of files.
484
485         * libamu/Makefile.am (DISTCLEANFILES): make distclean should
486         remove mountutil.c, mtabutil.c, transputil.c, and umount_fs.c.
487         Reported by Jeffrey C Honig <jch@BSDI.COM>.
488
489         * fixmount/Makefile.am (DISTCLEANFILES): make distclean should
490         remove checkmount.c.  Reported by Jeffrey C Honig <jch@BSDI.COM>.
491
492         * Makefile.am (DISTCLEANFILES): make distclean should remove
493         amu_nfs_prot.h, config.cache.old, and dbgcf.h.  Reported by
494         Jeffrey C Honig <jch@BSDI.COM>.
495
496 1999-03-13  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
497
498         * released snapshot am-utils-6.0.1s6
499
500 1999-03-12  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
501
502         * INSTALL: document freebsdelf.
503
504         * doc/am-utils.texi (Supported Platforms): document freebsdelf.
505
506 1999-03-08  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
507
508         * minor new ports: i386-unknown-freebsdelf3.1 and
509         i386-unknown-freebsdelf4.0
510
511         * aux/macros/check_nfs_prot_headers.m4: freebsd4 support.
512
513         * aux/macros/check_nfs_socket_connection.m4: freebsd4 support.
514
515         * aux/macros/check_nfs_fh_dref.m4: freebsd4 support.
516
517         * amd/opts.c (eval_opts): changed log level of "executing
518         negated..." message from USER to INFO, as per Guntram Wolski
519         <gwolsk@sei.com>.
520
521 1999-02-17  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
522
523         * */Makefile.am (LDADD): force linking against an installed
524         libamu.{a,so}.
525
526         * doc/am-utils.texi (addopts Option): document remopts interaction
527         with addopts.
528
529         * amd/am_ops.c (ops_match): if addopts are specified, apply them
530         to the value of remopts as well as opts.
531
532         * amd/ops_nfs.c (mount_nfs_fh): tell users when remopts are used.
533
534 1999-02-05  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
535
536         * released snapshot am-utils-6.0.1s5
537
538         * conf/mount/mount_linux.c (mount_linux): set default nfs_args
539         options for ac{reg,dir}{min,man} as per the mount-2.8a package,
540         but only if noac option was not used.
541
542 1999-02-05  Erez Zadok  <ezk@retro.cs.columbia.edu>
543
544         * conf/mount/mount_linux.c (mount_linux): print nfs_args again
545         since it was updated.
546         (mount_linux): use 4KB for NFS rsize/wsize on 2.1.0 linux kernels
547         and newer.  Bug was found by Neil Conway
548         <nconway.list@ukaea.org.uk>
549
550 1999-02-04  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
551
552         * released snapshot am-utils-6.0.1s4
553
554 1999-02-03  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
555
556         * amq/amq.c (main): don't list -M as a valid amq option unless
557         configure'd with --enable-amq-mount.
558
559 Wed Feb  3 18:11:18 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
560
561         * amd/nfs_start.c (amd_use_autofs): Define.
562         (mount_automounter): Create autofs service listener only if
563         necessary to avoid unnecessary clashes with e.g. automountd.
564
565         * amd/amd.h (amd_use_autofs): Declare.
566
567         * amd/conf.c (gopt_mount_type): Set amd_use_autofs.
568         (ropt_mount_type): Likewise.
569
570 1999-02-02  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
571
572         * aux/macros/check_mnt2_nfs_opt.m4:: ditto
573
574         * aux/macros/check_mnt2_cdfs_opt.m4: ditto
575
576         * aux/macros/check_mnt2_gen_opt.m4: ditto
577
578         * aux/macros/check_mnttab_opt.m4: new macro in this file to loop
579         over AC_CHECK_MNTTAB_OPT.  Reduces size of configure script a lot.
580
581         * conf/nfs_prot/nfs_prot_netbsd1_3.h: include nfs/rpcv2.h,
582         nfs/nfs.h and nfs/nfsmount.h if they exist.  Patch from
583         christos@zoulas.com (Christos Zoulas).
584
585         * amd/info_hesiod.c: some forward declarations.  Patch from
586         christos@zoulas.com (Christos Zoulas).
587
588 1999-01-28  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
589
590         * libamu/mount_fs.c (compute_nfs_args): don't turn on/off noconn
591         option if it was already in that state.  Patch from David
592         Wolfskill <dhw@whistle.com>.
593
594 1999-01-20  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
595
596         * aux/configure.in: automake nowadays supports LTLIBOBJS (but not
597         LTALLOCA yet).  Substitute value of LIBTOOL_DEPS for libtool
598         rebuild make rules.
599
600         * Makefile.am: new rules to remake libtool (maintainers only)
601
602         * amd/amfs_toplvl.c (mount_amfs_toplvl): print generic mount flags
603         if -D trace was used.
604
605 1999-01-18  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
606
607         * buildall: all if statements should have an else clause because
608         of Ultrix's /bin/sh.
609
610 1999-01-15  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
611
612         * amq/amq.c: removed dummy variables.
613
614         * amq/pawd.c: removed dummy variable.s
615
616         * fixmount/fixmount.c (usage): removed dummy variables.
617
618         * fsinfo/fsinfo.c: removed dummy variables.
619
620         * hlfsd/hlfsd.c: removed dummy variables.
621
622         * wire-test/wire-test.c: removed dummy variables.
623
624         * mk-amd-map/mk-amd-map.c: removed dummy variables.
625
626         * doc/texinfo.tex: updates from GNU mirror.
627
628         * aux/GNUmakefile (../doc/texinfo.tex): new rule to update
629         doc/texinfo.tex from GNU mirror.
630
631         * released snapshot am-utils-6.0.1s3
632
633         * Makefile.am (install-snapshot): better snapshot and new
634         install-snapshot and test-snapshot rules (maintainer).
635
636         * amd/info_ldap.c (amu_ldap_init): don't run STREQ if one of the
637         args may be NULL.
638         Some dlog() entries were not enclosed in #ifdef DEBUG.  Fix from
639         Bill Paul <wpaul@ctr.columbia.edu>
640
641 1999-01-13  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
642
643         * check for experimental generic 'ignore' mount flag on freebsd3.
644
645         * Update library -version-info to 3:0:1 (will result in 2.1.0 .so
646         version, which is backwards compatible with older versions.)  Only
647         one new interface was added to libamu.
648
649         * amd/amfs_toplvl.c (mount_amfs_toplvl): add generic mount flags
650         that are specific to automounter mounts.
651
652         * aux/configure.in: update libamu.so age and revision since a new
653         interface was added to libamu/mount_fs.c
654         (compute_automounter_mount_flags).
655
656         * libamu/mount_fs.c (compute_automounter_mount_flags): new
657         function to compute generic mount flags that are specific to mount
658         points only.
659
660         * aux/{configure.in,acconfig.h}: add support for generic mount
661         entry ignore option.
662
663         * released snapshot am-utils-6.0.1s2
664
665         * amd/info_ldap.c (get_ldap_timestamp): dlog format fixes.
666
667         * libamu/mount_fs.c (print_nfs_args): solaris 2.7 changed format
668         of knc_semantics from u_long to u_int.
669
670         * aux/macros/check_mount_style.m4: freebsd3 no longer needs a
671         special mount helper.
672
673 1999-01-12  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
674
675         * aux/macros/check_nfs_prot_headers.m4 (AMU_NFS_PROT_HEADERS):
676         amu_nfs_conf.h should always be found in $top_builddir.
677
678 Tue Jan 12 00:05:42 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
679
680         * conf/nfs_prot/nfs_prot_sunos5_7.h (MNTTAB_TYPE_AUTOFS): Undefine
681         to avoid wrong reports from show_fstypes.
682
683         * conf/nfs_prot/nfs_prot_irix5.h (MNTTAB_TYPE_XFS): Likewise.
684
685         * conf/nfs_prot/nfs_prot_hpux11.h (MNTTAB_TYPE_NFS3): Likewise.
686
687 Tue Jan 12 00:05:42 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
688
689         * BUGS (mips-dec-ultrix4.3): Update Ultrix caveats.
690
691 Tue Jan 12 00:05:42 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
692
693         * hlfsd/homedir.c (delay): Cast child to long, adapt format.
694         (hlfsd_getpwent): Likewise for pw_uid.
695
696         * amd/info_nis.c (nis_init): Cast order to unsigned long, adapt
697         format. 
698
699         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): Cast
700         tv_sec to int to match format.
701         (get_nfs_version): Cast nfs_version, NFS_VERSION to int to match
702         formats. 
703
704         * amd/amfs_program.c (amfs_program_exec): Cast ptr difference to
705         long, adapt format.
706
707         * include/am_defs.h: Handle __attribute__ if available.  From
708         GNU fileutils 4.0 lib/errors.h.
709
710 Mon Jan 11 13:46:44 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
711
712         * libamu/mount_fs.c (print_nfs_args): Cast sizeof() to int to
713         match format.
714
715         * hlfsd/stubs.c (nfsproc_getattr_2_svc): Cast uid, gid to long,
716         adapt format.
717         (nfsproc_lookup_2_svc): Likewise.
718         (nfsproc_readlink_2_svc): Likewise for userid, groupid.
719
720         * hlfsd/nfs_prot_svc.c (nfs_program_2): Cast args to int to match
721         format.
722
723         * hlfsd/homedir.c (homedir): Cast uid, child to long, adapt
724         format. 
725
726         * amd/info_hesiod.c (hesiod_search): Cast m, pval, tp to unsigned
727         long, adapt format.
728
729         * amd/ops_nfs.c (find_nfs_fhandle_cache): Cast fh_wchan to
730         unsigned long, adapt format.
731         (got_nfs_fh): Likewise.
732         (prime_nfs_fhandle_cache): Cast fh_nfs_version to int to match
733         format. 
734         (call_mountd): Likewise, mnt_version also.
735         (mount_nfs_fh): Likewise.
736
737         * amd/ops_autofs.c (autofs_program_1): Cast args to int to match
738         format.
739         (autofs_unmount_1_svc): Cast ur->devid, ur_rdevid, ur->next to
740         unsigned long, adapt formats.
741         (autofs_bgmount): Cast opt_fs to unsigned to, adapt format.
742         (autofs_bgmount): Use long format to match arg.
743         (autofs_lookuppn): Removed superfluous arg.
744
745         * amd/srvr_nfs.c (start_ping): Cast nfs_version to int to match
746         format. 
747         (got_portmap): Likewise for port.
748         (recompute_portmap): Likewise for fs->fs_version, mnt_version.
749         (find_nfs_srvr): Likewise for nfs_version.
750
751         * amd/sched.c (sched_task): Cast wchan to unsigned long, adapt
752         format. 
753
754         * amd/nfs_start.c (checkup): Cast ptr difference to long, next_mem
755         to unsigned long, adapt format.
756         Cast tvv.tv_sec to int to match format.
757
758         * amd/nfs_prot_svc.c (nfs_program_2): Cast args to int to match
759         format.
760
761         * amd/map.c (root_fh): Cast pid to long, adapt format.
762         (timeout_mp): Cast time_t to long, adapt format.
763
764         * amd/clock.c (reschedule_timeouts): Use long format, cast time_t
765         arg.
766
767         * amd/amfs_host.c (fetch_fhandle): Cast nfs_version to int to
768         match format.
769         (amfs_host_fmount): Likewise.
770         (amfs_host_umounted): Likewise.  Removed superfluous arg.
771
772         * amd/amfs_auto.c (amfs_auto_bgmount): Cast pointer to unsigned
773         long, adapt format.
774         (amfs_auto_bgmount): Use long format, cast time_t arg.
775         (amfs_auto_lookuppn): Removed superfluous arg.
776
777         * amd/amd.c (main): Cast geteuid() result to long, adapt format.
778
779         * conf/transp/transp_sockets.c (get_nfs_version): Cast nfs_version
780         to int to match format.
781
782         * include/am_utils.h: Declare plog, dplog as printf-like.
783
784         * conf/mount/mount_irix6.c (mount_irix): Print type as char *.
785
786 Mon Jan 11 13:46:44 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
787
788         * amd/info_hesiod.c (hesiod_isup): New function.
789         * amd/mapc.c (maptypes): Add it.
790
791 1999-01-10  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
792
793         * released snapshot am-utils-6.0.1s1
794
795 1999-01-09  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
796
797         * ALL: bump copyright year to 1999.
798
799 Fri Jan  8 15:24:15 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
800
801         * aux/macros/check_mtype_type.m4: Ultrix uses an int mount type,
802         too. 
803
804         * aux/macros/check_mtype_printf_type.m4: Adapt corresponding
805         printf type.
806
807 Fri Jan  8 15:24:15 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
808
809         * aux/acconfig.h: Removed HAVE_AM_FS_AUTOFS, unused.
810
811         * conf/nfs_prot/nfs_prot_irix6.h: Likewise.
812
813         * conf/nfs_prot/nfs_prot_sunos5_6.h: Likewise.
814
815         * conf/nfs_prot/nfs_prot_sunos5_7.h: Likewise.
816
817         * Makefile.am (EXTRA_DIST_DIRS): Removed, not needed by current
818         automake.
819
820 Thu Jan  7 02:55:18 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
821
822         * aux/configure.in (AM_PROG_YACC): Replaced by AC_PROG_YACC, not
823         in current automake.
824
825 Thu Jan  7 02:55:18 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
826
827         * doc/am-utils.texi: Added some missing inter-punctation after
828         @xref, or use @pxref/@ref as appropriate.  Spotted by makeinfo
829         from texinfo 3.12b.
830
831 1999-01-07  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
832
833         * doc/texinfo.tex: updated off of latest GNU mirror.
834
835 1999-01-04  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
836
837         * doc/am-utils.texi (Supported Platforms): update platforms that
838         support NFS v.3.  Nicer postscript printing on double-sided pages.
839
840         * amd/info_hesiod.c: add extern definition for hesiod_init()
841
842 1999-01-01  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
843
844         *******************************************************************
845         *** Released am-utils-6.0                                       ***
846         *******************************************************************
847
848 1998-12-28  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
849
850         * conf/nfs_prot/nfs_prot_sunos5_7.h: support ldap in solaris 2.7.
851
852 1998-12-27  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
853
854         * conf/nfs_prot/nfs_prot_bsdi3.h: don't use reserved ports on
855         bsdi4 for NFS V3/nfs mounts.
856
857 1998-12-26  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
858
859         * using latest libtool (1.2e + patches), now supporting shared
860         libraries on many more systems.  Also using latest autoconf and
861         automake (unreleased GNU CVS'd versions.)
862
863         * minor new ports: hppa2.0w-hp-hpux11.00,
864         i386-unknown-netbsd1.3.3, mips-sgi-irix6.5.
865
866         * fsinfo/fsinfo.h (yywrap): define it for systems (osf4) that
867         have /usr/bin/flex but not libfl.
868
869 1998-12-24  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
870
871         * lots of code cleanup, to make sure libamu.so does not use
872         undefined symbols.  Some system's shared libraries cannot handle
873         that.
874
875 1998-12-23  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
876
877         * include/am_defs.h: only defined seteuid extern if function also
878         exists and is not superceded by setresuid (hpux).
879
880         * amd/ops_autofs.c (autofs_bgmount, autofs_lookuppn): put explicit
881         braces to avoid confusion with nested if-then-else clauses.
882
883         * aux/config.{sub,status}, aux/{ltmain.sh,ltconfig,mkinstalldirs:
884         updated from latest versions.
885
886 1998-12-22  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
887
888         * minor new port: i386-pc-bsdi4.0
889
890         * conf/nfs_prot/nfs_prot_bsdi3.h: add missing hesiod header
891         definitions for bsdi4.
892
893         * {amd,fsinfo}/Makefile.am: force path to .y/.l files, because
894         some make programs (bsdi4) do not support VPATH correctly.
895
896 1998-12-16  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
897
898         * conf/mount/mount_aix.c: minor code cleanup
899
900         * aux/configure.in: check for extern definition to xdr_groups.
901
902 1998-12-15  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
903
904         * minor new port: powerpc-ibm-aix4.3.1.0
905
906         * aux/macros/*.m4: updates for aix 4.3
907
908 1998-12-14  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
909
910         * minor new port: i386-unknown-openbsd2.4
911
912         * aux/configure.in: don't check for xfs on openbsd because
913         openbsd-2.4 introduces a new file system named xfs, but different
914         than Irix's XFS.  Sigh.
915
916         * minor new port: i386-unknown-freebsd2.2.8
917
918 1998-12-03  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
919
920         * amd/amfs_nfsl.c (amfs_nfsl_ffserver): use case insensitive host
921         name match.  Bug fix from Douglas K. Rand" <rand@aero.und.edu>.
922
923 1998-11-20  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
924
925         * scripts/ctl-amd.in: wait4amd2die runs in the stop action, to
926         avoid race conditions when shutting down systems running amd.
927
928         * Makefile.am: add a dist-hook to change modes of the directories
929         in the tar file so they are not world writable.
930
931         * conf/nfs_prot/nfs_prot_freebsd3.h: turned on NFSv3 support,
932         since it is now finally defined in the header files and
933         (hopefully) stable.
934
935         * amd/srvr_nfs.c (find_nfs_srvr): allow overriding if nfsv2 option
936         is specified in mount options.  freebsd patches from David
937         O'Brien.
938
939         * amq/amq.c (main), fixmount/fixmount.c (main), hlfsd/hlfsd.c
940         (main), fsinfo/fsinfo.c (fsi_get_args), hlfsd/hlfsd.c (main),
941         amd/get_args.c (get_args): posix: use -1 to check for return from
942         getopt() (not EOF), as per posix.
943
944         * amd/amq_subr.c (xdr_amq_mount_tree_node): patches from "David
945         O'Brien" <obrien@NUXI.com>, from the FreeBSD source tree.  Use
946         real variable whose pointer is on the stack for decoding a long
947         int.
948
949 1998-11-11  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
950
951         * scripts/ctl-{amd,hlfsd}.in: include comments useful for redhat's
952         chkconfig utility.
953
954 1998-11-10  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
955
956         * released snapshot am-utils-6.0b2s3
957
958         * conf/transp/transp_sockets.c (create_nfs_service): remove C++
959         style comments.
960
961 1998-11-04  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
962
963         * released snapshot am-utils-6.0b2s2
964
965         * created CVS package
966
967         * amd/nfs_subr.c (nfsproc_lookup_2_svc): try to avoid a race
968         condition between unmounting and re-mounting an entry, by
969         increasing the ttl of a looked up entry before unmounting it.
970         Patch from Mike Mitchell <mcm@unx.sas.com>.
971
972         * All files: spell comments and strings.
973
974 1998-11-03  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
975
976         * aux/configure.in: look for yp_all in libnsl only if yp_all not
977         already found elsewhere (in libc or other default libraries).
978         This is so RedHat 5.1 systems could find yp functions in libnsl,
979         but also so AIX 4.2.1 will NOT include libnsl, because the latter
980         has broken nis functionality that also exists and works ok in libc.
981
982 1998-10-29  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
983
984         * amd/amd.c (main): bug fix: swapped arguments to kill(2).  Fix
985         from Danny Rathjens <dkr@cs.fiu.edu>.
986
987 1998-10-28  Erez Zadok  <ezk@spruce.mcl.cs.columbia.edu>
988
989         * released snapshot am-utils-6.0b2s1
990
991 1998-10-27  Erez Zadok  <ezk@spruce.mcl.cs.columbia.edu>
992
993         * aux/macros/*.m4: support bsdi4 as bsdi3.
994
995         * aux/macros/os_ldflags.m4: enable detection of LDAP on solaris
996         2.7 (libraries located in /usr/lib/fn).  This is off until Sun
997         includes LDAP header information.
998
999 1998-10-20  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1000
1001         *******************************************************************
1002         *** Released am-utils-6.0b1                                     ***
1003         *******************************************************************
1004
1005 1998-10-18  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1006
1007         * mk-amd-map/mk-amd-map.c (main): use perror not strerror.
1008         (main): set return type to int if no ndbm maps.
1009
1010         * include/am_defs.h: avoid conflicts with <sys/mount.h> in 2.1
1011         kernels.
1012
1013 1998-10-18  Erez Zadok  <ezk@london.mcl.cs.columbia.edu>
1014
1015         * A.i386-unknown-netbsd1.3.2/amu_nfs_prot.h: trim down and cleanup
1016         for netbsd 1.3.2.
1017
1018 1998-10-17  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1019
1020         * aux/configure.in: check for yp_all in libnsl, b/c redhat 5.1
1021         systems put NIS functions there.
1022
1023         * mk-amd-map/mk-amd-map.c: patch from "David O'Brien"
1024         <obrien@NUXI.com> merged in.  Use POSIX -1 return code from
1025         getopt(), not EOF.  Use .db extentions for systems that use it,
1026         instead of .{pag,dir}.
1027
1028 1998-10-15  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1029
1030         * wire-test/wire-test.c, hlfsd/hlfsd.c, fixmount/fixmount.c,
1031         amd/amd.c (main): avoid overrunning hostname buffer.  Bug fix from
1032         "David O'Brien" <obrien@NUXI.com>.
1033
1034         * scripts/amd.conf.5: minor typo reported by "David O'Brien"
1035         <obrien@NUXI.com> in .TH section of man page.
1036
1037         * amd/info_nis.c (am_yp_all): don't leak key-val entries.  Patch
1038         from Thomas Richter <richter@chemie.fu-berlin.de>.
1039
1040 1998-10-12  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1041
1042         * doc/am-utils.texi (Program Filesystem): minor typo fixed as per
1043         Andreas Stolcke <stolcke@speech.sri.com>.
1044
1045         * minor new ports: sparc64-unknown-linux-gnu, i386-pc-solaris2.7,
1046         and sparc-sun-solaris2.7.
1047
1048         * conf/mount/mount_freebsd3.c (mount_freebsd3): freebsd 3.0 is now
1049         a 4.4lite kernel, and somethings were removed, such as
1050         INITMOUNTNAMES.
1051
1052         * amd/ops_autofs.c (autofs_lookuppn): don't leak memory while
1053         processing /defaults.  Free temporary opts.  Patch from
1054         dsr@mail.lns.cornell.edu (Daniel S. Riley)
1055
1056         * amd/amfs_auto.c (amfs_auto_lookuppn): don't leak memory while
1057         processing /defaults.  Free temporary opts.  Patch from
1058         dsr@mail.lns.cornell.edu (Daniel S. Riley)
1059
1060         * conf/mtab/mtab_osf.c (read_mtab): patch from
1061          dsr@mail.lns.cornell.edu (Daniel S. Riley) not to access
1062          uninitialized memory on Digital Unix.
1063
1064 1998-10-09  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1065
1066         * aux/macros/{check_mtype_type,check_mtype_printf_type}.m4: most
1067         systems now use "char *" as their mount type.
1068
1069 1998-10-08  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1070
1071         * amd/conf.c (gopt_map_type, ropt_map_type): check if map type
1072         exists.
1073
1074         * amd/mapc.c (mapc_type_exists): function to test if a map of
1075         certain type exists.
1076
1077 1998-10-08  Erez Zadok  <ezk@horatio.mcl.cs.columbia.edu>
1078
1079         * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4,
1080         include/am_defs.h: Avoid a conflict in definitions of ntohl/htonl
1081         in RH-5.1 sparc64 between <netinet/in.h> and
1082         <linux/byteorder/generic.h> (2.1 kernels).
1083
1084 1998-09-28  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1085
1086         * aux/macros/func_bad_yp_all.m4 (ac_cv_func_yp_all_clean): RedHat
1087         5.1 systems with glibc glibc-2.0.7-19 or below leak a UDP socket
1088         from yp_all().
1089
1090 1998-09-25  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1091
1092         * conf/mount/mount_linux.c (parse_opts): check for pcfs support
1093         only if autoconfigured.
1094
1095 1998-09-18  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1096
1097         * Makefile.am (EXTRA_DIST): distribute README.yk2 file.
1098
1099         * README.y2k: explain y2k compliance status of am-utils.
1100
1101 1998-09-16  Erez Zadok  <ezk@iguana.mcl.cs.columbia.edu>
1102
1103         * amd/amfs_host.c (fetch_fhandle, amfs_host_fmount,
1104         amfs_host_umounted): clnt_sperrno() may return a const.
1105
1106 Sat Aug  8 23:28:32 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1107
1108         * aux/configure.in: check for <nfs/nfsmount.h>, as per Christos
1109         Zoulas. Turned on checking for mount options: async, synchronous,
1110         deadthresh, leasterm, nqnfs, and readahead.
1111
1112         * amd/info_nis.c: patch from christos@zoulas.com (Christos Zoulas)
1113         to include prototype definition for nis_isup().
1114
1115 Sun Jul 19 18:50:10 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1116
1117         * hlfsd/stubs.c (getcreds): force sscanf arg to u_long.
1118
1119 Tue Jul 14 20:34:25 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1120
1121         * released snapshot am-utils-6.0a17s1
1122
1123 Wed Jul  8 21:49:15 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1124
1125         * aux/macros/host_macros.m4: all x86 hosts should have $arch be
1126         i386, not i[456]86.
1127
1128 Tue Jul  7 18:55:09 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1129
1130         * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4,
1131         include/am_defs.h: include <linux/posix_types.h> before
1132         <linux/fs.h> because on redhat 5.1, there is a bug (misuse) of
1133         headers in <socketbits.h> (it defines _LINUX_TYPES_H instead of
1134         __KERNEL_STRICT_NAMES).
1135
1136         * aux/configure.in: check for <linux/posix_types.h> because it is
1137         need for RedHat 5.1.
1138
1139 Wed Jun 17 00:05:33 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1140
1141         * scripts/Makefile.am (EXTRA_DIST): have fixrmtab generated from
1142         .in as well, so it doesn't get removed by make clean.
1143
1144 Tue Jun 16 22:00:15 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1145
1146         * aux/macros/{check_fs_mntent.m4, check_mnttab_type.m4,
1147         check_mount_type.m4}: redhat 5.1 puts some modules in
1148         /lib/modules/preferred/.
1149
1150 Wed May 13 16:33:57 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1151
1152         * amd/ops_autofs.c (mount_autofs): cast pid to long.
1153
1154 Tue Apr 28 15:12:36 1998  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1155
1156         * conf/nfs_prot/nfs_prot/nfs_prot_irix6.h,
1157         conf/nfs_prot/nfs_prot_sunos5_6.h: Undef MNTTAB_TYPE_AUTOFS too to
1158         avoid amd/am_ops.c (show_fstypes) from erroneously claiming
1159         support.
1160
1161 Fri Apr 24 23:02:11 1998  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1162         
1163         * libamu/xutil.c (get_syslog_facility): Don't use LOG_DAEMON
1164         unconditionally, may be missing on Ultrix V4.3.
1165
1166 Thu Apr 23 20:24:33 1998  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1167
1168         * conf/nfs_prot/nfs_prot_sunos5_4.h (MNTTYPE_CACHEFS): Define,
1169         missing from <sys/mntent.h>.
1170         
1171         * conf/mtab/mtab_ultrix.c: Need separate inclusion of <sys/fs_types.h>
1172         without KERNEL defined here.
1173
1174         * aux/macros/mount_headers.m4: Need to include <ufs/ufs_mount.h>,
1175         <cdfs/cdfs_mount.h>, <cdfs/cdfsmount.h> so autoconfiguration of
1176         ufs_args_t, cdfs_args_t fields and cdfs mount options can succeed.
1177
1178         * amd/ops_ufs.c (mount_ufs): Removed obsolete comment.
1179
1180         * ChangeLog: Fixed confusing linebreaks from ChangeLog imports.
1181         Removed purely local (and obsolete) entry.
1182
1183 Thu Apr 23 00:22:17 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1184
1185         *******************************************************************
1186         *** Released am-utils-6.0a16                                    ***
1187         *******************************************************************
1188
1189 Wed Apr 22 01:20:39 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1190
1191         * aux/macros/check_mount_style.m4: define freebsd3 mount style.
1192
1193         * aux/macros/check_mount_trap.m4: new mount trap for freebsd3.
1194
1195         * aux/macros/check_mtype_printf_type.m4,
1196         aux/macros/check_mtype_type.m4 (ac_cv_mtype_type,): freebsd3 (as
1197         of snapshot 3.0-980311-SNAP) uses char * types for mount(2), not
1198         integers, but I'll keep them as integers and do the mapping in
1199         conf/mount/mount_freebsd3.c
1200
1201         * minor new port to i386-pc-bsdi3.1.
1202
1203         * minor new port to i386-unknown-netbsd1.3.1.
1204
1205         * amd/opts.c: new option addopts:=ARG, which smartly merges ARG
1206         options with whatever the /default ones for a key are.  This
1207         allows adding or overriding /default options individual keys.
1208
1209         * amd/am_ops.c (ops_match): strdup/malloc string assigned to
1210         opt_opts because it'll get free()'d upon next use.
1211         (merge_opts): new function to merge two sets of options.
1212         (ops_match): if addopts option exist, append and merge it to the
1213         current default options.
1214
1215 Tue Apr 21 12:54:59 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1216
1217         * wire-test/wire-test.c (main): use dynamically allocated returned
1218         string with list of interfaces.
1219
1220         * amd/get_args.c (get_version_string): allocate enough space for
1221         header version string and a list of network interfaces of any
1222         length.
1223
1224         * libamu/wire.c (print_wires): return dynamically allocated string
1225         containing list of networks.  Must be dynamic because some sites
1226         had potentially dozens of network interfaces.  Patch from Matthew
1227         Crosby <mcrosby@ms.com> slightly modified.
1228
1229 Mon Apr 20 00:37:20 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1230
1231         * conf/nfs_prot/nfs_prot_irix5.h: underfine MNTTYPE_XFS because
1232         irix 5.3 does not have full header definitions for it.
1233
1234         * fsinfo/fsi_lex.l (yywrap): define yywrap if needed, and
1235         undefined it when not needed (similar to amd/conf_tok.l)
1236
1237         * hlfsd/hlfsd.h (ROOTID, SLINKID, INVALID): reduced maximum size
1238         of these to unsigned short (because uid_t on some linux systems is
1239         small).
1240
1241         * released snapshot am-utils-6.0a16s10
1242
1243         * doc/am-utils.texi (opts Option): documented resvport mount
1244         option.
1245
1246 Sun Apr 19 18:17:03 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1247
1248         * doc/am-utils.texi (-D-Option): document behavior of -D info and
1249         especially what it does to hesiod (turn on RES_DEBUG).
1250
1251         * scripts/amd.conf.5: document info debugging option.
1252
1253         * libamu/xutil.c (dbg_opt): parse info debugging option.
1254
1255         * include/am_utils.h (D_INFO): define new trace option.
1256
1257         * Makefile.am (EXTRA_DIST): include list of official mirrors in
1258         distribution.
1259
1260         * libamu/wire.c (SIZE): in the simple case, just compute
1261         sizeof(struct ifreq).
1262
1263 Sun Apr 19 16:30:35 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1264
1265         * amd/amd.c (daemon_mode): set a temporary secure umask(0022)
1266         before writing log file and restore it afterwards.  Patch from
1267         Donald Buczek <buczek@MPIMG-Berlin-Dahlem.MPG.DE>.
1268
1269         * amd/get_args.c (get_args): 
1270
1271         * doc/am-utils.texi (-F Option), amd/amd.8: mention that amd.conf
1272         file specified by -F is always processed last.
1273
1274         * amd/amd.c (daemon_mode): do not fclose(stdout) so that the fd
1275         won't be reused.  Allows startup script to redirect stdout.  Patch
1276         from Donald Buczek <buczek@MPIMG-Berlin-Dahlem.MPG.DE>.
1277
1278         * libamu/xutil.c (switch_to_logfile): compare logfile name and
1279         syslog string with correct length.  Patch from Donald Buczek
1280         <buczek@MPIMG-Berlin-Dahlem.MPG.DE>.
1281
1282         * amd/restart.c (restart): correctly inherit existing NFS V.3
1283         mounts upon restart.  Patch from Donald Buczek
1284         <buczek@MPIMG-Berlin-Dahlem.MPG.DE>.
1285
1286 Sat Apr 18 19:01:19 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1287
1288         * using libtool 1.2 and automake 1.3 (with my patches).
1289
1290         * aux/macros/opt_am_cflags.m4, */Makefile.in: rename AM_CFLAGS to
1291         AMU_CFLAGS to avoid conflicts with automake-1.3.
1292
1293 Sun Apr  5 23:09:08 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1294
1295         * converted to using libtool-1.2.
1296
1297 Tue Mar 10 16:52:09 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1298
1299         * fsinfo/fsi_analyze.c (fixup_required_mount_info): replaced silly
1300         for loop (ITER) which used to run only to initialize the variable
1301         dd once and then break; with a simple assignment.
1302
1303         * hlfsd/hlfsd.h: cleanup so it compiles with Solaris
1304         /opt/SUNWspro/bin/cc, and use gid_t not int.
1305
1306         * amd/mapc.c (mapc_sync): don't dereference pointer (so it
1307         compiles with Solaris /opt/SUNWspro/bin/cc)
1308
1309 Sun Mar  8 15:54:22 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1310
1311         * aux/config.{guess,sub}: used from gcc-2.8.1.
1312
1313 Sat Mar  7 15:33:27 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1314
1315         * released snapshot am-utils-6.0a16s9
1316
1317         * INSTALL, doc/am-utils.texi (Supported Platforms): updated names
1318         based on new output of new config.guess.
1319
1320         * aux/config.{sub,guess}: used newer versions from gcc-2.8.0.
1321
1322         * amd/amd.8,doc/am-utils.texi: document correct usage of default
1323         /etc/amd.conf file.
1324
1325         * fixmount/fixmount.c (inetresport,privsock): use some more
1326         portable code from amq/amq.c.
1327
1328         * amd/get_args.c (get_args): use default /etc/amd.conf file only
1329         if no arguments had been passed to amd.
1330
1331         * fixmount/fixmount.c (clnt_create_timeout): use tli/socket code
1332         ala amq/amq.c so that fixmount will work on both types of systems.
1333
1334         * amq/amq.c (main): do no close tcp socket before running udp try,
1335         because we're not sure if it was opened at all.
1336
1337         * mips-dec-ultrix* port merged in and cleaned up.
1338
1339         * aux/configure.in: up minor shared library revision number, since
1340         it has changed enough.
1341
1342         * hlfsd/hlfsd.c (main): don't check for overlay mount option here,
1343         as it is now done in compute_nfs_args().  Remove ultrix specific
1344         code also because it was moved to compute_nfs_args().
1345
1346         * conf/mount/mount_svr4.c: removed DEBUG_MOUNT_SVR4 code, now that
1347         we have more generic code in print_nfs_args().
1348
1349         * libamu/mount_fs.c (print_nfs_args): print maxlen of
1350         nfs_args.addr, and also syncaddr (which is mostly NULL).  Print
1351         struct knetconfig from nfs_args->knconf.
1352
1353         * aux/macros/mount_headers.m4 (define): do not check for ufs/cdfs
1354         headers here, but in try_compile_anyfs.m4.
1355
1356         * aux/macros/type_ufs_args.m4: move test for struct ufs_specific
1357         (for ultrix) here from its own macro.
1358
1359         * aux/macros/type_cdfs_args.m4: move test for struct iso_specific
1360         (for ultrix) here from its own macro.
1361
1362         * amd/ops_nfs.c (mount_nfs_fh): no need to run code again checking
1363         for overlay mount option.  Remove code which checks for overlay
1364         option, as it is now done in compute_nfs_args().
1365
1366         * libamu/mount_fs.c (compute_mount_flags): move here code which
1367         checks for overlay mount option which was in amd/amfs_toplvl.c:
1368         mount_amfs_toplvl().
1369
1370 Wed Feb  7 15:35:51 1998  Rainer Orth  <ro@xayide.TechFak.Uni-Bielefeld.DE>
1371
1372         * The following are Rainer's ChangeLog entries for his ultrix
1373         port, added manually. -Erez.
1374
1375         * merged Ultrix port with am-utils 6.0 a16s5: amd/ops_afs.c
1376         (mount_toplvl) -> amd/amfs_toplvl.c (mount_amfs_toplvl)
1377
1378         * include/am_defs.h: include cdfs specific mount headers
1379         avoid duplication definition of gt_names[] in <sys/fs_types.h> (Ultrix)
1380
1381         * include/am_compat.h: define several mount options corresponding
1382         to mount flags: pgthresh, hard (nfs), defperm, nodefperm,
1383         noversion, rrip (cdfs), nocache, quota, sync (generic) removed
1384         duplicate MNTTAB_OPT_RO definition
1385
1386         * aux/macros/try_compile_anyfs.m4: include Ultrix specific
1387         ufs/cdfs mount headers
1388
1389         * aux/macros/mount_headers.m4: include several Ultrix/Digital UNIX
1390         specific mount headers
1391
1392         * aux/macros/check_{fs_mntent, mount_type}.m4: check for GT_*
1393         mount types in mount headers (Ultrix)
1394
1395         * aux/configure.in: Ultrix/Digital UNIX specific checks: new
1396         headers, mount structures and fields, filesystem and mount types,
1397         mount flags
1398
1399         * aux/acconfig.h: placeholders for new mount options: quota
1400         (generic), ro (nfs), defperm, nodefperm, noversion, rrip (cdfs)
1401         cdfs, nfs, ufs mount structure fields new ufs, cdfs mount
1402         structures
1403
1404         * amd/ops_ufs.c (mount_ufs): Ultrix stores generic mount flags in
1405         ufs_args.ufs_flags and has ufs specific pgthresh option
1406
1407         * amd/ops_cdfs.c (mount_cdfs): handle Ultrix/Digital UNIX specific
1408         CDFS mount flags and options
1409
1410         * amd/ops_afs.c (mount_toplvl), amd/ops_nfs.c (mount_nfs_fh),
1411         hlfsd/hlfsd.c (main): store generic mount flags in
1412         nfs_args.gfs_flags, handle separate NFS ro flag
1413
1414         * aux/macros/{check_mnt2_cdfs_opt, struct_iso_specific,
1415         struct_ufs_specific}.m4: new files; check for Ultrix specific
1416         mount structures
1417
1418         * conf/trap/trap_ultrix.h: arg 3 to mount(2) is rwflag
1419
1420         * aux/macros/type_auth_create_gidlist.m4 (ultrix*):
1421         AUTH_CREATE_GIDLIST_TYPE is int (not short == gid_t) from a
1422         comment in <rpc/auth.h>
1423
1424         * include/am_defs.h: #define KERNEL to avoid definition of
1425         gt_names[]
1426         conf/mtab/mtab_ultrix.c: #include <sys/fs_types> before <config.h>
1427         to force single definition here
1428
1429         * libamu/mount_fs.c (compute_nfs_args): Ultrix support for
1430         nfs_args.gfs_flags moved to callers
1431         store mount options in nap->optstr
1432
1433         * include/am_defs.h: fix _am_mntent mnt_{type, opts} field
1434         descriptions
1435
1436         * aux/macros/mount_headers.m4, aux/macros/try_compile_nfs.m4:
1437         include <rpc/rpc.h> before AMU_NFS_PROTOCOL_HEADER for svc_req
1438         definition in prototypes
1439
1440         * aux/macros/mount_headers.m4: include <sys/errno.h> before
1441         AMU_NFS_PROTOCOL_HEADER: <nfs/nfs.h> needs it for NFSERR_*
1442         definitions
1443
1444         * conf/nfs_prot/nfs_prot_ultrix.h: new file
1445
1446         * aux/macros/check_nfs_prot_headers.m4: use nfs_prot_ultrix.h
1447
1448         * aux/macros/mount_headers.m4, aux/macros/try_compile_nfs.m4,
1449         aux/macros/try_compile_rpc.m4, include/am_defs.h: avoid multiple
1450         inclusion of <rpc/xdr.h>
1451
1452 Sat Mar  7 13:56:05 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1453
1454         * aux/configure.in: save state of config.cache and confdefs.h
1455         (as dbgcf.h) at various points of the configure.
1456
1457         * aux/macros/save_state.m4: new macro to save state of configure,
1458         esp. useful in long ones.  Saves confdefs.h and write $ac_cv_*
1459         cache variables that are known so far.
1460
1461         * released snapshot am-utils-6.0a16s8
1462
1463 1998-03-06  Erez Zadok  <ezk@mercer.psl.cs.columbia.edu>
1464
1465         * fsinfo/fsi_lex.l,amd/conf_tok.l: define ECHO after undefining
1466         it, but only for flex.
1467
1468 Fri Mar  6 17:23:17 1998  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
1469
1470         * hlfsd/homedir.c (plt_print): change pathname of hlfsd dump file
1471         to /usr/tmp/hlfsd.dump.XXXXXX, and use a safe method (if possible)
1472         to write the dump file.
1473
1474         * doc/am-utils.texi,amd/opts.c: rename all references to nomadic
1475         functions to boolean functions, which is what they really are.
1476
1477         * aux/configure.in: don't look for strcasecmp in libucb at all,
1478         but rather complete it from libamu/strcasecmp.c as needed.
1479
1480 Fri Mar  6 03:29:20 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1481
1482         * conf/nfs_prot/nfs_prot_osf4.h: avoid conflicts with Irix's EFS.
1483
1484         * libamu/wire.c (getwire): fix for 0.0.0.0 loopback on SunOS 3.X
1485         which defines IFF_ROUTE instead of IFF_LOOPBACK.  Patch from Tom
1486         Schmidt <tschmidt@micron.com>.
1487
1488         * released snapshot am-utils-6.0a16s7
1489
1490         * conf/nfs_prot/nfs_prot_hpux11.h: a first working port of amd to
1491         hppa1.0-hp-hpux11.00.tgz.
1492
1493 Thu Mar  5 21:59:03 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1494
1495         * converted all sources to use mntent field names, and map mnttab
1496         field names to mntent's.
1497
1498         * include/am_defs.h (mnt_special): map struct mnttab field names
1499         to struct mntent field names.
1500
1501         * aux/macros/check_mount_trap.m4: hpux11's mount trap style is
1502         identical to svr4/solaris2.
1503
1504         * aux/macros/check_mount_style.m4: hpux11's mount style is
1505         identical to svr4/solaris2.
1506
1507         * aux/macros/check_network_transport_type.m4: hpux11 is a TLI
1508         system!
1509
1510         * aux/macros/check_nfs_sa_dref.m4: hpux11's NFS host address
1511         dereferencing style is same as svr4.
1512
1513         * aux/macros/check_nfs_fh_dref.m4: hpux11's NFS file fh
1514         dereferencing style is same as svr4.
1515
1516         * conf/transp/transp_tli.c (create_nfs_service): if failed to
1517         getnetconfigent() of ticlts, then try udp (hpux11).
1518
1519         * conf/nfs_prot/nfs_prot_hpux11.h: added correct definitions for
1520         struct nfs_args, nfs_fh, and NFSMNT_* flags, taken from solaris
1521         2.5.1 (HP used them).
1522
1523         * amd/rpc_fwd.c (fwd_init): don't use O_NDELAY for t_open()
1524         because hpux11 doesn't like it. if t_open failed, print error
1525         based on t_errlist, not sys_errlist.
1526
1527 Wed Mar  4 22:01:55 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1528
1529         * doc/am-utils.texi: lots of documentation fixes from Rainer Orth
1530         <ro@TechFak.Uni-Bielefeld.DE>.
1531
1532 Sat Feb 28 22:16:35 1998  Erez Zadok  <ezk@kosh.cs.columbia.edu>
1533
1534         * fsinfo/fsi_lex.l: undefine ECHO again, so it doesn't get used
1535         later.
1536
1537         * include/am_defs.h: defined the extern for ualarm() if it isn't
1538         found, regardless if the function isn't found in standard
1539         libraries, because otherwise libamu will include it.
1540
1541 1998-02-28  Erez Zadok (per Ron Snyder)  <ezk@short.cvo.roguewave.com>
1542
1543         * initial port to hpux-11 completed.  Compiles cleanly, but
1544         probably does not work, because of missing NFS V.2/3 headers.
1545
1546         * amd/conf_tok.l: cast yytext to char* when passed to strlen and
1547         strdup, for hpux-11's ansi-cc compiler.
1548
1549         * include/am_utils.h: renamed all xfree() to XFREE() to avoid
1550         conflict with hpux-11's system headers.  Also move (voidp) cast
1551         from sources to inside the macro itself.
1552
1553 Sat Feb 28 13:44:21 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1554
1555         * released snapshot am-utils-6.0a16s6
1556
1557         * amd/info_nis.c (nis_isup): new function to test if NIS is up
1558         without hanging amd.  Used to ensure that amd does not clear the
1559         maps when the expiration period arrived, if the service is down.
1560         Otherwise it would be left with empty maps.  It is better to stay
1561         with possibly old information than none at all.
1562
1563         * amd/mapc.c (mapc_sync): check to see if map service is up.
1564
1565 Tue Feb 24 02:19:42 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1566
1567         * aux/macros/check_lib2.m4 (AC_CHECK_LIB2): fix macro so it
1568         includes auxiliary library only if needed.
1569
1570 1998-02-22  Erez Zadok  <ezk@mercer.psl.cs.columbia.edu>
1571
1572         * amd/conf_tok.l: undefine ECHO again, so it doesn't get used
1573         later.
1574
1575 Sun Feb 22 01:41:08 1998  Erez Zadok  <ezk@zen.cs.columbia.edu>
1576
1577         * conf/nfs_prot/nfs_prot_osf2.h: port to alpha-dec-osf2.1
1578         completed.
1579
1580         * conf/mtab/mtab_osf.c (mnt_dup): not all OSF have NFS3.
1581
1582 Sat Feb 21 19:45:48 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1583
1584         * doc/am-utils.texi (Network Host Filesystem): correct example for
1585         type:=host map.
1586
1587         * aux/macros/os_cflags.m4: only osf4 should compile with
1588         -D_SOCKADDR_LEN.
1589
1590         * aux/macros/check_nfs_prot_headers.m4: distinguish between OSF2
1591         and OSF4.
1592
1593         * BUGS: include a new file listing known bugs.
1594
1595 Sat Feb 21 03:50:48 1998  Erez Zadok  <ezk@mercer.psl.cs.columbia.edu>
1596
1597         * conf/nfs_prot/nfs_prot_linux.h: turn DES off on all linux
1598         versions.
1599
1600         * aux/macros/type_recvfrom_fromlen.m4: linux alpha should use
1601         size_t for recvfrom fromlen arg.
1602
1603 Sat Feb 21 03:33:59 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1604
1605         * scripts/ctl-hlfsd.in: turn -D fork so primary process never
1606         hangs.
1607
1608 Sat Feb 21 02:45:51 1998  Erez Zadok  <ezk@mercer.psl.cs.columbia.edu>
1609
1610         * include/am_defs.h: don't include <sys/stat.h> and
1611         <linux/stat.h>, just remaining definitions in <statbuf.h>
1612
1613 Thu Jan 29 00:44:28 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1614
1615         * released snapshot am-utils-6.0a16s5
1616
1617         * conf/mount/mount_irix6.c (mount_irix): pass {u,e,x}fs_args to
1618         mount(2).
1619
1620         * check for <sys/fs/xfs_clnt.h> and include it when needed.
1621
1622         * conf/mount/{mount_irix5.c,mount_irix6.c} (mount_irix): recognize
1623         efs and xfs separately from "ufs".
1624
1625         * amd/{ops_xfs.c,ops_efs.c}: new support for irix xfs/efs.
1626
1627         * aux/configure.in: look for irix efs and xfs file systems.
1628
1629         * scripts/amd.conf.5: new unmount_on_exit option documented.
1630
1631         * doc/am-utils.texi (unmount_on_exit): new option documented.
1632
1633         * amd/conf.c (gopt_unmount_on_exit): new function to handle new
1634         amd.conf option.
1635
1636         * amd/map.c (umount_exported): if global amd.conf flag
1637         unmount_on_exit is on, then try to unmount all mounted (or
1638         restartable) file systems.
1639
1640         * amd/amd.c: if print_pid option is on, then normally print it to
1641         stdout.  If also pid_file is specified, then print the process ID
1642         into that file.
1643
1644         * amd/get_args.c (get_args): print correct -l option depending if
1645         system supports syslog and/or syslog facilities.  Patch from 
1646         Tom Schmidt <tschmidt@micron.com>.
1647
1648         * doc/am-utils.texi (opts Option): updates for documentation for
1649         new cdfs options defperm, nodefperm, noversion, rrip.
1650
1651         * amd/ops_cdfs.c (mount_cdfs): support cdfs options defperm,
1652         nodefperm, noversion, rrip.
1653
1654         * conf/nfs_prot/nfs_prot_osf.h: need to look at <cdfs/cdfsmount.h>
1655         on osf.
1656
1657         * aux/macros/{expand_cpp_hex.m4, expand_cpp_int.m4,
1658         expand_cpp_string.m4}: use #error to make failed compilations
1659         fail faster, rather than have the program fail during a run.
1660
1661         * include/am_compat.h: added a few new cdfs options: rrip,
1662         noversion, defperm, and nodefperm (used in OSF).
1663
1664 Wed Jan 28 20:24:09 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1665
1666         * released snapshot am-utils-6.0a16s4
1667
1668         * doc/am-utils.texi (Global Parameters): update manual for new
1669         amd.conf global variable hesiod_base.
1670
1671         * scripts/amd.conf.5: update man page for new amd.conf global
1672         variable hesiod_base.
1673
1674         * amd/get_args.c (get_args): use /etc/amd.conf file if exists by
1675         default, else try command line options.  Patch from Randall
1676         S. Winchester <rsw@Glue.umd.edu>.
1677
1678 Wed Jan 28 12:20:56 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1679
1680         * amd/info_hesiod.c (hesiod_search), amd/conf.c
1681         (gopt_hesiod_base), amd/amd.h, amd/amd.c (init_global_options):
1682         included patch from Randall S. Winchester <rsw@Glue.umd.edu>, to
1683         support a hesiod base name in the amd.conf file.
1684
1685         * doc/am-utils.texi (pid_file Parameter): document new global
1686         amd.conf parameter.
1687
1688         * scripts/amd.conf.5: document new global option pid_file.
1689
1690         * amd/amd.c (daemon_mode): if cannot open pid_file, continue to
1691         run, but print error message.
1692
1693         * amd/conf.c (gopt_pid_file), amd/amd.h, amd/amd.c (daemon_mode,
1694         init_global_options): Included patch from Randall S. Winchester
1695         <rsw@Glue.umd.edu>, to support pid files in the amd.conf file.
1696
1697         * amd/get_args.c (get_args): correct usage info on amd -t.
1698
1699         * amd/*.c: massive file name and symbol name changes.  All amd
1700         file systems files and symbols are prefix with amfs_*.  Now using
1701         real name of file system: amfs_auto instead of afs, amfs_inherit
1702         instead of ifs, amfs_linkx instead of sfsx, etc.  This will enable
1703         clear distinction between amd file system and generic ones like
1704         nfs/ufs/pcfs/hsfs.  Also, now we can implement true afs (Andrew
1705         f/s) and DFS (Distributed f/s).
1706
1707         * amd/amfs_union.c: unionfs for amd is always defined, no need to
1708         #ifdef it.
1709
1710 Mon Jan 26 16:51:38 1998  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
1711
1712         * libamu/mount_fs.c (compute_nfs_args): set 'noconn' NFS option on
1713         or off, based on the particular quirks of the OS in question.
1714
1715         * aux/macros/check_nfs_socket_connection.m4: new macro to set the
1716         correct wait of handling un/connected NFS sockets.
1717
1718         * scripts/wait4amd.in: use rlogin instead of rsh.
1719
1720         * amd/am_ops.c (ops_showfstypes): when showing F/S types in amd
1721         -v, always show "nfs3" for NFS V.3.
1722
1723 1998-01-25  Erez Zadok  <ezk@snoopy.cs.columbia.edu>
1724
1725         * lots of small fixes for solaris 2.6, since gcc 2.8.0 -Wall gets
1726         more picky than 2.7.2.3 did.
1727
1728 1998-01-24  Erez Zadok  <ezk@snoopy.cs.columbia.edu>
1729
1730         * include/am_utils.h (dlog): amuDebug macros reduced to shorter
1731         forms.
1732
1733 Fri Jan 23 18:38:30 1998  Erez Zadok  <ezk@goat.mcl.cs.columbia.edu>
1734
1735         * released snapshot am-utils-6.0a16s3
1736
1737         * include/am_defs.h: on Solaris 2.6, <sys/varargs.h> is included
1738         in <sys/fs/autofs.h> but since stdargs.h is used, and varargs.h
1739         must not, fake a definition for varargs.
1740
1741 Fri Jan 16 10:16:40 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1742
1743         * README: show how to configure in additional support such as
1744         hesiod using various --enable-* flags.
1745
1746 Wed Jan 14 15:13:02 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1747
1748         * aux/configure.in: look for strcasecmp(), and replace it if not
1749         available.
1750
1751         * amd/ops_nfsl.c (nfsl_match): host names should be compared using
1752         case insensitive.
1753
1754         * amd/opts.c: for each map variable, define if the comparison
1755         needs to be done case insensitive.
1756
1757         * include/am_utils.h (STRCEQ): a new macro to use strcasecmp().
1758         Patch from Thomas Richter <richter@chemie.fu-berlin.de>
1759
1760 1998-01-14  Erez Zadok  <ezk@irt.cs.columbia.edu>
1761
1762         * aux/configure.in: look for "isofs" as a possible mount type for
1763         cdfs (RedHat Linux).
1764
1765 Wed Jan 14 02:07:05 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1766
1767         * conf/mount/mount_linux.c (parse_opts): don't look for cdfs mount
1768         type if not defined.
1769
1770         * conf/nfs_prot/nfs_prot_linux.h: don't define __FD_* macros if
1771         already defined.
1772
1773         * aux/configure.in: look for ext2fs before ufs, b/c some linux
1774         have both.
1775
1776 Mon Jan 12 15:43:20 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1777
1778         * Makefile.am (snapshot): allow me to install snapshots into the
1779         ftp directory.
1780
1781         * scripts/ctl-hlfsd.in: don't turn on -D mem by default.
1782
1783         * amd/get_args.c (get_args): minor bug in output of amd -H.
1784
1785 Mon Jan 12 03:05:06 1998  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
1786
1787         *******************************************************************
1788         *** Released am-utils-6.0a15                                    ***
1789         *******************************************************************
1790
1791 Sun Jan 11 15:06:34 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1792
1793         * amd/conf.c (*_browsable_dirs): allow specifying
1794         browsable_dirs=full, which will print *all* entries (other than
1795         /default), including  those with '*' and '/' characters.
1796
1797         * amd/info_file.c (MAX_LINE_LEN): up maximum readdir chain length
1798         to 1500.
1799
1800         * doc/am-utils.texi: fixed reversed documentation for NFS mount
1801         options vers and proto.
1802
1803         * doc/Makefile.am (install-html): separate target just for
1804         installing html files.  Another new target "alldocs" is just for
1805         installing all files needed for the am-utils home page.
1806
1807         * scripts/amd.conf-sample: updated example for log_file.
1808
1809         * scripts/amd.conf.5: updated for new way to declare new syslog
1810         facility in the log_file option.
1811
1812         * amd/amd.8: updated for new way to declare new syslog facility in
1813         the -l option.
1814
1815         * libamu/xutil.c (get_syslog_facility): allow users to specify the
1816         syslog facility as an appended string to the log device.  Ex. amd
1817         -l syslog:local7 will use LOG_LOCAL7, while the older -l syslog
1818         will use the default LOG_DAEMON facility.
1819
1820         * amd/get_args.c (get_args): updated new syntax for amd -l
1821         syslog:facility.
1822
1823 Thu Jan  8 04:05:10 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1824
1825         * aux/macros/host_macros.m4: don't confuse sun3 (sparc) with sun3
1826         (intel).
1827
1828         * libamu/wire.c (print_wires): bug fix.  Nullify output buffer
1829         before appending to it, on systems with two or more network
1830         interfaces.
1831
1832         * conf/nfs_prot/nfs_prot_sunos5_3.h: add missing definition for
1833         the mntent for cachefs.
1834
1835         * include/am_defs.h: external definition for strstr() should use
1836         const for both arguments.
1837
1838         * aux/configure.in: add extern definitions for getwd() if missing.
1839
1840         * include/am_defs.h: define the extern for strdup() even if the
1841         function does not exist, for it will be filled in by
1842         libamu/strdup.c
1843
1844         * amq/pawd.c (cluster_server): don't use getccent() if the extern
1845         for it isn't there.  On hpux 10.20, the function is in libc, but
1846         <cluster.h> and struct cct_entry do not exist.
1847
1848         * aux/configure.in: check for an extern for getccent() b/c some
1849         hpux systems don't have it (hpux 10.20).
1850
1851 Wed Jan  7 00:09:19 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1852
1853         * doc/am-utils.texi (Amq -T option): manual documentation updates
1854         for new amq options -T/-U.
1855
1856         * amq/amq.8: updated man page for new amq options -T/-U.
1857
1858         * amq/amq.c: two new switches to amq. -U will contact amd using
1859         UDP only.  -T will use TCP only.  Normally amq will try TCP and
1860         if that failed, will try UDP.
1861
1862         * doc/am-utils.texi (pawd): manual documentation for pawd.
1863
1864         * amq/pawd.1: new man page for pawd.
1865
1866 Tue Jan  6 04:21:59 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1867
1868         * amq/pawd.c: a new program, Print Automounter Working Directory,
1869         to print the proper pathname of the cwd or any other pathname,
1870         adjusted for automounter paths, while avoiding mount points.
1871
1872         * aux/macros/localconfig.m4: trivial support for am-utils
1873         maintainers to adjust some of the configuration of am-utils after
1874         it has been auto-configured by putting whatever definitions you
1875         wish in a file called localconfig.h, located in the top build
1876         directory (the same one where config.h is created for you).
1877
1878         * doc/am-utils.texi (Caching Filesystem): updated documents for
1879         cachefs file system.
1880
1881         * amd/ops_cachefs.c: initial cachefs support, for solaris.
1882         type:=cachefs, requires cachedir:=/cache/dir/name to be defined
1883         and initialized with cfsadmin -c.  $rfs is backdir to be cached
1884         from, and $fs is the local mount point of the cachefs.
1885
1886         * conf/mount/mount_svr4.c (mount_svr4): support mounting of
1887         cachefs file systems.
1888
1889         * amd/ops_cdfs.c: cdfs should be named 'cdfs', not whatever the
1890         mnttab type is.
1891
1892 Mon Jan  5 23:22:49 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1893
1894         * amd/opts.c: added support for new variable $cachedir.
1895
1896         * include/am_utils.h: added opt_cachedir field to struct am_opts.
1897
1898 Sat Jan  3 01:43:57 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1899
1900         * amd/ops_nfsl.c (nfsl_ffserver, nfsl_match): also check if the
1901         local hostname does not match $rhost, and if so, also assume
1902         type:=nfs.
1903
1904 Fri Jan  2 01:00:40 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
1905
1906         * updated all source files to add 1998 as a copyright year.
1907
1908         * amd/ops_nfsl.c: new amd meta file system "type:=nfsl".  Behaves
1909         like type:=linkx if the pathname denoted by $fs exists, and like
1910         type:=nfs if it does not.  A convenient shortcut for the most
1911         popular amd map entry.
1912
1913         * amd/amd.c (main): amd should chdir to / before starting, to
1914         avoid hanging on other NFS server if started elsewhere.
1915
1916         * amd/ops_TEMPLATE.c: added an empty template file for developers
1917         who wish to write new amd pseudo file systems.
1918
1919 Thu Jan  1 00:27:28 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1920
1921         * hlfsd/homedir.c (plt_init): make function exported, to save on
1922         the unnecessary init_homedir() function which was removed.
1923         (table_add): don't use xmalloc() when you can use strdup()
1924         instead.
1925
1926 Thu Jan  1 00:15:58 1998  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
1927
1928         * hlfsd/homedir.c (hlfsd_endpwent): Don't actually run this
1929         because we will be making more passwd calls afterwards.  On
1930         Solaris 2.5.1, making getpwent() calls after calling endpwent()
1931         results in a memory leak! (and no, even Purify didn't detect
1932         it...)
1933
1934 Tue Dec 23 18:23:47 1997  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
1935
1936         * hlfsd/hlfsd.c (main): Bug fix.  Don't try to free() an
1937         automatically allocated address.
1938
1939         * amd/ops_afs.c (mount_toplvl): Bug fix.  Don't try to free() an
1940         automatically allocated address.
1941
1942         * ALL SOURCES: change every direct call to free() to xfree(), so
1943         it can be mapped to the right debugging function as needed.
1944
1945         * include/am_utils.h: new free() policy.  If debugging memory,
1946         call dxfree(), which will print the file name and line number
1947         where the free occurred and the pointer address.  if only regular
1948         debugging, then free() and reset  the pointer to NULL so it cannot
1949         be used afterwards inadvertently.  If not DEBUG at all, then just
1950         run free().  Three different #define macros set the right mapping.
1951
1952         * libamu/xutil.c (dxfree): renamed function to dxfree(), so it can
1953         be called only when debugging the memory.
1954
1955 Tue Dec 23 04:24:28 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1956
1957         * wire-test/wire-test.c (main): use xmalloc() not malloc().
1958
1959         * conf/transp/transp_tli.c (get_knetconfig): use xzalloc() not
1960         calloc().
1961
1962         * conf/mtab/mtab_mach3.c (convert): use xzalloc() not calloc().
1963
1964         * conf/mount/mount_linux.c (parse_opts): use xmalloc() not
1965         malloc().
1966
1967         * amd/info_ldap.c: use xmalloc() not malloc().
1968
1969         * libamu/xutil.c (xzalloc): new function to allocate memory and
1970         zero its bytes.
1971
1972         * amq/amq.c: amq does not need its own definition of xfree().
1973
1974         * aux/macros/opt_debug.m4: if used --enable-debug=mem, then also
1975         look for function malloc_verify() in libmapmalloc.a, and function
1976         mallinfo() in libmalloc.
1977
1978         * libamu/xutil.c (checkup_mem): do not use mallinfo field
1979         uordbytes, because it does not always exist.  Rather, compute it
1980         from other fields..
1981
1982         * include/am_utils.h: add external definition to xfree() function
1983         used when debugging memory references.
1984
1985 Mon Dec 22 03:01:30 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1986
1987         * amd/ops_afs.c (afs_readdir_browsable): reduce the number of
1988         bytes heuristically computed to be returned to the kernel.
1989         Otherwise browsable_dirs fails on OpenBSD 2.2.
1990
1991         * amd/mntfs.c (uninit_mntfs): bug fix.  Moved freeing of
1992         mf_private field to AFTER it gets used.
1993
1994 Sat Dec 20 00:51:21 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
1995
1996         * amd/ops_host.c (host_umounted): don't use clnt_spcreateerror()
1997         on systems that don't support it.
1998
1999         * include/am_defs.h: add missing extern definition for free().
2000
2001         * aux/configure.in: check for external definition for free().
2002
2003         * libamu/Makefile.am: add to comment a mention of strstr as an
2004         optional function.
2005
2006         * libamu/xutil.c (switch_to_logfile): use openlog() options only
2007         if they exist.
2008
2009         * conf/transp/transp_sockets.c (get_nfs_version): don't use
2010         clnt_spcreateerror if it does not exist.
2011
2012         * aux/configure.in: check for missing functions clnt_create and
2013         clnt_spcreateerror.  Check for missing strstr, and complete
2014         its code.  Check for missing external definition for strstr.
2015
2016         * aux/macros/host_macros.m4: normalize sun3* names.
2017
2018         * Makefile.am: updates for new sunos3 files distributed.
2019
2020         * conf/nfs_prot/nfs_prot_sunos3.h: new file.
2021
2022         * conf/fh_dref/fh_dref_sunos3.h: new file.
2023
2024         * aux/macros/check_nfs_prot_headers.m4: added sunos3 case.
2025
2026         * aux/macros/check_nfs_fh_dref.m4: added sunos3 case.
2027
2028         * doc/am-utils.texi (wire Selector Variable): updated manual for
2029         adjusted variables wire, network, and netnumber, all using the
2030         in_network() function.
2031
2032 Fri Dec 19 04:37:36 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2033
2034         * amd/opts.c: allow options to be processed by executing arbitrary
2035         functions.  Converted wire, network, and netnumber all to use the
2036         nomadic function in_network.  So from now on they perform a match
2037         against all networks, not just primary.
2038
2039         * initial port to alpha-unknown-linux-gnu, probably works, but
2040         untested yet.
2041
2042         * conf/nfs_prot/nfs_prot_linux.h: add special definitions for
2043         __FD_* macros which for som strange reason do not get included
2044         from <selectbits.h> on redhat alpha linux.  Also turn off usage of
2045         <rpc/des_auth.h> because it is incomplete on the same systems.
2046
2047         * hlfsd/homedir.c (table_add): cast uid field to int, for
2048         comparison.
2049
2050         * include/am_defs.h: more coflicts with redhat alpha linux
2051         "resolved".
2052
2053         * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4:
2054         There's a conflict of definitions on redhat alpha linux between
2055         <netinet/in.h> and <linux/fs.h> which must be avoided.
2056
2057         * aux/configure.in: check for <socketbits.h>, which is in use on
2058         redhat alpha linux.
2059
2060         * doc/am-utils.texi (Selectors): added documentation to describe
2061         the new "!" (negated) nomadic functions.
2062
2063         * amd/opts.c (f_in_network): print debugging info that is correct,
2064         rather than saying that any ARG is on a local network.
2065         (eval_opts): added support for negating nomadic functions, by
2066         prepending "!" to their name.  Example, !exists(/foo/bar).
2067
2068 Thu Dec 18 20:57:19 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2069
2070         * include/am_compat.h: ensure that all NFS3 systems have the mount
2071         table entries (and amd opts switches) "proto" and "vers".
2072
2073         * hlfsd/homedir.c (table_add): added some debugging info to try
2074         and track down a serious memory leak in hlfsd.
2075
2076 1997-12-18  Erez Zadok  <ezk@t-rex.mcl.cs.columbia.edu>
2077
2078         * libamu/mount_fs.c (compute_nfs_args): OpenBSD 2.2 requires that
2079         you do NOT set the noconn option, and use connected sockets
2080         always.  So I'm now forced not to set it at all, and have the user
2081         specify it as "conn" or "noconn" in their /default entry.  Argh...
2082         Finally, it looks as if OpenBSD 2.2's NFS 3 implementation may be
2083         buggy (TCP hangs with "short receive" kernel errors).  I'd better
2084         wait until they get it working in their version of the automounter
2085         first.  So I'm putting the "noconn" option back.
2086
2087 Thu Dec 18 02:39:39 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2088
2089         * libamu/mount_fs.c (compute_nfs_args): use maxgrps option and set
2090         nfs_args field maxgrouplist accordingly.
2091
2092         * include/am_compat.h (MNTTAB_OPT_MAXGROUPS): complete definition
2093         for mount table entry for maxgroups based on NFS mount option
2094         maxgrp.
2095
2096         * aux/configure.in: put back testing for NFS mount option
2097         "maxgrps".  Added test for mount table entry "maxgroups".
2098
2099         * libamu/mount_fs.c (compute_nfs_args): perform more careful tests
2100         on nfs_proto, because it could be NULL.
2101
2102         * doc/am-utils.texi (Selectors): added example of in_network()
2103         selector.
2104
2105         * aux/macros/check_hide_mount_type.m4: all hpux versions,
2106         including 9.x, should use "ignore" as the mount type to hide from
2107         amd.
2108
2109 Wed Dec 17 13:09:21 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2110
2111         * include/am_utils.h (NSTREQ): use new macro instead of strncmp()
2112         every where in the sources.
2113
2114 Wed Dec 17 01:15:01 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2115
2116         * libamu/mount_fs.c (print_nfs_args): if -D trace is on, will
2117         print as much info that is given in struct nfs_args as possible.
2118         useful for detecting internal flags and options, as well as the
2119         file handle used.
2120
2121         * scripts/ctl-amd.in: look for amd.conf file in ${prefix}/etc
2122         after /etc and before /etc/local.
2123
2124 Tue Dec 16 18:51:36 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2125
2126         * aux/configure.in, libamu/Makefile.am: added support for linking
2127         with specific versions of libamu.  Upped shared library version of
2128         libamu to 1 (libamu.so.1.0.0)
2129
2130         * include/am_defs.h: added external definition for mkstemp() as
2131         needed.
2132
2133         * minor new port to i386-unknown-netbsd1.3 (BETA version of
2134         netbsd).
2135
2136         * aux/config.guess: don't leave a trailing '.' on the system name
2137         for NetBSD-1.3_BETA and similarly for OpenBSD.
2138
2139         * conf/nfs_prot/nfs_prot_netbsd1_3.h: new header for the slight
2140         differences in ypall calling conventions.
2141
2142         * mk-amd-map/mk-amd-map.c (main): use mkstemp() whenever possible
2143         in preference over mktemp(), b/c it is more secure.
2144
2145         * aux/configure.in: check for mkstemp(), a more secure version of
2146         mktemp().
2147
2148 Mon Dec 15 02:32:14 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2149
2150         * amd/ops_nfs.c (mount_nfs_fh): Systems that include the mount
2151         table "vers" option generally do not set the mnttab entry to
2152         "nfs3", but to "nfs" and then they set "vers=3".  Setting it to
2153         "nfs3" works, but it may break some things like "df -t nfs" and
2154         the "quota" program (esp. on Solaris and Irix).  So on those
2155         systems, set it to "nfs".
2156
2157 Sat Dec 13 01:36:27 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2158
2159         * doc/am-utils.texi (Distrib): updates for new ports, location of
2160         am-utils' home page, and URL cross references (now supported by my
2161         version of texi2html).
2162
2163         * aux/macros/check_mtype_type.m4: also use string type for file
2164         system mount types under nextstep for mount(2).
2165
2166         * aux/macros/check_mtype_printf_type.m4}: nextstep can handle both
2167         integer and string types for file system mount types in mount(2),
2168         but it is better to use string types.
2169
2170         * conf/nfs_prot/nfs_prot_nextstep.h: set emum nfsstat's NFS_OK to
2171         0, not 1!  Otherwise, all NFS calls (esp. mount) return errno 1
2172         (EPERM) instead of 0 (OK).  Fixes m68k-next-nextstep3 which now
2173         works.
2174
2175         * conf/nfs_prot/nfs_prot_bsdi2.h: set emum nfsstat's NFS_OK to 0,
2176         not 1!  Otherwise, all NFS calls (esp. mount) return errno 1
2177         (EPERM) instead of 0 (OK).
2178
2179         * libamu/xdr_func.c (xdr_*): add debugging calls that are optioned
2180         by -D trace (protocol trace).
2181
2182 1997-12-11  Erez Zadok  <ezk@bach.cs.columbia.edu>
2183
2184         * A.m68k-next-nextstep3/amu_nfs_prot.h: define missing S_ISDIR
2185         macro based on existence on others, and include <sys/stat.h>.
2186
2187 Thu Dec 11 14:14:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2188
2189         * aux/macros/try_compile_nfs.m4 (AC_TRY_COMPILE): turn off
2190         inclusion of <nfs/nfs_mount.h> which only affects nextstep3, on
2191         which this header is broken (it tries to include non-existing
2192         headers).
2193
2194 Wed Dec 10 16:09:07 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2195
2196         * libamu/mount_fs.c (mnt_flags): support either nfs or generic
2197         mount option for grpid.
2198
2199         * aux/configure.in: turn back on NFS mount option grpid.
2200
2201 Sat Dec  6 04:36:05 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2202
2203         * doc/Makefile.am (install-ps): added target to install postscript
2204         file in the am-utils' home page, as well as a few other useful
2205         files for the new am-utils Web page.
2206
2207 Mon Nov 17 05:22:56 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2208
2209         *******************************************************************
2210         *** Released am-utils-6.0a14                                    ***
2211         *******************************************************************
2212
2213 Sun Nov 16 21:56:16 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2214
2215         * doc/am-utils.texi (Supported Platforms): updated table of new
2216         ports.
2217
2218 Sat Nov 15 06:36:27 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2219
2220         * libamu/mount_fs.c (compute_automounter_nfs_args): pass mnttab
2221         options so that they can be printed in logs as needed.
2222
2223         * doc/am-utils.texi (osver Parameter): updated for the correct
2224         usage of the -o/-O options.
2225
2226         * scripts/amd.conf.5: corrected info for -o/-O options.
2227
2228         * amd/amd.8: updated man page for new -O op_sys_name option, and
2229         corrected the usage of the -o op_sys_ver option
2230
2231         * amd/get_args.c (get_args): added new amd option -O to override
2232         OS name.
2233         (get_args): updated usage string.  Removed old -m option.  Added
2234         -o and -O options.
2235
2236         * conf/nfs_prot/nfs_prot_irix5.h: add definition to FHSIZE in case
2237         it is not there.  Reportedly, irix 5.2 does not define it.
2238
2239         * scripts/lostaltmail.in: removed references to unused $hack
2240         variable.
2241
2242         * aux/macros/check_nfs_prot_headers.m4: Patch from Chris Metcalf
2243         <metcalf@cag.lcs.mit.edu> to correctly set the nfs_prot headers
2244         for solaris2.5.
2245
2246         * doc/am-utils.texi (Distrib): typo in the subscription
2247         instructions to amd-dev.  Patch from Stefan Vogel
2248         <vogel@physik-rzu.unizh.ch>.
2249
2250 1997-11-15  Erez Zadok  <ezk@amtrak.cs.columbia.edu>
2251
2252         * NFS3 works on powerpc-ibm-aix4.2.1.0.
2253
2254         * libamu/mount_fs.c (compute_nfs_args): set fh3 variable to
2255         static.  Some compilers (gcc from egcs  on aix 4.2.1) corrupt the
2256         stack of an automatic variable when pointer to it is passed around
2257         several times.
2258
2259 Fri Nov 14 20:09:28 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2260
2261         * libamu/xutil.c (real_plog): syslog like behavior for normal
2262         logging.  Will not print repeated strings, only a count "last
2263         message repeated N times", but will always print something if
2264         message is repeated more than 100 times.
2265
2266         * scripts/lostaltmail.in: look for lostaltmail.conf files also in
2267         /etc/global, /etc/os, and /etc/local (in that order).
2268
2269 Mon Nov 10 03:03:17 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2270
2271         * conf/mount/mount_aix.c (mount_aix3): add support for NFS V.3
2272         mounts.
2273
2274         * aux/macros/struct_nfs_args.m4 (AC_TRY_COMPILE_NFS): test for
2275         aix42_nfs_args, specially set in conf/nfs_prot/nfs_prot_aix4_2.h
2276
2277         * conf/sa_dref/sa_dref_*.h: from now on, the "dst" argument to the
2278         NFS_SA_DREF macro is a pointer to the structure that used to be
2279         passed to it before.  So now I have to dereference the pointer
2280         before accessing its values.
2281
2282         * hlfsd/hlfsd.c (main): use the new and cleaner
2283         compute_nfs_args() and compute_automounter_nfs_args() functions.
2284
2285         * amd/ops_nfs.c (mount_nfs_fh): use the new and cleaner
2286         compute_nfs_args() and compute_automounter_nfs_args() functions.
2287
2288         * amd/ops_afs.c (mount_toplvl): MAJOR CODE REVISION.  Use the new
2289         and cleaner compute_nfs_args() and compute_automounter_nfs_args()
2290         functions.
2291
2292         * libamu/mount_fs.c (compute_nfs_args): major code cleanup that
2293         relates for struct nfs_args.  A new function sets the numerous
2294         possible flags and fields of nfs_args_t in an orderly fashion.
2295         Code cleaned up, organized, and moved from amd/hlfsd into
2296         libamu.  This saves on overall size of code.
2297         (compute_automounter_nfs_args): A variant of compute_nfs_args()
2298         which sets special options/flags that need to be used when NFS
2299         mounting an automounter's mount point.  Used by hlfsd and amd.
2300
2301         * amq/amq.c (get_secure_amd_client): don't print any more
2302         "get_secure_amd_client: using TCP, port 12345".  It's more
2303         annoying than useful a message, even when assumed to be compiled
2304         under DEBUG only.
2305
2306 Thu Oct 30 14:33:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2307
2308         * aux/macros/check_mnttab_type.m4: MAJOR BUG fixed for non-nfs
2309         mount table entries.  The code used to define the /etc/mnttab name
2310         for file systems based on physical media (disk, cdrom, floppy) to
2311         the generic name, rather than the OS specific name.  For example
2312         autoconf searches for all these types of mount table entries for a
2313         floppy based file system: vfat pcfs pc msdos msdosfs fat.  But if
2314         it found any, it hard-coded the mnttab name to "pcfs" rather than
2315         the actual name found!  Same for ufs, cdfs, pcfs, tmpfs, lofs,
2316         nullfs, unionfs, and umapfs.
2317
2318         * aux/configure.in: also test for xfs (for newer Irix) when
2319         looking for mount type names, numbers, etc of a disk-based ufs.
2320
2321 Sun Oct 26 19:32:57 1997  Erez Zadok  <ezk@defiant.soscorp.com>
2322
2323         * amq/amq.c (main): use pmap_ping() to test if remote host is up.
2324         This works better on bsdi2 and bsdi3, because their portmapper
2325         does not appear to like forwarding operations (it is generaly
2326         insecure).
2327
2328 Sat Oct 25 04:55:56 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2329
2330         *******************************************************************
2331         *** Released am-utils-6.0a13                                    ***
2332         *******************************************************************
2333
2334 Fri Oct 24 05:04:37 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2335
2336         * conf/nfs_prot/nfs_prot_ncr2.h: added missing definition for
2337         struct datum typedef.
2338
2339         * conf/nfs_prot/nfs_prot_netbsd.h: corrected typedef for
2340         ypall_callback_fxn_t for netbsd.
2341
2342         * aux/macros/type_auth_create_gidlist.m4: hpux10.10 uses int for
2343         the 5th arg to authunix_create(), while before and after they used
2344         gid_t.
2345
2346         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't use
2347         clnt_create_timed() on older Solaris 2.3 systems that did not have
2348         it.
2349
2350         * conf/nfs_prot/nfs_prot_bsdi2.h: <msdosfs/msdosfsmount.h> is for
2351         kernel only on bsdi2, so do not include it.
2352
2353 Fri Oct 24 00:29:42 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2354
2355         * hlfsd/stubs.c (nfsproc_readlink_2_svc): avoid logging repeated
2356         messages about resolution of mailboxes based on uid/gid.
2357
2358         * scripts/ctl-hlfsd.in: check for alternate password file in
2359         ${prefix}/etc/passwd and use it in hlfsd's startup.
2360
2361 Thu Oct 23 22:48:50 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2362
2363         * hlfsd/homedir.c (hlfsd_getpwent): added support for -P
2364         passwdfile option.  If hlfsd is started with -P passwdfile, then
2365         the passwdfile is read and parsed just as a standard unix
2366         passwd(4) file.  Only the username, uid, and homedir fields are
2367         read and checked.  All the rest are ignored.  No NIS/netgroup
2368         support!
2369
2370         * hlfsd/hlfsd.c (main): check if hlfsd is run as root after
2371         parsing command line options, so that usage() can be printed when
2372         -h is invoked.
2373
2374 Wed Oct 22 00:16:39 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2375
2376         * amd/nfs_start.c (mount_automounter): if autofs service listener
2377         fails to initialize it is OK if using a test amd.
2378
2379         * amd/opts.c (f_in_network): new nomadic function in_network(arg),
2380         which returns TRUE if 'arg' is any one of this host's networks.
2381
2382         * libamu/wire.c (getwire): rewritten parts of function, to store
2383         all networks names and numbers in the order of the interface (not
2384         in reverse).
2385
2386 Mon Oct 20 01:59:25 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2387
2388         * aux/configure.in: don't add ops_ufs.o on AIX twice.  My code
2389         would have worked had it not been due to AIX's buggy /bin/sh.
2390
2391         * doc/Makefile.am (EXTRA_DIST): include am-utils.dvi and
2392         am-utils.ps in the distribution sources.
2393         (html): generate html documentation for
2394         http://www.cs.columbia.edu/~ezk/am-utils/
2395
2396 Sun Oct 19 12:35:49 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2397
2398         * conf/nfs_prot/nfs_prot_netbsd.h: override the definition of
2399         ypall_callback_fxn_t.  The NetBSD team compiles all sources with
2400         gcc -Wall -Wmissing-prototypes -Wstrict-prototypes.
2401
2402         * amd/info_nis.c: allow for override of ypall_callback_fxn_t
2403         function typedef.
2404
2405         * libamu/xutil.c (amu_release_controlling_tty): new function to
2406         release the controlling tty in a clean and sane manner.  No longer
2407         using setpgid() b/c it may not work.  Uses setsid(),
2408         and ioctl() (in order).  This new function is used in amd/amd.c
2409         and hlfsd/hlfsd.c.  Also avoid setpgrp(), because it works on some
2410         systems, but on others it is the same as setpgid().
2411
2412 Sat Oct 18 23:42:40 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2413
2414         * aux/acconfig.h: check for nfs mount option 'fsname'.  Code for
2415         it was in amd/ops_afs.c, amd/ops_nfs.c, and hlfsd/hlfsd.c, but
2416         never used, because the configure test for fsname flag wasn't
2417         used.  This fixed a bug in HPUX 10, where syncer and manual mounts
2418         left blank lines in /etc/mnttab.
2419
2420         * aux/configure.in: check for nfs mount option 'fsname'.
2421
2422 Fri Oct 17 13:30:27 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2423
2424         * amd/ops_afs.c (mount_toplvl): turn on 'ignore' option in nfs
2425         mount flags of toplvl mounts.  Important esp. for HPUX 10.  Now
2426         hpux-10 will mount amd's mounts points as 'ignore' (by df).
2427
2428         * aux/configure.in: check for NFS mount option 'ignore', useful in
2429         HPUX 10.
2430
2431 Thu Oct 16 03:28:33 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2432
2433         * aux/macros/check_hide_mount_type.m4: hpux 10 should use "ignore"
2434         mount type and not NFS, for the amd mount points.
2435
2436         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't log
2437         an RPC timeout as an error, but just an info message.  From
2438         Andreas Stolcke <stolcke@speech.sri.com>
2439
2440         * If the NFS server is down or does not support the portmapper
2441         call (such as certain Novell NFS servers) we mark it as version 2
2442         and we let the nfs code deal with the case that is down.  If when
2443         the server comes back up, it can support NFS V.3 and/or TCP, it
2444         will use those.  From christos@deshaw.com (Christos Zoulas).
2445
2446         * hlfsd/homedir.c (plt_print): various compile time cleanups to
2447         printfs that take a long, but pass an int to print.  From
2448         christos@deshaw.com (Christos Zoulas).
2449
2450         * aux/macros/func_bad_yp_all.m4 (ac_cv_func_yp_all_clean,): new
2451         macro to determine if the OS has a bad yp_all(), based on the host
2452         OS name.  So far only irix (all versions) have a bad yp_all, so
2453         they will use am_yp_all() instead (which is slower as it
2454         enumerates manually all of the map's entries).
2455
2456 Thu Oct 16 03:14:37 1997  Erez Zadok  <ezk@subzero.cs.columbia.edu>
2457
2458         * amd/info_nis.c (am_yp_all): code for a replacement yp_all that
2459         avoids using a file-descriptor leaking yp_all() on some systems
2460         like irix.
2461
2462 Wed Oct 15 21:52:35 1997  Erez Zadok  <ezk>
2463
2464         * fsinfo/fsinfo.h: avoid redefining yywrap incorrectly on DU-4.x
2465         systems using /usr/bin/flex.
2466
2467         * amd/conf_tok.l (yywrap): avoid redefining yywrap for systems
2468         that have a modified GNU flex which does define yywrap (DU-4.x).
2469
2470 Fri Sep 26 14:25:29 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2471
2472         * conf/checkmount/checkmount_bsd44.c: include prototype.
2473
2474 Fri Sep 26 01:26:24 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2475
2476         *******************************************************************
2477         *** Released am-utils-6.0a12                                    ***
2478         *******************************************************************
2479
2480 Fri Sep 26 00:13:48 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2481
2482         * conf/nfs_prot/nfs_prot_irix6.h: completely turn off all autofs
2483         code in irix6 until it can be tested correctly
2484
2485         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): time out
2486         on clnt_create for 3 seconds, rather than wait for the much longer
2487         default.
2488
2489         * conf/nfs_prot/nfs_prot_aix4_2.h: port to powerpc-ibm-aix4.2.1.0.
2490         Includes NFS3, untested.
2491
2492 Thu Sep 25 11:03:11 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2493
2494         * amd/ops_pcfs.c (mount_pcfs): fill in uid/gid fields of
2495         pcfs_args_t if they exist.
2496
2497         * amd/ops_cdfs.c (mount_cdfs): fill in ssector field of
2498         cdfs_args_t if it exists.
2499
2500         * new minor ports hppa1.1-hp-hpux10.10, hppa1.1-hp-hpux9.05,
2501         hppa1.1-hp-hpux9.07, m68k-hp-hpux9.00, and sparc-sun-sunos4.1.4.
2502
2503 Wed Sep 24 00:48:05 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2504
2505         * doc/am-utils.texi (wire-test): updated documentation for the new
2506         option.
2507
2508         * wire-test/wire-test.8: updated man page for new option.
2509
2510         * wire-test/wire-test.c (main): added a test for various
2511         combinations of NFS proto/vers to a remote/local host.
2512
2513         * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include
2514         <isofs/cd9660/cd9660_mount.h> and <msdosfs/msdosfsmount.h> so that
2515         freebsd will correctly set mount options for pcfs and cdfs.
2516
2517         * amd/ops_pcfs.c (mount_pcfs): set mask field of pcfs_args to
2518         0777 (if field exists).
2519
2520         * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include
2521         <msdosfs/msdosfsmount.h> if available.
2522
2523         * minor new port: rs6000-ibm-aix4.1.4.0.
2524
2525         * libamu/mount_fs.c (mount_fs): fixed bug that caused HPUX not to
2526         write the "time" field in /etc/mnttab.
2527
2528         * conf/mtab/mtab_file.c (mnt_dup): fixed typo in macro names for
2529         detecting mnt_time field of mntent_t.
2530
2531         * libamu/mtab.c (mnt_free): fixed typo in macro names for
2532         detecting mnt_time field of mntent_t.
2533
2534 Tue Sep 23 15:30:03 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2535
2536         * conf/mtab/mtab_file.c (lock): Use flock() in preference over
2537         fcntl() to lock the mtab file.
2538
2539 Mon Sep 22 23:04:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2540
2541         * conf/transp/transp_sockets.c (get_nfs_version): define
2542         the try_again goto label only for NFS3.
2543         (pmap_ping): assume timeout failure of clnt_stat.
2544
2545         * libamu/xdr_func.c (xdr_groupnode, xdr_exportnode): cast to
2546         "groups *".
2547
2548 Mon Sep 22 20:34:33 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2549
2550         * conf/transp/transp_sockets.c (pmap_ping): patch from Dan Riley
2551         <dsr@mail.lns.cornell.edu> to make sure that amd works with more
2552         secure portmappers that do not allow forwarding of RPC messages to
2553         other services.
2554
2555         * */Makefile.am: all source files should also depend on the new
2556         include/am_xdr_func.h header.
2557
2558         * include/am_xdr_func.h: new file as part of the code cleanup from
2559         Christos Zoulas <christos@deshaw.com>.
2560
2561         * Lots of fixes from Christos Zoulas <christos@deshaw.com> that
2562         involved missing prototypes, cleaned up ones, and removal of
2563         unused variables.
2564
2565         * libamu/xdr_func.c (xdr_mountres3): some code cleanup.  A switch
2566         statement with only one case is unclean.
2567
2568 Mon Sep 22 17:26:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2569
2570         * amd/ops_<FOO>fs.c (mount_<FOO>fs): initialize mntent_t fields to
2571         0 so that all fields are initialized to zero at first.  This way
2572         SunOS 4.x and other systems don't get /etc/mtab entries with
2573         random integers for the fsck/freq fields. Patch from Andreas
2574         Stolcke <stolcke@speech.sri.com>.
2575
2576 Mon Sep 22 00:34:19 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
2577
2578         * conf/nfs_prot/nfs_prot_sunos4.h: include <nfs/nfs_clnt.h> so
2579         that the important definition for HOSTNAMESZ will be found.
2580
2581         * amd/ops_afs.c (mount_toplvl): limit hostname size to HOSTNAMESZ
2582         (inside the nfs_args structure) if the system uses that macro.
2583         Otherwise systems like SunOS refuse to NFS mount long pathnames
2584         and result in ENAMETOOLONG errno's.
2585
2586 Wed Sep 17 04:56:11 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2587
2588         * doc/am-utils.texi (Supported Platforms): specify new support for
2589         solaris 2.6, and hlfsd running on 2.5.1 too.
2590
2591 Wed Sep 17 03:55:02 1997  Erez Zadok  <ezk@amsterdam.psl.cs.columbia.edu>
2592
2593         * conf/mount/mount_svr4.c (mount_svr4): don't attemt an autofs
2594         mount if it is not supported or was turned off.
2595
2596 Wed Sep 17 03:19:36 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
2597
2598         * conf/nfs_prot/nfs_prot_sunos4.h: fixed so that it will nfs mount
2599         again.  Apparently at some previous release SunOS 4 supported was
2600         broken and all nfs mounts resulted in ESTALE.
2601
2602 Wed Sep 17 00:26:25 1997  Erez Zadok  <ezk@amsterdam.psl.cs.columbia.edu>
2603
2604         * conf/nfs_prot/nfs_prot_sunos5_6.h: nfs protocol headers for
2605         solaris 2.6.
2606
2607         * aux/macros/check_nfs_prot_headers.m4: added solaris 2.6 nfs
2608         protocol header selection.
2609
2610 Sat Sep 13 14:31:51 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2611
2612         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): avoid
2613         infinite loop.
2614
2615 Sun Sep  7 18:23:23 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2616
2617         *******************************************************************
2618         *** Released am-utils-6.0a11                                    ***
2619         *******************************************************************
2620
2621 Fri Sep  5 11:55:10 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2622
2623         * amd/amd.c (main): if plock() succeeded, don't try to display
2624         errno message.   Patch from Chris Metcalf
2625         <metcalf@catfish.lcs.mit.edu.
2626
2627 Thu Sep  4 19:17:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2628
2629         * hlfsd/homedir.c (table_add): make sure duplicate passwd entries
2630         are ignored.   Only the first entry should ever be used, because
2631         that's how lookup in passwd database works.
2632
2633         * conf/transp/transp_sockets.c (get_nfs_version): when determining
2634         if a remote host is up or down, use NFS v.2.  Fix suggested by
2635         Enami Tsugutomo <enami@cv.sony.co.jp>.
2636
2637         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): new
2638         function to get the best possible NFS version, but also timeout
2639         faster than normal defaults, so remote hosts which are down can be
2640         detected in a reasonable time.
2641         (get_nfs_version): use the new "best" function.
2642
2643 Tue Sep  2 00:41:00 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2644
2645         *******************************************************************
2646         *** Released am-utils-6.0a10                                    ***
2647         *******************************************************************
2648
2649 Mon Sep  1 15:39:51 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2650
2651         * conf/transp/transp_tli.c (get_nfs_version): don't use
2652         clnt_tp_create_timed() on systems that don'e have it (Solaris 2.4
2653         and earlier).
2654
2655         * aux/configure.in: test for existence of clnt_tp_create_timed(),
2656         since Solaris 2.4 (and possibly earlier) do not have it.
2657
2658 Mon Sep  1 15:23:18 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
2659
2660         * amd/ops_autofs.c (autofs_unmount_1_svc): only display rdevid
2661         field if it exists (solaris 2.4's autofs does not have it).
2662
2663 Mon Sep  1 14:45:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2664
2665         * aux/macros/type_auth_create_gidlist.m4: a new test to determine
2666         the correct type to the 5th argument of authunix_create().
2667
2668 Mon Sep  1 03:44:32 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
2669
2670         * libamu/xdr_func.c (xdr_umntrequest): add test for autofs
2671         structure umntrequest, if it has the field rdevid.  Seems Solaris
2672         2.4 and earlier didn't have it.
2673
2674 Mon Sep  1 01:10:53 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2675
2676         * hlfsd/hlfsd.c (hlfsd_init): moved initialization upwards, so it
2677         can be done before primary process forks.
2678         (main): bug fix: wait a bit to give child a chance to initialize.
2679         Without this, hlfsd got into a busy infinite loop while, never
2680         completing the mount.
2681
2682         * amd/info_nis.c: patch from Jason Thorpe <thorpej@nas.nasa.gov>
2683         to make amd works when talking to NIS+ servers in NIS
2684         compatibility mode.
2685
2686 Mon Sep  1 00:46:56 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2687
2688         * amd/mapc.c (MAX_CHAIN): increased maximum chain size to 1024.
2689
2690 Sun Aug 31 20:20:40 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2691
2692         * amd/conf.c (gopt_fully_qualified_hosts): a new function to
2693         process another new global variable.
2694
2695         * amd/ops_nfs.c (make_nfs_auth): if a new global variable
2696         fully_qualified_hosts is on, use FQHN in RPC/NFS authentications.
2697         Patch from Chris Metcalf <metcalf@catfish.lcs.mit.edu>.
2698
2699         * amd/conf.c (process_last_regular_map): If the amd.conf file only
2700         has a [global] section (pretty useless IMHO), do not try to
2701         process a map that does not exist.
2702
2703         * scripts/amd.conf.5: fixed typos (repeated 'as' word).
2704
2705         * doc/am-utils.texi: MAJOR DOCUMENTATION REVISION COMPLETED!!!
2706
2707         * amd/conf.c (reset_cf_map): Bug fix.  Reset 'tag' field of cfm
2708         structure, so it does not carry over from map entry to another.
2709
2710 Sat Aug 30 18:39:21 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
2711
2712         * amd/amd.c (main): fixed the meaning of the plock option.  A bug
2713         caused it to be reversed.
2714
2715 Sat Aug 30 15:13:18 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2716
2717         * hlfsd/stubs.c: don't initialize some statics here.  They are
2718         better initialized in hlfsd_init_filehandles().
2719
2720 Fri Aug 22 14:47:16 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2721
2722         * amd/conf.c (gopt_show_statfs_entries): new function and a global
2723         amd.conf key show_statfs_entries.  Defaults to 'no'.  If 'yes',
2724         then all maps flagged as browsable will also show a count of the
2725         number of entries (keys) in that map.
2726
2727         * amd/nfs_subr.c (count_map_entries): new function to count number
2728         of entries in a map.  Now used if browsable is turned on in a map,
2729         to return a count of available keys in a given map.
2730
2731         * hlfsd/stubs.c (eq_fh): use correct memcmp().  BUG fixed! hlfsd
2732         confused the file handles for ".", "..", and the symlink, causing
2733         mess.
2734
2735         * aux/macros/func_bad_memcmp.m4: new test, based on autoconf 2.12,
2736         but also defines HAVE_BAD_MEMCMP, so I avoid linkage conflicts
2737         with bad memcmp() in libc's (nextstep3).
2738
2739 Thu Aug 21 17:38:41 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2740
2741         * aux/configure.in: check if autofs_args_t has a field named
2742         addr.  Solaris has it for specifying the address of the daemon,
2743         but Irix does not.  So how does irix tell the kernel the daemon's
2744         address?  I suspect that it is hardcoded to "localhost" using a
2745         "private well-known port" (#define AUTOFS_PORT 2048).
2746
2747         * conf/nfs_prot/nfs_prot_linux.h: added missing autofs
2748         definitions.
2749
2750         * README.autofs: new file listing autofs support notes
2751
2752         * very preliminary autofs code working.  Call it pre-alpha
2753         quality.
2754
2755 Sun Aug 17 02:25:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2756
2757         * amd/conf.c (ropt_mount_type, gopt_mount_type): don't accept
2758         "autofs" if system does not support it.
2759
2760         * amd/amd.c (main): log am-utils version string (same as amd -v)
2761         at start of run.
2762
2763         * conf/transp/transp_sockets.c (get_nfs_version): in order to tell
2764         if a remote host is available, try to contact its portmapper and
2765         timeout if no answer is received in 3 seconds.
2766
2767 Thu Aug 14 16:12:04 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2768
2769         * aux/macros/check_extern.m4 (pattern): use a simpler pattern for
2770         match for external function definitions.  The function could span
2771         multiple lines, so only match the opening parenthesis, not the
2772         closing one too.
2773
2774         * aux/macros/os_cpp-flags.m4 (ac_cv_os_cppflags,): do NOT turn on
2775         posix mode for nextstep3.  It is broken.
2776
2777         * amd/amd.c (init_global_options): run uname() only if
2778         <sys/utsname.h> and uname(2) exist.
2779
2780         * amd/rpc_fwd.c (fwd_packet): if remote host is down, the
2781         forwarding socket is null, so declare this an error.
2782
2783         * include/am_utils.h (AM_ERRNO_HOST_DOWN): find best errno to set
2784         for when a remote host is down.  Try, in order, "host down", "host
2785         unreachable", "invalid argument".
2786
2787         * amd/ops_nfs.c (discard_fh): don't dereference a null pointer
2788         (happens when remote host is down, and fp->fh_fs is NULL).
2789         (prime_nfs_fhandle_cache): ditto, and set fs flags to !FSF_VALID
2790         and FSF_DOWN.
2791
2792         * amd/sched.c: nobody uses "union wait" any more, or so it
2793         appears, so clean up that code.
2794
2795         * conf/transp/transp_tli.c (get_nfs_version): if remote host is
2796         down, time it out faster than default (3 seconds).
2797         (get_mount_client): free netconfig entry when done with it.
2798
2799         * conf/nfs_prot/nfs_prot_nextstep.h: initial (and somewhat ugly)
2800         port to nextstep3 (m68k-next-nextstep3).
2801
2802         * fsinfo/Makefile.am (LDADD): needs to link with libamu in case
2803         system does not have strdup().
2804
2805         * include/am_defs.h: complete external definition for getlogin()
2806         if needed.
2807
2808         * conf/transp/transp_tli.c (get_nfs_version): no need to keep
2809         static versout variable.
2810
2811         * amd/rpc_fwd.c (fwd_packet): if fwdto packet is null, remote
2812         server is probably down.  Don't use sendto() in that case.
2813
2814         * buildall (default): run gmake if found, before trying plain
2815         make.  GNU make is always preferable.
2816
2817 Tue Aug 12 21:23:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2818
2819         * aux/macros/host_macros.m4: cleanup of os_version and os
2820         overrides.  Solaris 2.5.1 for example will come up as solaris2 and
2821         2.5.1, rather than sunos5 and 5.5.1.  Both can be overridden in
2822         the amd.conf file.
2823
2824 Fri Aug  8 14:37:30 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2825
2826         *******************************************************************
2827         *** Released am-utils-6.0a9                                     ***
2828         *******************************************************************
2829
2830 Thu Aug  7 00:52:14 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2831
2832         * conf/nfs_prot/nfs_prot_ncr2.h: new file, for NCR2
2833         (i486-ncr-sysv4.3.03) headers.  Needed to complete missing stuff
2834         from <ndbm.h> and <sys/resource.h>.
2835
2836         * scripts/amd.conf.5: new map page.
2837
2838         * amd/info_hesiod.c: define extern for hesiod_resolve, since bsdi3
2839         does not.
2840
2841         * amd/amd.8: updated man page.
2842
2843         * amd/get_args.c (get_args): removed defunct -h option to amd.
2844
2845         * amq/amq.8: updated man page.
2846
2847         * amd/info_nisplus.c (nisplus_search): prototype fixes so Sun
2848         SparcCompiler CC won't complain.
2849
2850         * amd/info_hesiod.c (hesiod_search): small fixes to compile with
2851         hesiod-1.3, as per Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>.
2852
2853         * aux/macros/opt_ldflags.m4: new option added to configure
2854         --enable-ldflags, to specify -L option for configuring/compiling.
2855         The older one --enable-libs is now to be used only for -l options.
2856
2857         * amd/ops_nfs.c (mount_nfs_fh): bug fixed.  Should initialize
2858         nc_protoname from nfs_proto if available for all TLI systems, not
2859         just those that have NFS V3.
2860
2861         * amd/info_ldap.c: ldap patches from Leif Johansson
2862         <leifj@matematik.su.se>, adding two new amd.conf ldap variables:
2863         ldap_cache_seconds and ldap_cache_maxmem.
2864
2865         * hlfsd/hlfsd.c (main): bug fixed. port number must be wrapped in
2866         htons().
2867
2868 Sun Aug  3 17:20:05 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2869
2870         * amd/nfs_start.c (mount_automounter): register amd with the rpc
2871         program number that may have been overridden by amd.conf.
2872
2873         * libamu/xutil.c (set_amd_program_number, get_amd_program_number):
2874         allow storing and retrieving alternate amd program numbers.
2875
2876         * amd/conf.c (gopt_portmap_program): new function to parse
2877         amd.conf entry portmap_program=1234.
2878
2879         * amq/amq.c (main): allow specifying an alternate rpc program
2880         number for amd via -P prognum.
2881
2882         * new amq RPC to get the process id of the running amd.  This is
2883         used in ctl-amd to quickly find the pid of the amd that is to be
2884         killed.
2885
2886         * expanded shared libraries support.  Using GNU libtool-1.0,
2887         am-utils now builds shared libraries on many platforms that have
2888         support for it and proper compilers/linkers.  See "INSTALL" file
2889         for compatibility chart.
2890
2891 Thu Jul 31 13:07:23 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2892
2893         * fsinfo/fsi_lex.l: removed code that was in support of very old
2894         versions of flex.  No longer needed.
2895
2896 Tue Jul 29 12:00:13 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2897
2898         * amd/amd.c (init_global_options): find the kernel architecture
2899         from uname() if possible.
2900
2901 Mon Jul 28 03:53:59 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2902
2903         * new working port: i386-unknown-openbsd2.1
2904
2905 Fri Jul 25 03:16:31 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
2906
2907         * working port: sparc-sun-solaris2.4.  Had to fix fhandle_t from
2908         structure to actual char[], because the structure was passed to
2909         xdr_fhandle as data and not a pointer.  Surprisingly, gcc
2910         -fpcc-struct-return did not help.
2911         
2912         * conf/nfs_prot/nfs_prot_sunos5_4.h: special nfs protocol
2913         definitions for solaris 2.4 have to be different from 2.3, and
2914         different from 2.5.
2915
2916         * libamu/xdr_fhstatus.c (xdr_fhstatus): minor code cleanup.
2917
2918 Thu Jul 24 16:22:39 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2919
2920         * conf/mount/mount_svr4.c (mount_svr4): use STREQ to compare mount
2921         types, not ==.  Fix from Christos Zoulas <christos@deshaw.com>.
2922
2923         * mk-amd-map/mk-amd-map.8: man page taken from bsd44.
2924
2925 Thu Jul 24 00:01:55 1997  Erez Zadok  <ezk@moisil.cs.columbia.edu>
2926
2927         * conf/mount/mount_linux.c: made the nfs error mapping code into a
2928         small function.
2929
2930 Wed Jul 23 16:11:49 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2931
2932         * conf/nfs_prot/nfs_prot_linux.h (NFS_ERROR_MAPPING): special
2933         error mappings from errno numbers to NFS errors.  From Debian
2934         Linux.
2935
2936         * scripts/am-eject.in (fs): new script (taken from Debian Linux
2937         folks) to auto-unmount floppy/cd devices before ejecting them.
2938
2939         * fsinfo/wr_exportfs.c (write_exportfs): from Debian folks, pass
2940         '5' as second arg to show_area_being_processed.  I'm not sure why.
2941
2942         * fsinfo/wr_atab.c (write_atab): from Debian folks, pass '5' as
2943         second arg to show_area_being_processed.  I'm not sure why.
2944
2945         * conf/mount/mount_linux.c (parse_opts): as per Debian Linux,
2946         ensure that you have a buffer in *xopts to strcat onto.
2947         (mount_linux): fixed from Debian folks to ensure that NFS mount
2948         sockets are connected only for kernels prior to 1.3.10 (avoids
2949         hangs for multi-homed hosts).
2950
2951         * amd/mapc.c (make_entry_chain): from Debian folks: don't skip
2952         over amd map keys that have a prefix, and include the prefix in
2953         the returned readdir().
2954
2955         * amd/info_passwd.c (passwd_init, passwd_search): format
2956         enhancements from the Debian Linux folks.  They added
2957         - var0:=pw-prefix:=anydir
2958         - var1:=pw-rhost:=dom3.dom2.dom1
2959         - var2:=pw-user:=user
2960         - var3:=pw-home:=/anydir/dom1/dom2/dom3/user
2961
2962         * new ports: sparc-sun-solaris2.4 and sparc-sun-sunos4.1.1.
2963
2964         * amd/ops_afs.c (afs_retry): patches from Debian Linux.  If
2965         afs_mount timed out, then explicitly forbid further retries after
2966         the timeout.  (afs_bgmount): buf fix from Debian Linux.  Timeout
2967         values (17 and 5) were mistakenly swapped.
2968
2969 Wed Jul 23 15:53:25 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
2970
2971         * conf/nfs_prot/nfs_prot_sunos5_3.h: turn off non-existent NFS V.3
2972         support for Solaris 2.4 (the header files incorrectly define parts
2973         of the NFS V.3 protocol, but the kernel does not support it).
2974
2975 Wed Jul 23 00:07:12 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2976
2977         * amd/info_hesiod.c: minor cleanup to use hes_init and hesiod_init
2978         for determining if using old or new hesiod libraries,
2979         respectively.
2980
2981         * amd/ops_nfs.c (mount_nfs_fh): If "noconn" option exists in NFS
2982         V.3 then use non-connected sockets (both TCP and UDP).  Otherwise
2983         they cause hangs of mounts from multi-homed hosts when the return
2984         route is not the same as the outgoing route (esp. on NetBSD
2985         1.2.1).  If "conn" option was supplied, then don't turn on the
2986         "noconn" mount option.  Otherwise default to "noconn" mount
2987         option.
2988
2989         * aux/configure.in: better check for systems that need libgdbm and
2990         <ndbm.h>
2991
2992 Tue Jul 22 04:02:05 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2993
2994         * hlfsd/hlfsd.c (main), amd/ops_afs.c (mount_toplvl): ensure that
2995         mounts are hidden from df(1) on systems that keep mount tables in
2996         kernel, such as osf1.
2997
2998 Tue Jul 22 02:26:55 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
2999
3000         *******************************************************************
3001         *** Released am-utils-6.0a8                                     ***
3002         *******************************************************************
3003
3004 Mon Jul 21 21:33:19 1997  Erez Zadok  <ezk@stone.mcl.cs.columbia.edu>
3005
3006         * hlfsd/hlfsd.c (main): bug fixed: forgot to set sin_family to
3007         AF_INET when hlfsd mounts itself, thus getting an errno "protocol
3008         family not supported".
3009
3010 Mon Jul 21 20:46:59 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3011
3012         * verified that amd on NetBSD 1.2.1 (i386) works, but the OS
3013         itself is flaky.
3014
3015         * verified that amd AIX 3 works w/ the new readdir() code.
3016
3017 Mon Jul 21 18:59:30 1997  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
3018
3019         * amd/mapc.c (maptypes): changed the default map caching type for
3020         nis and ndbm maps to "MAPC_ALL", so that all possible entries will
3021         be available to amd for browsable_dirs=yes.
3022
3023 Mon Jul 21 18:04:16 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3024
3025         * amd/ops_afs.c (afs_readdir, afs_readdir_browsable): split
3026         afs_readdir into a browsable version and a non-browsable one.
3027         Fixed bugs that resulted in an infinite nfs_readdir loop on the
3028         localhost for some operating systems.
3029
3030 Sat Jul 19 19:38:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3031
3032         * amd/ops_afs.c (afs_readdir): fixed up the browsable code to
3033         comply with nfs_readdir specs.  It was returning all entries at
3034         once, even if there was not enough space in the RPC packet.  Now,
3035         it sends a reasonably sized chunk, and sets static state to resume
3036         it for the next continuation RPC of readdir.
3037
3038         * amd/conf.c (set_conf_kv): fixed bug that resulted in the first
3039         regular map not getting all of the [global] options defaulted from.
3040
3041 Fri Jul 18 00:45:12 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3042
3043         * amq/amq.c (main): fixed so that portmapper "ping" will only fail
3044         upon an RPC timeout
3045
3046         * scripts/ctl-{amd,hlfsd}.in (killproc): better method to find the
3047         amd/hlfsd process to kill.
3048
3049         * amd/ops_afs.c (mount_toplvl), hlfsd/hlfsd.c (main): code to
3050         determine how to avoid df from seeing amd's toplvl mounts.  Moved
3051         from libamu/mount_fs.c and include/am_utils.h.  Ensure that hlfsd
3052         is hidden from df.
3053         (mount_toplvl): fixed df types for irix.
3054
3055 Thu Jul 17 21:59:45 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
3056
3057         * amq/amq.c (main): fixed bug that caused the 5 second timeout for
3058         TLI amq using udp to be ignored.
3059         (main): if amq cannot contact remote host's portmapper within 5
3060         seconds, timeout and fail faster than the default longer timeout
3061         (this is for non-TLI systems).
3062
3063 Thu Jul 17 17:08:13 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3064
3065         * amq/amq.c (get_secure_amd_client): if amq cannot contact
3066         remote host's portmapper within 5 seconds, timeout and fail faster
3067         than the default TLI timeout of over 4 minutes.
3068
3069         * amd/am_ops.c (ops_showfstypes): added styles for new bsd44
3070         file systems nullfs, unionfs, and umapfs.
3071         (ops_show1): cleanup code and and reuse this function.
3072         (vops): empty placeholders for nullfs, unionfs, and umapfs.
3073
3074         * amd/ops_{nullfs, unionfs, umapfs}.c: 3 new empty templates for
3075         bsd44 style file systems.
3076
3077         * fsinfo/fsinfo.8: man page for fsinfo rewritten from bsd44
3078         sources.
3079
3080         * amd/conf_tok.l, fsinof/fsi_lex.c: undefine ECHO to avoid
3081         conflict with systems that define it in <sys/ioctl.h> and also
3082         define a conflicting one via lex.  Newer versions of f/lex are ok.
3083
3084 Wed Jul 16 00:17:45 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3085
3086         * amd/ops_nfs.c (mount_nfs_fh): fill in nfs_args' fields
3087         acdirmin/max and acregmin/max only if they exist.
3088
3089         * aux/configure.in: test for nfs_args fields acdirmin and
3090         acregmin.
3091
3092 Tue Jul 15 17:24:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3093
3094         * aux/configure.in: commented out checking for MNT2_GEN_OPT_* for
3095         "nondev" and commented back in checking for "nodev".  This was a
3096         typo.
3097
3098         * include/am_compat.h: more compatibility options: define "ro"
3099         mnttab option all the time.  Define "overlay" as needed.  Added
3100         more fillers of mnttab options (as per Daniel S. Riley
3101         <dsr@mail.lns.cornell.edu>), for acdirmax, acdirmin, acregmax,
3102         acregmin, noac, grpid, nosuid, and actimo.
3103
3104         * libamu/mount_fs.c (mnt_flags): fixed a typo in "ro" option as
3105         per dsr@mail.lns.cornell.edu (Daniel S. Riley).  Then cleaned up
3106         the same code for other options in struct opt_tab.
3107
3108 Mon Jul 14 22:36:37 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3109
3110         * amd/get_args.c (get_args): moved amd.conf file parsing to before
3111         the switching the default log/debug options.  Suggested by
3112         dsr@mail.lns.cornell.edu (Daniel S. Riley).
3113
3114         * aux/update_build_version: new script to record the build version
3115         of amd, along with the rest of the info thet comes up with amd -v.
3116
3117 Sun Jul 13 00:30:24 1997  Erez Zadok  <ezk@decca.damtp.cam.ac.uk>
3118
3119         * aux/macros/os_cflags.m4: new macro, to add additional
3120         compilation options (also used during configuration), based on the
3121         OS and the compiler.  Used for solaris-2.6, osf, and irix6.
3122
3123 Fri Jul 11 10:15:11 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3124
3125         * amd/conf_tok.l, conf_parse.y: allow values of keys to include
3126         white spaces, if they are double-quoted (key="some value")
3127
3128         * amd/info_hesiod.c (hesiod_search): cleanup and minor bug fixes
3129         of hesiod from Danny Braniss <danny@cs.huji.ac.il>.
3130
3131 Fri Jul 11 02:16:06 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3132
3133         *******************************************************************
3134         *** Released am-utils-6.0a7                                     ***
3135         *******************************************************************
3136
3137 Thu Jul 10 12:19:25 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3138
3139         * include/am_defs.h: fill in extern definition of innetgr() in
3140         case system headers don't.
3141
3142         * aux/macros/path_prog_lex.m4 aux/configure.in: using macros that
3143         will show the full pathname to yacc/bison and f/lex.  Some systems
3144         have older or bad versions of those and this way the user will
3145         know for sure what is being invoked.
3146
3147         * tasks: file populated with todo items.
3148
3149         * scripts/amd2ldif.in: Script to convert amd maps to plain text
3150         LDAP object files.  Contributed by Leif Johansson
3151         <leifj@matematik.su.se>.
3152
3153         * aux/config.guess: added recognition for sun3's running 4.2bsd,
3154         from Tom Schmidt <tschmidt@micron.com>.  Fixed one small typo.
3155
3156         * amd/conf.c: several variables that were local to a map, were
3157         also added to [global], where they apply to all maps.  Each map
3158         can then individually override those defaults.  Flags
3159         affected: browsable_dirs and mount_type.  Options affected:
3160         map_type, map_options, and search_path.
3161
3162         * amd/amd.h: eliminated several global flags each of which took an
3163         int, in favor of one global flags variable used as a bit field.
3164
3165         * amd/amd.c (init_global_options): moved all global variables into
3166         a single struct amu_global_options, so it is easier to add new
3167         ones and/or identify existing ones.
3168
3169         * amd/get_args.c (get_args): removed unused amd -m option.
3170
3171         * amd/conf.c (gopt_cluster): added new amd.conf option for cluster
3172         name, same as amd -C.
3173
3174         * amd/info_ldap.c: LDAP info map functions from Leif Johansson
3175         <leifj@matematik.su.se>.
3176
3177         * amd/conf.c (gopt_ldap_base, gopt_ldap_hostports): put in global
3178         amd.conf options for ldap_base and ldap_hostports.
3179
3180         * amd/opts.c (f_netgrp): new amd map function netgrp(ARG) to test
3181         if the current host is in the ARG host netgroup.
3182
3183         * aux/configure.in: some systems replaced dbm in libc with GNU's
3184         libgdbm, so check for libgdbm, but only if dbm_open is not in
3185         libc already.  This was a recommendation from Tom Schmidt
3186         <tschmidt@micron.com>.
3187
3188         * conf/nfs_prot/nfs_prot_sunos5_3.h: port to sparc-sun-solaris2.3
3189         completed.
3190
3191 Wed Jul  9 18:14:59 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3192
3193         * port to sparc-unknown-netbsd1.2E done, not tested.  Includes NFS
3194         V.3.
3195
3196 Tue Jul  8 17:35:07 1997  Erez Zadok  <ezk@elk.mcl.cs.columbia.edu>
3197
3198         * port to i386-unknown-freebsd3.0 done and working.  Includes NFS
3199         V.3.
3200
3201         * aux/macros/check_nfs_fh_dref.m4: freebsd3 should use
3202         file handle dereferencing style similar to freebsd22.
3203
3204         * include/am_defs.h: need to include <net/if_var.h> before
3205         <netinet/if_ether.h> on freebsd3.
3206
3207         * conf/nfs_prot/nfs_prot_freebsd3.h: new protocol header additions
3208         for freeBSD 3.0.
3209
3210 Tue Jul  8 16:53:41 1997  Erez Zadok  <ezk@moisil.cs.columbia.edu>
3211
3212         * amd/info_nis.c (nis_reload): cast nis' callback function so
3213         picky compilers won't complain.
3214
3215         * libamu/xdr_mountres3.c (xdr_mountres3): make sure this function
3216         gets compiled only if the system has NFS V3 and does not have
3217         xdr_mountres3.
3218
3219 Tue Jul  8 12:42:03 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3220
3221         * COPYING: put in some legal stuff in this file.
3222
3223 Mon Jul  7 19:10:44 1997  Erez Zadok  <ezk@prometheus.soscorp.com>
3224
3225         * NFS V3 now works under Irix5, thanks to patches from 
3226         Andreas Stolcke <stolcke@speech.sri.com>.
3227
3228         * conf/mount/mount_irix5.c: sparate mount_irix.c into an irix5
3229         version and an irix6 version, since irix5's NFS V3 code is broken
3230         and hacky.
3231
3232         * amd/info_hesiod.c (hs_zone_transfer): minor fixes to buffer
3233         sizes for some hesiod queries.  Patch from Danny Braniss
3234         <danny@cs.huji.ac.il>.
3235
3236 Mon Jul  7 19:04:14 1997  Erez Zadok  <ezk@glory.soscorp.com>
3237
3238         * amd/ops_nfs.c (mount_nfs_fh): fixed NFS V.3 support for bsdi3.
3239
3240 Sun Jul  6 14:22:24 1997  Erez Zadok  <ezk@glory.soscorp.com>
3241
3242         * aux/{configure.in,acconfig.h}: added checks for struct
3243         nfs_args's fields proto and sotype (bsdi3).
3244         
3245         * amd/ops_nfs.c (mount_nfs_fh): added nfsv3 option to
3246         nfs_args.flags for bsdi3.  Set field proto to 0.  Set sotype field
3247         to SOCK_STREAM or SOCK_DGRAM.
3248
3249         * aux/macros/check_mount_style.m4: add case for bsdi3.
3250
3251         * amd/info_hesiod.c: got hesiod support for bsdi3.
3252
3253 Sun Jul  6 11:14:47 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3254
3255         * aux/configure.in: look for hesiod on libc (bsdi3)
3256
3257         * amd/get_args.c (get_args): reformat usage so it fits in 80
3258         columns.
3259
3260         * scripts/ctl-amd.in: changed directory name for optional tftpboot
3261         map to /tftpboot/.amd.
3262
3263 Sat Jul  5 17:46:45 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3264
3265         *******************************************************************
3266         *** Released am-utils-6.0a6                                     ***
3267         *******************************************************************
3268
3269 Sat Jul  5 03:17:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3270
3271         * scripts/ctl-amd.in: include -T tag for tftpboot.
3272
3273         * new port: mips-sgi-irix5.3.  Compiled with gcc, but NFS V3 code
3274         is broken and needs work on the specific nfs_args that irix5 uses
3275         for V3 mounts.
3276
3277 Sat Jul  5 01:44:25 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3278
3279         * amd/get_args.c (get_args): new options amd -T tag.  A map with
3280         tag=foo matching the -T tag will be processed.  All untagged maps
3281         get processed all the time.
3282
3283 Fri Jul  4 16:19:26 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3284
3285         * aux/configure.in: need to check for strcasecmp in libucb (ncr2)
3286
3287         * aux/macros/check_os_libs.m4: a new macro to set the usage of
3288         libnsl and libsocket based on the OS.
3289
3290         * libamu/mount_fs.c (mnt_flags): used MNTTAB_OPT_GRPID if it is
3291         defined (problem on osf4).
3292
3293         * conf/nfs_prot/nfs_prot_irix5.h: new file for irix5 headers.
3294
3295         * include/am_defs.h, aux/macros/try_compile_nfs.m4,
3296         aux/macros/mount_headers.m4: do include <sys/proc.h> because it
3297         failes on irix5.  Rather, put in the individual
3298         conf/nfs_prot/nfs_prot_*.h headers.
3299
3300         * amd/conf.c: AIX3 doesn't like strdup() being passed a constant
3301         char*, so cast all strdup()'s args to a non-const char*.
3302
3303         * amd/mapc.c (root_newmap): don't try to strdup only a "const
3304         char *".
3305
3306 Fri Jul  4 15:47:10 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
3307
3308         * conf/nfs_prot/nfs_prot_sunos4.h: added rpc/rpc.h and
3309         sys/errno.h.
3310
3311 Thu Jul  3 17:49:00 1997  Erez Zadok  <ezk@prometheus.soscorp.com>
3312
3313         * made sure am-utils compiles, links, and runs properly on Irix
3314         6.2 using "cc -32 -Wl,-woff,"
3315
3316         * aux/macros/check_lib2.m4: a bug fix version to autoconf 2.12
3317         AC_CHECK_LIB.  If OTHER-LIBRARIES are defined and used, then add
3318         them to $LIBS.
3319
3320         * aux/configure.in: some cleanup of which libraries are needed.
3321         Espectially ensure that libnsl is included only on Solaris, where
3322         so far it is the only system on which it is absolutely necessary.
3323         Also no longer need to include libc explicitly. 
3324
3325         * amd/amd.c,wire-test/wire-test.c (main): convert IP address to
3326         network-long order before printing it.
3327
3328         * wire-test/wire-test.c (main): also check and report on the IP
3329         address of the local host, since some systems have bad versions of
3330         get_myaddress, or ones that conflict with other versions in
3331         multiple libraries (SunOS 4 and Irix especially).
3332
3333 Wed Jul  2 18:19:02 1997  Erez Zadok  <ezk@starblazers.soscorp.com>
3334
3335         * scripts/ctl-amd.in: don't use full pathname so killproc() works
3336         better.  Also run bsd44 and irix style ps programs. 
3337
3338         * aux/macros/check_lib_funcs.m4: bug fixed: used to define usage
3339         of library no matter if it was found or not.
3340
3341 Wed Jul  2 02:11:48 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3342
3343         * aux/macros/check_mnt2_gen_opt.m4: turned back on the checking
3344         for M_* macros, but ensure that <sys/stream.h> is not included at
3345         all so it won't conflict with other M_* macros.
3346
3347 Tue Jul  1 21:16:51 1997  Erez Zadok  <ezk@mako.cs.columbia.edu>
3348
3349         * conf/mount/mount_irix.c (mount_irix): first arg to mount(2) on
3350         irix should be "spec" (host:/path), not the dir of the mnt point.
3351
3352         * amd/ops_afs.c (afs_lookuppn): bug in enable_default_selectors
3353         fixed.  If on, it essentially ignored the setting in a
3354         selector-controlled /defaults if there were 2 or more entries in it.
3355
3356 Tue Jul  1 12:23:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3357
3358         * scripts/ctl-{amd,hlfsd}.in (killproc): if failed to find process
3359         using BSD style ps, then try SVR4 style ps.
3360
3361         * include/am_utils.h (amuDebug): renamed Debug macro to amuDebug
3362         etc., to avoid conflicts with similar named macros in <ldap.h>.
3363
3364         * aux/configure.in, amd/info_ldap.c, etc.: put in all the autoconf
3365         support needed for LDAP.  Now the code has to be written mostly in
3366         amd/info_ldap.c.
3367
3368         * Included additional patches from Andreas Stolcke
3369         <stolcke@speech.sri.com> to support using the best possible
3370         combination of NFS version (2,3) and protocol (udp,tcp) for any
3371         given host, since it appears that some Irix versions have NFS V3,
3372         but do not support TCP.
3373
3374         * scripts/ctl-amd.in: updated amd control script to look for and
3375         use amd.conf file.
3376
3377 Tue Jul  1 00:28:23 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3378
3379         * amd/mapc.c (mapc_create): now, each map in the amd.conf can be
3380         initialized off of a different type, or default to cycling through
3381         all maps until one of them matches.
3382
3383 Mon Jun 30 20:49:13 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3384
3385         * amd/ops_afs.c (afs_readdir): per-map browsing (readdir) done.
3386         if browsable_dirs=yes is set in the map section in amd.conf, that
3387         map will return all entries back to a readdir(2).
3388
3389 Sun Jun 29 16:22:11 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3390
3391         * rudimentary amd.conf file support included.  You may even
3392         override things like os=sos5, to get "backwards" compatibility with
3393         upl102.
3394
3395 Sat Jun 28 13:35:02 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3396
3397         * amd/conf.c: new file to process amd.conf file.
3398
3399         * amd/get_args.c (get_args): new options -H to print help.
3400
3401         * moved enable_default_selectors to be amd.conf controlled, and
3402         not compiler controlled.
3403
3404         * amd/get_args.c (get_args): new options -F <conf-file> to parse an
3405         amd configuration file.
3406
3407 Wed Jun 25 23:15:42 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3408
3409         * converted all files that used strcmp() == 0 or != 0  to using
3410         the STREQ() macro.
3411
3412 Mon Jun 23 22:31:14 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3413
3414         * aux/macros/check_lib_funcs.m4: new M4 macro that can be used to
3415         search for any number of functions in any given library.
3416
3417 Mon Jun 23 01:04:23 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3418
3419         * amd/mapc.c: Included patch from Leif Johansson
3420         <leifj@matematik.su.se> to ensure that systems without an RE
3421         library can compile.
3422
3423         * libamu/mount_fs.c (mount_fs): Included patch from Andreas
3424         Stolcke <stolcke@speech.sri.com>, to ensure that mount options on
3425         table are properly delimited by a comma.
3426
3427         * amd/ops_nfs.c (mount_nfs_fh): Included patch from Andreas
3428         Stolcke <stolcke@speech.sri.com>, to allow users to override the
3429         proto= and vers= mount options.
3430
3431 Sun Jun 22 01:00:11 1997  Eric Dana  (edana@ncr2.bgs.com)
3432
3433         * conf/nfs_prot/nfs_prot_svr4.h: port completed to
3434         i486-ncr-sysv4.3.03.  Assorted source cleanups done.
3435
3436         * include/am_defs.h, aux/macros/mount_headers.m4: don't include
3437         mnttab.h if sys/mnttab.h was already included, because on ncr2,
3438         they contain conflicting entries for struct mnttab.
3439
3440 Sat Jun 21 23:52:15 1997  Eric Dana  (edana@ncr2.bgs.com)
3441
3442         * aux/macros/check_nfs_prot_headers.m4: added support for ncr2.
3443
3444 Fri Jun 20 06:14:17 1997  Erez Zadok  <ezk>
3445
3446         * amd/*.c: lots of 64-bit "ugly" ports like casts to long ints.
3447
3448         * aux/macros/struct_nfs_fh.m4: check for "struct nfssvcfh" because
3449         on DU-4.0 it is better than the next one to be picked (nfsv2fh_t).
3450
3451 Wed Jun 18 18:59:49 1997  Erez Zadok  <ezk@defiant.soscorp.com>
3452
3453         * aux/macros/struct_nfs_fh.m4 (AC_TRY_COMPILE_NFS): check for
3454         nfsv2fh_t before fhandle_t becasue on bsdi2.1 the former is
3455         better.
3456
3457 Tue Jun 10 17:06:58 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3458
3459         * amd/rpc_fwd.c (fwd_packet): TLI bug fix. if fwdto socket is
3460         NULL, set the maxlen and len fields in netbuf to zero.
3461
3462 Wed May 28 22:52:28 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3463
3464         * scripts/fix-amd-map.in (name): replace all matching patterns on
3465         line.
3466
3467 Sun May 25 19:33:41 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3468
3469         *******************************************************************
3470         *** Released am-utils-6.0a5                                     ***
3471         *******************************************************************
3472
3473 Sun May 25 13:37:24 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3474
3475         * amd/amq_subr.c (amqproc_getvers_1_svc): amq's RPC service
3476         procedure now returns the full string that amd -v returns.
3477
3478         * amd/get_args.c (get_version_string): new function to return
3479         complete version/info string so it could be used more flexibly.
3480
3481         * amd/am_ops.c (ops_showamfstypes, ops_showfstypes): put the list
3482         of Fs types into a string buffer, rather than a FILE*.
3483
3484         * amd/mapc.c (mapc_showtypes): put the list of map types into a
3485         string buffer, rather than a FILE*.
3486
3487 Sun May 25 01:25:36 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3488
3489         * amd/get_args.c (get_args): amd -v also prints user who built
3490         amd, hostname built on, and date of configuration.
3491
3492 Sat May 24 13:40:50 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3493
3494         * scripts/lostaltmail.conf-sample: sample lostaltmail
3495         configuration file.
3496
3497         * scripts/lostaltmail.in: new script lostaltmail used to redeliver
3498         "lost" mail that hlfsd redirected to a temp location because the
3499         primary home file system of the user was full.
3500
3501         * scripts/amd2sun.in: new script amd2sun. Used to convert Sub
3502         automount maps to amd maps.
3503
3504         * scripts/ctl-hlfsd.in: new script ctl-hlfsd.  Used to start,
3505         stop, or restart hlfsd.
3506         
3507         * scripts/expn.1: man page for expn command.
3508
3509         * scripts/ctl-amd.in: new script ctl-amd.  Used to start, stop, or
3510         restart amd.
3511
3512         * scripts/expn.in: new script expn.  Actually taken from David
3513         Muir Sharnoff <muir@idiom.com>.  Used by hlfsd's mail re-delivery
3514         script.
3515
3516         * scripts/wait4amd.in: new script wait4amd added.  Waits for amd
3517         to come up on a host, and then runs a command (rsh $hostname by
3518         default).
3519
3520         * scripts/Makefile.am: new directory now holds all shell/perl
3521         scripts that belong to am-utils.
3522
3523         * conf/mount/mount_linux.c (parse_opts): new parser for
3524         linux-specific mounts.  Handles fs-type specific mount-options
3525         correctly.  Currently implemented: msdos, iso9660.
3526
3527         * amd/ops_pcfs.c (pcfs_ops): don't timeout cdfs mounts by default
3528         (fix for linux).
3529
3530         * amd/ops_cdfs.c (cdfs_ops): don't timeout cdfs mounts by default
3531         (fix for linux).
3532
3533         * amd/mapc.c (make_entry_chain): fixed bug that resulted in amd
3534         core dumps upon "ls" of a mount point; an invalid pointer was
3535         being returned and dereferenced.
3536
3537         * port to Linux sparc working!
3538
3539         * hlfsd/homedir.c (hlfsd_diskspace): close file descriptor if
3540         failed to write test file, or else the fd will leak.
3541
3542 Sun May 18 00:42:41 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3543
3544         * amd/info_hesiod.c (hs_strip_our_domain): use strcasecmp()
3545         instead of strcmp().
3546
3547         * Port to Digital Unix 4.0 (OSF) done.
3548
3549         * hlfsd/hlfsd.c: renamed dirname to dir_name to avoid conflicts
3550         with dirname() function in <string.h> on OSF systems.
3551
3552         * fsinfo/fsi_util.c (set_ether_if): take out extern definition of
3553         inet_addr().  It should come from <arpa/inet.h> instead.
3554
3555         * conf/mtab/mtab_osf.c: fixed macros and added NFS V3 specs.
3556
3557         * include/am_utils.h: renamed FIRST/LAST to AM_FIRST/AM_LAST to
3558         avoid conflicts with DU 4.0 system header.
3559
3560 Thu May 15 22:49:12 1997  Erez Zadok  <ezk@subzero.cs.columbia.edu>
3561
3562         * libamu/mount_fs.c (mount_fs): pass along NFS version so I can
3563         determine if to include additional options in the mount table file
3564         entry (such as proto=tcp, and vers=3).
3565
3566 Thu May 15 00:42:12 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3567
3568         * libamu/mount_fs.c (mount_fs): include NFS version number in the
3569         mount table options, as well as proto={tcp,udp}.
3570
3571 Wed May 14 14:30:19 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3572
3573         * NFS V3 code ported to most other systems, so it compiles for V2
3574         and V3 NFS systems.
3575
3576         * NFS VERSION 3 support, first pass.  Working for Solaris and
3577         using TCP.
3578
3579 Sun May 11 01:14:29 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3580
3581         * amq/amq.c: many newline characters were missing from various
3582         stderr printfs.
3583
3584 Sat May 10 13:09:06 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3585
3586         * conf/nfs_prot/nfs_prot_sunos5.h: protocol defintions for
3587         Solaris, which include NFS V3 support.
3588
3589         * conf/nfs_prot/nfs_prot_default.h: default NFS protocol headers.
3590         *** Released am-utils-6.0a15                                    ***
3591         * conf/transp/transp_{tli,sockets}.c (get_mount_client): use NFS
3592         protocol version while getting a mount client.
3593
3594         * amd/ops_nfs.c (mount_nfs_fh): set the mount types, mnttab types,
3595         file handle size, and proper file handle based on the correct NFS
3596         version number.
3597         browsable_dirs=full, which will print *all* entries (other than
3598         * conf/mount/mount_svr4.c (mount_svr4): support NFS3 mounts under
3599         Solaris and other SVR4 systems.
3600
3601         * amd/ops_nfs.c: store NFS file handle version and version
3602         specific handle in struct fh_cache.
3603         (got_nfs_fh): pick the correct RPC reply based on the NFS version
3604         of the server.
3605         (prime_nfs_fhandle_cache): figure out the right NFS file handle
3606         for a node, but now include NFS protocol version information.
3607         (call_mountd): set the correct version for the mount protocol,
3608         based on the NFS protocol version.
3609         (nfs_init): use the NFS protocol generic structure
3610         am_nfs_handle_t.
3611         to 1500.
3612         * include/am_utils.h: new structure am_nfs_handle_t to contain all
3613         possible versions of NFS file handles.
3614         * doc/am-utils.texi: fixed reversed documentation for NFS mount
3615         * amd/srvr_nfs.c (start_ping): ping program performs NFS version
3616         specific pings.
3617         (recompute_portmap): figure out the correct portmap version mount.
3618         (nfs_keepalive): call start_ping() with the correct NFS version.
3619         (find_nfs_srvr): if mount option "vers=" is given, use it.  Get
3620         the NFS server version and verify that it is up.
3621
3622         * conf/transp/transp_{tli,sockets}.c (get_nfs_version): a new
3623         function to find the best NFS version for a particular host.
3624         installing html files.  Another new target "alldocs" is just for
3625         * libamu/amu.h: determine what is the highest version of NFS we
3626         should try.
3627
3628         * include/am_utils.h (NFS_VERSION3): added definition for NFS V3
3629         protocol number.
3630         Added field fs_version to struct fserver, so we can now store the
3631         server protocol version.
3632         facility in the log_file option.
3633 Fri May  9 01:09:45 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3634         * libamu/xutil.c (get_syslog_facility): allow users to specify the
3635         * aux/macros/check_field.m4 (AC_MOUNT_HEADERS): map '.' (dot) into
3636         underscores too, so I can test for sub-fields.
3637         will use the default LOG_DAEMON facility.
3638         * libamu/wire.c: use test that checks for sub-fields of struct
3639         ifreq.
3640 Thu Jan  8 04:05:10 1998  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3641 Sat May  6 10:20:17 2000  Erez Zadok  <ezk@glory.soscorp.com>
3642         (intel).
3643         * port to BSD/OS 3.0 completed!  Many xdr_ functions were broken
3644         into smaller files.  M4 macros fixed to test for existence of
3645         file systems using getvfsbyname().
3646         before appending to it, on systems with two or more network
3647         * amd/sched.c (sigchld): signal handler must waitpid() for all
3648         possible children.
3649         the mntent for cachefs.
3650         * hlfsd/homedir.c: signal handler must waitpid() for all possible
3651         children. 
3652         const for both arguments.
3653         * aux/macros/check_restartable_signals.m4: new macro to determine
3654         if need to reinstall signal handlers per OS is better than trying
3655         to figure these out based on system macros.
3656
3657 Fri May  5 19:23:28 2000  Erez Zadok  <ezk@glory.soscorp.com>
3658         * amq/pawd.c (cluster_server): don't use getccent() if the extern
3659         * amd/ops_nfs.c (mount_nfs_fh): set nfs_args_t version number.
3660         <cluster.h> and struct cct_entry do not exist.
3661         * amd/ops_afs.c (mount_toplvl): set nfs_args_t version number.
3662         hpux systems don't have it (hpux 10.20).
3663         * amd/ops_nfs.c (mount_nfs_fh): process nfs mount option resvport
3664         (must be supplied for bsdi 3.0)
3665
3666         * libamu/wire.c: use HAVE_FIELD_STRUCT_IFREQ_IFR_ADDR (and
3667         associated new macro) for determining the right way to compute the
3668         size of the interface structure.
3669         for new amq options -T/-U.
3670 Fri Apr 11 15:56:13 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3671
3672         * aux/configure.in: need to include libc before libnsl if
3673         get_myaddress() is available because on irix libnsl has a buggy
3674         get_myaddress().
3675
3676         * include/am_defs.h: make sure REINSTATE_SIGNAL_HANDLER is defined
3677         on Irix 6 (an SVR4 variant)
3678         * amq/pawd.c: a new program, Print Automounter Working Directory,
3679 Thu Mar 27 02:28:40 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3680         * aux/macros/localconfig.m4: trivial support for am-utils
3681         *******************************************************************
3682         *** Released am-utils-6.0a4                                     ***
3683         *******************************************************************
3684         wish in a file called localconfig.h, located in the top build
3685 Wed Mar 26 21:15:36 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
3686         * doc/am-utils.texi (Caching Filesystem): updated documents for
3687         * amd/amq_subr.c (ok_security): turned off insecure code unless
3688         user explicitly runs configure --enable-amq-mount.
3689         * amd/ops_cachefs.c: initial cachefs support, for solaris.
3690         * hlfsd/hlfsd.c (main): use new protoypes dor create_nfs_service().
3691
3692         * amd/nfs_start.c (mount_automounter): use code that separately
3693         creates the NFS and the amq service.  Register tcp and udp
3694         services for amd.
3695         cachefs file systems.
3696         * conf/transp/transp_*.c (create_amq_service): new function to
3697         separately create the amq service for amd.  Simplified prototypes
3698         for create_nfs_service().
3699         mnttab type is.
3700 Wed Mar 19 20:40:56 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3701 Mon Jan  5 23:22:49 1998  Erez Zadok  <ezk@lorien.cs.columbia.edu>
3702         *******************************************************************
3703         *** Released am-utils-6.0a3                                     ***
3704         *******************************************************************
3705
3706 Wed Mar 19 17:49:18 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3707         * amd/ops_nfsl.c (nfsl_ffserver, nfsl_match): also check if the
3708         * new port: rs6000-ibm-aix3.2.5 and rs6000-ibm-aix4.1.5.0.  Lots
3709         of small changes to support these two.
3710         type:=nfs.
3711 Wed Mar 19 14:33:30 1997  Erez Zadok  <ezk@grande.cs.columbia.edu>
3712         * updated all source files to add 1998 as a copyright year.
3713         * conf/umount/umount_default.c (umount_fs): bug: unlock_mntlist()
3714         should run if MOUNT_TABLE_ON_FILE, not otherwise.
3715         like type:=linkx if the pathname denoted by $fs exists, and like
3716 Mon Mar 17 22:02:43 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3717
3718         * hlfsd/hlfsd.c (main): fill in fhsize field if exists
3719         (freebsd-2.2).
3720
3721         * amd/ops_{nfs,afs}.c (mount_toplvl): fill in fhsize field if
3722         exists (freebsd-2.2).
3723
3724 Sat Mar 15 19:37:48 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3725         * hlfsd/homedir.c (plt_init): make function exported, to save on
3726         * new port: i386-unknown-freebsd2.2.  FreeBSD 2.2 and higher
3727         changed the filehandle type in struct nfs_args from nfsv2fh_t to
3728         u_char.
3729         instead.
3730 Sat Mar 14 10:11:03 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
3731 Thu Jan  1 00:15:58 1998  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
3732         * SHARED LIBRARIES: too many change to list individually.  Now,
3733         libamu can be built as a shared library, and other programs link
3734         with it.
3735
3736 Tue Mar 11 22:24:09 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
3737
3738         * aux/macros/opt_shared.m4: new macro for setting options for
3739         building shared am-utils libraries.
3740         * amd/ops_afs.c (mount_toplvl): Bug fix.  Don't try to free() an
3741 Sun Mar  9 19:17:46 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3742         * ALL SOURCES: change every direct call to free() to xfree(), so
3743         * fixmount/fixrmtab: cleaned up the script.
3744         call dxfree(), which will print the file name and line number
3745         * fixmount/Makefile.am (EXTRA_DIST): adde $(sbin_SCRIPTS) so that
3746         fixrmtab gets distributed too.
3747
3748         * conf/nfs_prot/nfs_prot_bsdi2.h: added support for MOUNTPROC_DUMP.
3749         Added extern for xdr_mountlist().
3750 Tue Dec 23 04:24:28 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3751         * aux/configure.in: trimmed down many tests for MNT2_GEN_OPT,
3752         MNT2_NFS_OPT, and MNTTAB_OPT that were not referenced anywhere in
3753         the sources.
3754
3755 Sat Mar  8 00:23:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3756         calloc().
3757         * fixmount/hlfsd ported to bsd44, hpux, and linux systems.
3758
3759         * aux/macros/check_fixmount_style.m4: add check for bsd44 systems.
3760         malloc().
3761         * conf/fixmount/fixmount_default.c: use lockf() if flock() is
3762         unavailable.
3763         zero its bytes.
3764         * include/am_defs.h: include <string.h> even if don't have
3765         STDC_HEADERS defined (sunos4).
3766         (seteuid): define seteuid() to be setresuid() for systems that
3767         have but not the other (hpux).
3768         * amq/amq.c: amq does not need its own definition of xfree().
3769         * aux/macros/check_extern.m4: test should include <strings.h>.
3770         look for function malloc_verify() in libmapmalloc.a, and function
3771 Tue Mar  4 17:16:52 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
3772
3773         * lib/xutil.c (debug_option): moved from amd/getargs.c to this
3774         more proper file.
3775         uordbytes, because it does not always exist.  Rather, compute it
3776         * include/am_utils.h: put in structure for debug options, for all
3777         progams to use.
3778         used when debugging memory references.
3779         * amd/get_args.c: moved structure for debug options out.
3780 Mon Dec 22 03:01:30 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3781 Sun Mar  2 00:13:07 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
3782         Otherwise browsable_dirs fails on OpenBSD 2.2.
3783         * ported fixmount.
3784         * amd/mntfs.c (uninit_mntfs): bug fix.  Moved freeing of
3785         * lib/ualarm.c: replacement function for systems that don't have a
3786         ualarm().
3787 Sat Dec 20 00:51:21 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3788         * ported fsinfo.
3789         * amd/ops_host.c (host_umounted): don't use clnt_spcreateerror()
3790 Sun Mar  1 10:23:34 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
3791         * include/am_defs.h: add missing extern definition for free().
3792         * ported mk-amd-map.
3793
3794         * buildall: added -K option to buildall, to run mkconf.
3795         optional function.
3796 Fri Feb 28 01:10:25 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3797         if they exist.
3798         *******************************************************************
3799         *** Released am-utils-6.0a2                                     ***
3800         *******************************************************************
3801         * aux/configure.in: check for missing functions clnt_create and
3802 Thu Feb 27 13:58:59 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3803
3804         * all *.[hcyl] files: add copyright line.
3805         * Makefile.am: updates for new sunos3 files distributed.
3806         * aux/macros/check_mount_type.m4: test for mount type for
3807         linux-like systems, by checking for loadable or statically linked
3808         kernel filesystem modules.
3809         * conf/fh_dref/fh_dref_sunos3.h: new file.
3810         * aux/macros/check_mnttab_type.m4: test for mount table entry
3811         for linux-like systems, by checking for loadable or statically
3812         linked kernel filesystem modules.
3813         * aux/macros/check_nfs_fh_dref.m4: added sunos3 case.
3814         * aux/configure.in: pcfs filesystems can use vfat type (linux)
3815         * doc/am-utils.texi (wire Selector Variable): updated manual for
3816         * aux/macros/check_fs_mntent.m4: test for filesystem existence for
3817         linux-like systems, by checking for loadable or statically linked
3818         kernel filesystem modules.
3819         in_network() function.
3820         * conf/trap/trap_hpux.h: ugly hack added because of stupide HPUX
3821         9.0 header files.  This should be removed when HPUX 9.0 is deemed
3822         defunct.
3823         functions.  Converted wire, network, and netnumber all to use the
3824         * aux/acconfig.h: set an undefined variable for having an extern
3825         to clnt_sperrno().
3826         against all networks, not just primary.
3827         * include/am_defs.h: define extern for clnt_sperrno() if needed.
3828         * conf/nfs_prot/nfs_prot_linux.h: add special definitions for
3829         * aux/configure.in: test for extern clnt_sperrno().
3830         <rpc/des_auth.h> because it is incomplete on the same systems.
3831         * aux/macros/check_nfs_fh_dref.m4: HPUX's NFS fhandle dref is
3832         similar to irix.
3833         * hlfsd/homedir.c (table_add): cast uid field to int, for
3834         * aux/macros/check_mount_style.m4: use mount helper on HPUX.
3835         * include/am_defs.h: more coflicts with redhat alpha linux
3836         * aux/macros/check_mtype_type.m4: hpux's mount type is a char*,
3837         not integer (but may be mapped to one later).
3838         * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4:
3839         * conf/mount/mount_hpux.c (mount_hpux): HPUX has confusing header
3840         files.  They have mount(2) and vfsmount(2) which don't take same
3841         arguments, and they have string mount types MNTTYPE_* as well as
3842         integer types MOUNT_*.  So I need this new mount function to map
3843         from string types to integer types for the vfsmount() function.
3844         redhat alpha linux.
3845         * conf/trap/trap_hpux.h (MOUNT_TRAP): instead of calling
3846         vfsmount(), call mount_hpux().
3847         the new "!" (negated) nomadic functions.
3848 Thu Feb 27 03:34:14 1997  Erez "HWank1" Zadok  <ezk@okeeffe.cs.columbia.edu>
3849         rather than saying that any ARG is on a local network.
3850         * lib/mount_fs.c (mnt_flags): make sure SYNC option is on only if
3851         both MNTTAB_OPT_SYNC and MNT2_GEN_OPT_SYNC are defined.
3852
3853 Thu Feb 27 00:26:00 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3854 Thu Dec 18 20:57:19 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3855         * conf/nfs_prot/nfs_prot_hpux.h: NFS protocol definitions for
3856         hpux.
3857
3858         * include/am_defs.h: no need to include rpc/auth.h or rpc/clnt.h.
3859         Finally, it looks as if OpenBSD 2.2's NFS 3 implementation may be
3860         * aux/configure.in: no need to test for rpc/auth.h and rpc/clnt.h.
3861         wait until they get it working in their version of the automounter
3862         * buildall: added ability to configure using other shells than
3863         /bin/sh, on those systems where /bin/sh is buggy or limited
3864         (HPUX).
3865         maxgrp.
3866         * aux/macros/struct_nfs_fh.m4: reinstated the macro but have it
3867         defined am_nfs_fh, and also test for plain typedef "nfs_fh".
3868         "maxgrps".  Added test for mount table entry "maxgroups".
3869         * aux/acconfig.h: #undef am_nfs_fh, which is being defined by a
3870         reinstated macro.
3871         * libamu/mount_fs.c (compute_nfs_args): perform more careful tests
3872         * aux/configure.in: check for <nfs/export.h>
3873
3874         * include/am_defs.h: include <nfs/export.h> (HPUX) if exists.
3875         including 9.x, should use "ignore" as the mount type to hide from
3876         * aux/macros/try_compile_nfs.m4: include <nfs/export.h> (HPUX) if
3877         exists.
3878
3879         * aux/macros/mount_headers.m4 (define): removed some non-working
3880         (on HPUX) code that attempts to recreate the fhandle_t rather than
3881         load it up from system headers.  Also added some NFS protocol
3882         header inclusion.  include <nfs/export.h> (HPUX) if exists.
3883         every where in the sources.
3884 Wed Feb 26 00:32:35 1997  Erez "HWank1" Zadok  <ezk@okeeffe.cs.columbia.edu>
3885
3886         * aux/macros/mount_headers.m4 (define): Use M4 changequote to
3887         ensure [] brackets are correctly used.
3888         useful for detecting internal flags and options, as well as the
3889         * aux/macros/expand_cpp_{string,hex,int}.m4: encapsulate
3890         multi-line M4 inclusions in [].
3891         after /etc and before /etc/local.
3892 Tue Feb 25 22:19:44 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3893         * aux/configure.in, libamu/Makefile.am: added support for linking
3894         * conf/mtab/mtab_bsd.c (mnt_dup): use statfs field f_fstypename if
3895         it exists.
3896
3897         * aux/acconfig.h: HAVE_FIELD_STRUCT_STATFS_F_FSTYPENAME, new
3898         config.h macro for field f_fstypename of struct statfs.
3899         needed.
3900         * aux/configure.in: testing for field f_fstypename field of struct
3901         statfs (NetBSD).
3902         netbsd).
3903         * aux/acconfig.h: moved all of the "static" definitions out to a
3904         fixed file called include/am_defs.h.  Added to all */Makefile.am
3905         files a dependency on am_defs.h.  Created am_defs.h of course, and
3906         then added #include <amd_defs.h> to all of the source and header
3907         files that required it.
3908         for NetBSD-1.3_BETA and similarly for OpenBSD.
3909 Mon Feb 24 01:27:02 1997  Erez Zadok  <ezk@defiant.soscorp.com>
3910         * conf/nfs_prot/nfs_prot_netbsd1_3.h: new header for the slight
3911         * aux/acconfig.h: two more externals for xdr functions that may be
3912         implemented by libamu.
3913         mktemp().
3914         * conf/nfs_prot/nfs_prot_bsdi2.h: added missing RPC and XDR
3915         definitions.
3916         * amd/ops_nfs.c (mount_nfs_fh): Systems that include the mount
3917 Sun Feb 23 15:25:26 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3918         "nfs3", but to "nfs" and then they set "vers=3".  Setting it to
3919         * buildall (default): added -D option for turning on even stricker
3920         developer options.
3921         systems, set it to "nfs".
3922         * */Makefile.am: make sure @AMU_NFS_PROT_HEADERS@ is used to
3923         determine dependencies on optional NFS protocol headers.
3924
3925         * aux/acconfig.h: define and use HAVE_NFS_PROT_HEADERS as needed.
3926
3927         * aux/macros/check_nfs_prot_header.m4: new test to determine what
3928         NFS protocol headers to use. 
3929         system mount types under nextstep for mount(2).
3930         * conf/nfs_prot/nfs_prot_{irix6,sunos4,bsdi2}.h: new headers to
3931         complete missing system headers for NFS protocol definitions.
3932         integer and string types for file system mount types in mount(2),
3933 Sun Feb 16 15:58:42 1997  Erez "HWank1" Zadok  <ezk@vir.cs.columbia.edu>
3934         (EPERM) instead of 0 (OK).  Fixes m68k-next-nextstep3 which now
3935         * amd/ops_nfs.c (mount_nfs_fh): encapsulated some more code in
3936         #ifdef's as needed.
3937
3938         * amd/ops_afs.c (mount_toplvl): make sure TIMEO/RETRANS code is
3939         suitable #ifdef'ed.
3940
3941         * include/am_compat.h: a couple more mnttab options
3942         (timeo/retrans) setting just in case.
3943
3944         * amd/autil.c (host_normalize): make sure hostent->h_name is
3945         passed a non-const char *.
3946
3947         * conf/mount/mount_linux.c (mount_linux): cleaned up a block of code.
3948         inclusion of <nfs/nfs_mount.h> which only affects nextstep3, on
3949         * {lib,amq,amd}/*.c (many functions): cast xdr_entry to
3950         XDRPROC_T_TYPE.
3951         * libamu/mount_fs.c (mnt_flags): support either nfs or generic
3952         * lib/nfs_prot_svc.c (nfs_program_2): cast xdr_entry to
3953         XDRPROC_T_TYPE.
3954
3955         * lib/nfs_prot_xdr.c (xdr_entry): cast xdr_entry to
3956         XDRPROC_T_TYPE.
3957
3958         * lib/wire.c (getwire): Make sure safe assignment from const to
3959         none is done.
3960         file in the am-utils' home page, as well as a few other useful
3961 Sat Feb 15 19:38:51 1997  Erez "HWank1" Zadok  <ezk@vir.cs.columbia.edu>
3962 Mon Nov 17 05:22:56 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
3963         * aux/macros/expand_cpp_int.m4: new macro for expanding integers.
3964         *******************************************************************
3965         * aux/configure.in: added linux/fs.h support in configure and
3966         several M4 macros.
3967
3968         * conf/mount/mount_linux.c (mount_linux): use macro instead of
3969         "ugly" fixed hex number for mount() arguments.
3970         ports.
3971 Sat Feb 15 02:09:47 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
3972
3973         * amd/info_hesiod.c: removed macro HAVE_HS_ZONE_TRANSFER and
3974         turned all of its code always on.  That code always seems to
3975         compile, as long as you have hesiod and libresolv.
3976         * scripts/amd.conf.5: corrected info for -o/-O options.
3977         * amd/mapc.c: removed macro HAVE_HS_ZONE_TRANSFER and turned all
3978         of its code always on.
3979         OS name.
3980         * aux/configure.in: removed superfluous test for hs_zone_transfer
3981         function (will never find it because it is an amd-internal
3982         function).
3983         -o and -O options.
3984         * amd/mapc.c (maptypes): must used correct new name for am-utils'
3985         hesiod initialization function: hesiod_am_init.
3986
3987         * amd/info_hesiod.c (hesiod_am_init): renamed hesiod_init to
3988         hesiod_am_init so as not to conflict with libhesiod's
3989         hesiod_init() function.
3990         variable.
3991         * aux/configure.in: added test and explicit inclusion of
3992         libresolv.a for later resolution of library references with
3993         libhesiod.
3994         <metcalf@cag.lcs.mit.edu> to correctly set the nfs_prot headers
3995         * aux/macros/opt_cppflags.m4: new file.  configure/compile C
3996         preprocessor flags.
3997         * doc/am-utils.texi (Distrib): typo in the subscription
3998         * aux/macros/opt_libs.m4: new file.  configure/compile library
3999         flags.
4000         <vogel@physik-rzu.unizh.ch>.
4001         * Makefile.am (EXTRA_DIST_AUX): include two new macros
4002         opt_cppflags.m4 and opt_libs.m4.
4003 1997-11-15  Erez Zadok  <ezk@amtrak.cs.columbia.edu>
4004         * aux/configure.in: test for libhesiod needs to additional
4005         libresolv to link completely.  Additional configuration time
4006         options added for setting initial CPPFLAGS and LIBS.
4007
4008 Tue Feb 10 02:15:40 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4009         * NFS3 works on powerpc-ibm-aix4.2.1.0.
4010
4011         *** Released am-utils-6.0a1                                     ***
4012         static.  Some compilers (gcc from egcs  on aix 4.2.1) corrupt the
4013         stack of an automatic variable when pointer to it is passed around
4014 Thu Feb  6 02:55:19 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4015
4016         * amd/info_ndbm.c (ndbm_search,ndbm_init): fixed the code so that
4017         it works on freebsd, where they map dbm_pagfno a non-existing
4018         macro on purpose, to force you to port the code to Berkeley DB.
4019         * libamu/xutil.c (real_plog): syslog like behavior for normal
4020 Fri Jan 31 01:35:09 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4021
4022         * amd/ops_afs.c (mount_toplvl): added a sleep(1) right before the
4023         actual mount_toplvl, to avoid some possible race conditions.
4024
4025 Thu Jan 30 02:31:49 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4026
4027         * amd/rpc_fwd.c: removed all TLI (HAVE_T_OPEN) code.
4028
4029 Wed Jan 29 18:25:07 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4030
4031         * lib/wire.c (getwire): removed HAVE_T_OPEN (TLI code)
4032         passed to it before.  So now I have to dereference the pointer
4033         * amd/amd.c (main): fix local address using htonl(). Free up
4034         buffers allocated by netdir_*() functions.
4035
4036 Wed Jan 22 23:53:24 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4037
4038         * amd/fix-amd-map.in: new script that will convert old-style amd
4039         maps to new one.
4040         compute_nfs_args() and compute_automounter_nfs_args() functions.
4041 Tue Jan 21 01:18:16 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4042         and cleaner compute_nfs_args() and compute_automounter_nfs_args()
4043         * FIRST AMD IN AM-UTILS FINALLY WORKS (mounts itself as toplvl,
4044         and replies back to simple nfs/link type mount queries).
4045         relates for struct nfs_args.  A new function sets the numerous
4046         * conf/mtab/mtab_svr4.c: reorganized the code in this file to be
4047         easier to read, and fixed a few bugs with un/setting the lock file
4048         descriptor.
4049         libamu.  This saves on overall size of code.
4050 Wed Jan  8 15:27:49 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4051         mounting an automounter's mount point.  Used by hlfsd and amd.
4052         * amd/sched.c: removed HAS_SVR3_SIGNALS code to handle older
4053         signals in Svr3 systems.  Only stellix ever used this.
4054         * amq/amq.c (get_secure_amd_client): don't print any more
4055         * amd/rpc_fwd.c (fwd_reply): removed all code that was triggered
4056         by DYNAMIC_BUFFERS, since it was not in use.
4057         under DEBUG only.
4058 Tue Jan  7 00:45:59 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4059
4060         * amd/opts.c (eval_opts): removed AMD_COMPAT code.  Amd no longer
4061         takes '=' sign as old selector.  Fix your maps.
4062         (deslashify): removed APOLLO code that treated two '//' as one.
4063         for file systems based on physical media (disk, cdrom, floppy) to
4064 Sun Jan  5 01:25:09 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4065         autoconf searches for all these types of mount table entries for a
4066         * amd/ops_nfsx.c (nfsx_init): removed HARD_NFSX_ERRORS, code which
4067         was not used.  It made any submount error fail the whole group.
4068         the actual name found!  Same for ufs, cdfs, pcfs, tmpfs, lofs,
4069         * amd/ops_nfs.c (make_nfs_auth): removed code dependent on
4070         HAS_NFS_QUALIFIED_NAMES.
4071         (mount_nfs_fh): removed macro for NFS_ARGS_NEEDS_PATH, assuming it
4072         is never on.  So code that was triggered by #ifndef
4073         NFS_ARGS_NEEDS_PATH (osf1, aix3, and bsd44 variants) may have to
4074         be fixed later.
4075         Removed all ULTRIX_HACK code.  Ultrix is DEAD!
4076         removed all PRESET_AC code, which was only on for Linux to preset
4077         the attribute cache values (otherwise they default to zero).
4078         (nfs_umounted): revobed KICK_KERNEL code (IRIX systems).  Will
4079         have to fixed up later.
4080         (mount_nfs_fh): removed code that was never included, which
4081         attempted to set the port on which amd's nfs mounts on.  This
4082         isn't supported by the ping algorithm yet.  In any case, it is all
4083         done in nfs_init().
4084
4085         * amd/srvr_nfs.c (find_nfs_srvr), amd/ops_nfs.c (mount_nfs_fh):
4086         removed HAS_TCP_NFS code.  The whole use of NFS V.3 with TCP or
4087         specially hacked NFS V.2 that uses TCP (BSD 4.4 variants) will
4088         have to be addressed later.
4089 Sun Oct 26 19:32:57 1997  Erez Zadok  <ezk@defiant.soscorp.com>
4090         * amd/nfs_subr.c (nfsproc_getattr_2): removed all code dependent
4091         on PRECISE_SYMLINKS.
4092         This works better on bsdi2 and bsdi3, because their portmapper
4093         * amd/mapc.c (mapc_meta_search): removed code that depended on
4094         HAS_DEPOT.  It is known buggy code.  The whole DEPOT support needs
4095         to be rethought.
4096         (mapc_add_kv): ported code to use standard regular expression
4097         (regexp) library.
4098         insecure).
4099         * amd/{map.c,ops_sfs.c,ops_ufs.c}: removed all code dependent on
4100         FLUSH_KERNEL_NAME_CACHE and the macro itself.
4101         *** Released am-utils-6.0a13                                    ***
4102 Sat Jan  4 15:46:58 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4103 Fri Oct 24 05:04:37 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4104         * amd/map.c (exported_ap_alloc): removed all code triggered by
4105         SHRINK_EXPORTED_AP and the macro itself.
4106         struct datum typedef.
4107         * amd/info_nis.c: removed HAS_NIS_RELOAD macro, and left the code
4108         in all the time.  Assuming that there is always NIS realod
4109         available.
4110         (yp_all_fixed): removed code for BROKEN_YP_ALL.  If your yp_all()
4111         function is broken such that it does not release filedescriptors
4112         it created, then you are hosed.  Get a fix for yp_all from your
4113         vendor or switch operating systems.
4114
4115 Tue Dec 31 15:34:36 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4116         gid_t.
4117         * amd/info_hesiod.c: renamed macro HAS_HESIOD_RELOAD to
4118         HAVE_HS_ZONE_TRANSFER.
4119         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't use
4120 Mon Dec 30 17:33:23 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4121
4122         * amd/{nfs,host}_ops.cremoved INFORM_MOUNTD macro, so its code is
4123         always included.  We should always try to inform the remove mount
4124         daemon of mounts we performed.  If we want an option for this, it
4125         should be a run-time option.
4126
4127         * amd/host_ops.c: removed all that optionally did not make the
4128         directory mount points for amd.
4129
4130         * HOST_EXEC code removed from everywhere.  There is no indication
4131         that it was used anywhere.  If it needs to be used, then a
4132         run-time switch should control it.
4133
4134 Thu Dec 26 00:06:52 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4135         passwdfile option.  If hlfsd is started with -P passwdfile, then
4136         * amd/*_ops.c: removed all references to mntent_t's fields
4137         mnt_freq and mnt_passno, since they are no longe rused (and never
4138         have been).
4139         read and checked.  All the rest are ignored.  No NIS/netgroup
4140         * amd/am_ops.c: removed function sunos4_match, which was off
4141         anyway.  This was one of the places where an '=' sign was allowed
4142         as an assignment operator (which is now ':=').
4143
4144         * amd/afs_ops.c (afs_bgmount): removed SUNOS4_COMPAT code which
4145         was off anyway.  This was one of the places where an '=' sign was
4146         allowed as an assignment operator (which is now ':=').
4147         -h is invoked.
4148 Tue Dec 24 01:53:52 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4149 Wed Oct 22 00:16:39 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
4150         * amq/amq.c: ported to am-utils.  Working.
4151
4152         * conf/mount/mount_svr4.c (mount_svr4): changed mount type on svr4
4153         to be string, as it should be (rather than a string mapped to int
4154         and back mapped to string).
4155         which returns TRUE if 'arg' is any one of this host's networks.
4156 Sun Dec 22 13:26:05 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4157         all networks names and numbers in the order of the interface (not
4158         * lib/mount_fs.c (mount_fs): removed MNTINFO_PREF code.
4159 Mon Oct 20 01:59:25 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4160         * lib/umount_fs.c: split this into three files: default, osf, and
4161         bsd44, that are in conf/umount/umount_*.c.
4162         * aux/configure.in: don't add ops_ufs.o on AIX twice.  My code
4163 Thu Dec 19 17:33:46 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
4164         * doc/Makefile.am (EXTRA_DIST): include am-utils.dvi and
4165         * aux/configure.in, aux/aclocal.m4, aux/acconfig.h: added new
4166         macro to automatically figure out if an external definition for
4167         sys_errlist[] exists.
4168         (html): generate html documentation for
4169         * lib/xutil.c (xfree): removed "#undef free" because it's not
4170         needed there.  Any system that redefines free() needs help.
4171
4172         * conf/mtab/mtab_file.c (REWRITE_MTAB_IN_PLACE): removed code that
4173         was dependent on REWRITE_MTAB_IN_PLACE.  It does not appear to be
4174         in active use anywhere.  If added later, it should be a run-time
4175         configuration option.
4176         ypall_callback_fxn_t.  The NetBSD team compiles all sources with
4177         * conf/mtab/mtab_mach3.c: removed code that was #ifdef'ed not to
4178         be MOUNT_TABLE_ON_FILE, since mach2 always stores its mount tables
4179         in a file in /etc.
4180         function typedef.
4181         * lib/util.c (str3cat): removed _AIX code.  AIX should have a
4182         working realloc, or else find a cleaner solution to this.
4183         (mkdirs): removed SUNOS4_WORKAROUND code.  This was to do a sync()
4184         after immediately making directories so that fsck will be able to
4185         fix the filesystem in the event of an immediate crash.  This was
4186         because a bug in UFS which is fixed by now.
4187         * libamu/xutil.c (amu_release_controlling_tty): new function to
4188         * lib/hutil.c (domain_strip): removed PARTIAL_DOMAINS triggered
4189         code.  Does not appear to be on and used anywhere.
4190         (dofork): removed MACH3 code, b/c mach3 NFS bugs are fixed by now.
4191         and hlfsd/hlfsd.c.  Also avoid setpgrp(), because it works on some
4192         * lib/resvport.c: split the binding of reserved ports code to a
4193         separate file.  A #define (HAVE_T_OPEN) separates the TLI (SVR4)
4194         from the BSD code.
4195
4196 Thu Dec 19 02:08:35 1996  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4197
4198         * lib/Makefile.am (amu_LIBADD): includs @LIBOBJS@ now, auto-filled
4199         in by automake and configure, for optional sources that need to be
4200         built as part of libamu.a.
4201
4202         * aux/aclocal.m4: Make sure AC_CHECK_MOUNT_STYLE adds mountutil.o
4203         to LIBOBJS.
4204
4205         * lib/memcmp.c (memcmp): new file added to replace a possible bad
4206         implementation of memcmp.
4207
4208 Wed Dec 18 22:20:23 1996  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4209
4210         * converted the sources to use memset/memmove/memcmp instead of
4211         bzero/bcopy/bcmp.
4212
4213         * ran all sources through gnu Indent w/ options specified in
4214         aux/amindent.
4215
4216 Wed Dec 11 22:19:29 1996  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4217
4218         * At this point the initial genration of config.h via autoconf and
4219         some preliminary makefiles via automake is done.  I will not begin
4220         modifying sources, so it's a good time to document from here.
4221
4222 Wed Dec 10 22:19:29 1996  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4223
4224         *******************************************************************
4225         *** Initial ChangeLog Entry                                     ***
4226         *******************************************************************
4227
4228         * amd/ops_afs.c (mount_toplvl): turn on 'ignore' option in nfs
4229         mount flags of toplvl mounts.  Important esp. for HPUX 10.  Now
4230         hpux-10 will mount amd's mounts points as 'ignore' (by df).
4231
4232         * aux/configure.in: check for NFS mount option 'ignore', useful in
4233         HPUX 10.
4234
4235 Thu Oct 16 03:28:33 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4236
4237         * aux/macros/check_hide_mount_type.m4: hpux 10 should use "ignore"
4238         mount type and not NFS, for the amd mount points.
4239
4240         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't log
4241         an RPC timeout as an error, but just an info message.  From
4242         Andreas Stolcke <stolcke@speech.sri.com>
4243
4244         * If the NFS server is down or does not support the portmapper
4245         call (such as certain Novell NFS servers) we mark it as version 2
4246         and we let the nfs code deal with the case that is down.  If when
4247         the server comes back up, it can support NFS V.3 and/or TCP, it
4248         will use those.  From christos@deshaw.com (Christos Zoulas).
4249
4250         * hlfsd/homedir.c (plt_print): various compile time cleanups to
4251         printfs that take a long, but pass an int to print.  From
4252         christos@deshaw.com (Christos Zoulas).
4253
4254         * aux/macros/func_bad_yp_all.m4 (ac_cv_func_yp_all_clean,): new
4255         macro to determine if the OS has a bad yp_all(), based on the host
4256         OS name.  So far only irix (all versions) have a bad yp_all, so
4257         they will use am_yp_all() instead (which is slower as it
4258         enumerates manually all of the map's entries).
4259
4260 Thu Oct 16 03:14:37 1997  Erez Zadok  <ezk@subzero.cs.columbia.edu>
4261
4262         * amd/info_nis.c (am_yp_all): code for a replacement yp_all that
4263         avoids using a file-descriptor leaking yp_all() on some systems
4264         like irix.
4265
4266 Wed Oct 15 21:52:35 1997  Erez Zadok  <ezk>
4267
4268         * fsinfo/fsinfo.h: avoid redefining yywrap incorrectly on DU-4.x
4269         systems using /usr/bin/flex.
4270
4271         * amd/conf_tok.l (yywrap): avoid redefining yywrap for systems
4272         that have a modified GNU flex which does define yywrap (DU-4.x).
4273
4274 Fri Sep 26 14:25:29 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4275
4276         * conf/checkmount/checkmount_bsd44.c: include prototype.
4277
4278 Fri Sep 26 01:26:24 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4279
4280         *******************************************************************
4281         *** Released am-utils-6.0a12                                    ***
4282         *******************************************************************
4283
4284 Fri Sep 26 00:13:48 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4285
4286         * conf/nfs_prot/nfs_prot_irix6.h: completely turn off all autofs
4287         code in irix6 until it can be tested correctly
4288
4289         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): time out
4290         on clnt_create for 3 seconds, rather than wait for the much longer
4291         default.
4292
4293         * conf/nfs_prot/nfs_prot_aix4_2.h: port to powerpc-ibm-aix4.2.1.0.
4294         Includes NFS3, untested.
4295
4296 Thu Sep 25 11:03:11 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4297
4298         * amd/ops_pcfs.c (mount_pcfs): fill in uid/gid fields of
4299         pcfs_args_t if they exist.
4300
4301         * amd/ops_cdfs.c (mount_cdfs): fill in ssector field of
4302         cdfs_args_t if it exists.
4303
4304         * new minor ports hppa1.1-hp-hpux10.10, hppa1.1-hp-hpux9.05,
4305         hppa1.1-hp-hpux9.07, m68k-hp-hpux9.00, and sparc-sun-sunos4.1.4.
4306
4307 Wed Sep 24 00:48:05 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4308
4309         * doc/am-utils.texi (wire-test): updated documentation for the new
4310         option.
4311
4312         * wire-test/wire-test.8: updated man page for new option.
4313
4314         * wire-test/wire-test.c (main): added a test for various
4315         combinations of NFS proto/vers to a remote/local host.
4316
4317         * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include
4318         <isofs/cd9660/cd9660_mount.h> and <msdosfs/msdosfsmount.h> so that
4319         freebsd will correctly set mount options for pcfs and cdfs.
4320
4321         * amd/ops_pcfs.c (mount_pcfs): set mask field of pcfs_args to
4322         0777 (if field exists).
4323
4324         * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include
4325         <msdosfs/msdosfsmount.h> if available.
4326
4327         * minor new port: rs6000-ibm-aix4.1.4.0.
4328
4329         * libamu/mount_fs.c (mount_fs): fixed bug that caused HPUX not to
4330         write the "time" field in /etc/mnttab.
4331
4332         * conf/mtab/mtab_file.c (mnt_dup): fixed typo in macro names for
4333         detecting mnt_time field of mntent_t.
4334
4335         * libamu/mtab.c (mnt_free): fixed typo in macro names for
4336         detecting mnt_time field of mntent_t.
4337
4338 Tue Sep 23 15:30:03 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4339
4340         * conf/mtab/mtab_file.c (lock): Use flock() in preference over
4341         fcntl() to lock the mtab file.
4342
4343 Mon Sep 22 23:04:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4344
4345         * conf/transp/transp_sockets.c (get_nfs_version): define
4346         the try_again goto label only for NFS3.
4347         (pmap_ping): assume timeout failure of clnt_stat.
4348
4349         * libamu/xdr_func.c (xdr_groupnode, xdr_exportnode): cast to
4350         "groups *".
4351
4352 Mon Sep 22 20:34:33 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
4353
4354         * conf/transp/transp_sockets.c (pmap_ping): patch from Dan Riley
4355         <dsr@mail.lns.cornell.edu> to make sure that amd works with more
4356         secure portmappers that do not allow forwarding of RPC messages to
4357         other services.
4358
4359         * */Makefile.am: all source files should also depend on the new
4360         include/am_xdr_func.h header.
4361
4362         * include/am_xdr_func.h: new file as part of the code cleanup from
4363         Christos Zoulas <christos@deshaw.com>.
4364
4365         * Lots of fixes from Christos Zoulas <christos@deshaw.com> that
4366         involved missing prototypes, cleaned up ones, and removal of
4367         unused variables.
4368
4369         * libamu/xdr_func.c (xdr_mountres3): some code cleanup.  A switch
4370         statement with only one case is unclean.
4371
4372 Mon Sep 22 17:26:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4373
4374         * amd/ops_<FOO>fs.c (mount_<FOO>fs): initialize mntent_t fields to
4375         0 so that all fields are initialized to zero at first.  This way
4376         SunOS 4.x and other systems don't get /etc/mtab entries with
4377         random integers for the fsck/freq fields. Patch from Andreas
4378         Stolcke <stolcke@speech.sri.com>.
4379
4380 Mon Sep 22 00:34:19 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
4381
4382         * conf/nfs_prot/nfs_prot_sunos4.h: include <nfs/nfs_clnt.h> so
4383         that the important definition for HOSTNAMESZ will be found.
4384
4385         * amd/ops_afs.c (mount_toplvl): limit hostname size to HOSTNAMESZ
4386         (inside the nfs_args structure) if the system uses that macro.
4387         Otherwise systems like SunOS refuse to NFS mount long pathnames
4388         and result in ENAMETOOLONG errno's.
4389
4390 Wed Sep 17 04:56:11 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4391
4392         * doc/am-utils.texi (Supported Platforms): specify new support for
4393         solaris 2.6, and hlfsd running on 2.5.1 too.
4394
4395 Wed Sep 17 03:55:02 1997  Erez Zadok  <ezk@amsterdam.psl.cs.columbia.edu>
4396
4397         * conf/mount/mount_svr4.c (mount_svr4): don't attemt an autofs
4398         mount if it is not supported or was turned off.
4399
4400 Wed Sep 17 03:19:36 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
4401
4402         * conf/nfs_prot/nfs_prot_sunos4.h: fixed so that it will nfs mount
4403         again.  Apparently at some previous release SunOS 4 supported was
4404         broken and all nfs mounts resulted in ESTALE.
4405
4406 Wed Sep 17 00:26:25 1997  Erez Zadok  <ezk@amsterdam.psl.cs.columbia.edu>
4407
4408         * conf/nfs_prot/nfs_prot_sunos5_6.h: nfs protocol headers for
4409         solaris 2.6.
4410
4411         * aux/macros/check_nfs_prot_headers.m4: added solaris 2.6 nfs
4412         protocol header selection.
4413
4414 Sat Sep 13 14:31:51 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4415
4416         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): avoid
4417         infinite loop.
4418
4419 Sun Sep  7 18:23:23 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4420
4421         *******************************************************************
4422         *** Released am-utils-6.0a11                                    ***
4423         *******************************************************************
4424
4425 Fri Sep  5 11:55:10 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4426
4427         * amd/amd.c (main): if plock() succeeded, don't try to display
4428         errno message.   Patch from Chris Metcalf
4429         <metcalf@catfish.lcs.mit.edu.
4430
4431 Thu Sep  4 19:17:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4432
4433         * hlfsd/homedir.c (table_add): make sure duplicate passwd entries
4434         are ignored.   Only the first entry should ever be used, because
4435         that's how lookup in passwd database works.
4436
4437         * conf/transp/transp_sockets.c (get_nfs_version): when determining
4438         if a remote host is up or down, use NFS v.2.  Fix suggested by
4439         Enami Tsugutomo <enami@cv.sony.co.jp>.
4440
4441         * conf/transp/transp_tli.c (amu_clnt_create_best_vers): new
4442         function to get the best possible NFS version, but also timeout
4443         faster than normal defaults, so remote hosts which are down can be
4444         detected in a reasonable time.
4445         (get_nfs_version): use the new "best" function.
4446
4447 Tue Sep  2 00:41:00 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4448
4449         *******************************************************************
4450         *** Released am-utils-6.0a10                                    ***
4451         *******************************************************************
4452
4453 Mon Sep  1 15:39:51 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4454
4455         * conf/transp/transp_tli.c (get_nfs_version): don't use
4456         clnt_tp_create_timed() on systems that don'e have it (Solaris 2.4
4457         and earlier).
4458
4459         * aux/configure.in: test for existence of clnt_tp_create_timed(),
4460         since Solaris 2.4 (and possibly earlier) do not have it.
4461
4462 Mon Sep  1 15:23:18 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
4463
4464         * amd/ops_autofs.c (autofs_unmount_1_svc): only display rdevid
4465         field if it exists (solaris 2.4's autofs does not have it).
4466
4467 Mon Sep  1 14:45:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4468
4469         * aux/macros/type_auth_create_gidlist.m4: a new test to determine
4470         the correct type to the 5th argument of authunix_create().
4471
4472 Mon Sep  1 03:44:32 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
4473
4474         * libamu/xdr_func.c (xdr_umntrequest): add test for autofs
4475         structure umntrequest, if it has the field rdevid.  Seems Solaris
4476         2.4 and earlier didn't have it.
4477
4478 Mon Sep  1 01:10:53 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4479
4480         * hlfsd/hlfsd.c (hlfsd_init): moved initialization upwards, so it
4481         can be done before primary process forks.
4482         (main): bug fix: wait a bit to give child a chance to initialize.
4483         Without this, hlfsd got into a busy infinite loop while, never
4484         completing the mount.
4485
4486         * amd/info_nis.c: patch from Jason Thorpe <thorpej@nas.nasa.gov>
4487         to make amd works when talking to NIS+ servers in NIS
4488         compatibility mode.
4489
4490 Mon Sep  1 00:46:56 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
4491
4492         * amd/mapc.c (MAX_CHAIN): increased maximum chain size to 1024.
4493
4494 Sun Aug 31 20:20:40 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
4495
4496         * amd/conf.c (gopt_fully_qualified_hosts): a new function to
4497         process another new global variable.
4498
4499         * amd/ops_nfs.c (make_nfs_auth): if a new global variable
4500         fully_qualified_hosts is on, use FQHN in RPC/NFS authentications.
4501         Patch from Chris Metcalf <metcalf@catfish.lcs.mit.edu>.
4502
4503         * amd/conf.c (process_last_regular_map): If the amd.conf file only
4504         has a [global] section (pretty useless IMHO), do not try to
4505         process a map that does not exist.
4506
4507         * scripts/amd.conf.5: fixed typos (repeated 'as' word).
4508
4509         * doc/am-utils.texi: MAJOR DOCUMENTATION REVISION COMPLETED!!!
4510
4511         * amd/conf.c (reset_cf_map): Bug fix.  Reset 'tag' field of cfm
4512         structure, so it does not carry over from map entry to another.
4513
4514 Sat Aug 30 18:39:21 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
4515
4516         * amd/amd.c (main): fixed the meaning of the plock option.  A bug
4517         caused it to be reversed.
4518
4519 Sat Aug 30 15:13:18 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4520
4521         * hlfsd/stubs.c: don't initialize some statics here.  They are
4522         better initialized in hlfsd_init_filehandles().
4523
4524 Fri Aug 22 14:47:16 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4525
4526         * amd/conf.c (gopt_show_statfs_entries): new function and a global
4527         amd.conf key show_statfs_entries.  Defaults to 'no'.  If 'yes',
4528         then all maps flagged as browsable will also show a count of the
4529         number of entries (keys) in that map.
4530
4531         * amd/nfs_subr.c (count_map_entries): new function to count number
4532         of entries in a map.  Now used if browsable is turned on in a map,
4533         to return a count of available keys in a given map.
4534
4535         * hlfsd/stubs.c (eq_fh): use correct memcmp().  BUG fixed! hlfsd
4536         confused the file handles for ".", "..", and the symlink, causing
4537         mess.
4538
4539         * aux/macros/func_bad_memcmp.m4: new test, based on autoconf 2.12,
4540         but also defines HAVE_BAD_MEMCMP, so I avoid linkage conflicts
4541         with bad memcmp() in libc's (nextstep3).
4542
4543 Thu Aug 21 17:38:41 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4544
4545         * aux/configure.in: check if autofs_args_t has a field named
4546         addr.  Solaris has it for specifying the address of the daemon,
4547         but Irix does not.  So how does irix tell the kernel the daemon's
4548         address?  I suspect that it is hardcoded to "localhost" using a
4549         "private well-known port" (#define AUTOFS_PORT 2048).
4550
4551         * conf/nfs_prot/nfs_prot_linux.h: added missing autofs
4552         definitions.
4553
4554         * README.autofs: new file listing autofs support notes
4555
4556         * very preliminary autofs code working.  Call it pre-alpha
4557         quality.
4558
4559 Sun Aug 17 02:25:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4560
4561         * amd/conf.c (ropt_mount_type, gopt_mount_type): don't accept
4562         "autofs" if system does not support it.
4563
4564         * amd/amd.c (main): log am-utils version string (same as amd -v)
4565         at start of run.
4566
4567         * conf/transp/transp_sockets.c (get_nfs_version): in order to tell
4568         if a remote host is available, try to contact its portmapper and
4569         timeout if no answer is received in 3 seconds.
4570
4571 Thu Aug 14 16:12:04 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4572
4573         * aux/macros/check_extern.m4 (pattern): use a simpler pattern for
4574         match for external function definitions.  The function could span
4575         multiple lines, so only match the opening parenthesis, not the
4576         closing one too.
4577
4578         * aux/macros/os_cpp-flags.m4 (ac_cv_os_cppflags,): do NOT turn on
4579         posix mode for nextstep3.  It is broken.
4580
4581         * amd/amd.c (init_global_options): run uname() only if
4582         <sys/utsname.h> and uname(2) exist.
4583
4584         * amd/rpc_fwd.c (fwd_packet): if remote host is down, the
4585         forwarding socket is null, so declare this an error.
4586
4587         * include/am_utils.h (AM_ERRNO_HOST_DOWN): find best errno to set
4588         for when a remote host is down.  Try, in order, "host down", "host
4589         unreachable", "invalid argument".
4590
4591         * amd/ops_nfs.c (discard_fh): don't dereference a null pointer
4592         (happens when remote host is down, and fp->fh_fs is NULL).
4593         (prime_nfs_fhandle_cache): ditto, and set fs flags to !FSF_VALID
4594         and FSF_DOWN.
4595
4596         * amd/sched.c: nobody uses "union wait" any more, or so it
4597         appears, so clean up that code.
4598
4599         * conf/transp/transp_tli.c (get_nfs_version): if remote host is
4600         down, time it out faster than default (3 seconds).
4601         (get_mount_client): free netconfig entry when done with it.
4602
4603         * conf/nfs_prot/nfs_prot_nextstep.h: initial (and somewhat ugly)
4604         port to nextstep3 (m68k-next-nextstep3).
4605
4606         * fsinfo/Makefile.am (LDADD): needs to link with libamu in case
4607         system does not have strdup().
4608
4609         * include/am_defs.h: complete external definition for getlogin()
4610         if needed.
4611
4612         * conf/transp/transp_tli.c (get_nfs_version): no need to keep
4613         static versout variable.
4614
4615         * amd/rpc_fwd.c (fwd_packet): if fwdto packet is null, remote
4616         server is probably down.  Don't use sendto() in that case.
4617
4618         * buildall (default): run gmake if found, before trying plain
4619         make.  GNU make is always preferable.
4620
4621 Tue Aug 12 21:23:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4622
4623         * aux/macros/host_macros.m4: cleanup of os_version and os
4624         overrides.  Solaris 2.5.1 for example will come up as solaris2 and
4625         2.5.1, rather than sunos5 and 5.5.1.  Both can be overridden in
4626         the amd.conf file.
4627
4628 Fri Aug  8 14:37:30 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4629
4630         *******************************************************************
4631         *** Released am-utils-6.0a9                                     ***
4632         *******************************************************************
4633
4634 Thu Aug  7 00:52:14 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4635
4636         * conf/nfs_prot/nfs_prot_ncr2.h: new file, for NCR2
4637         (i486-ncr-sysv4.3.03) headers.  Needed to complete missing stuff
4638         from <ndbm.h> and <sys/resource.h>.
4639
4640         * scripts/amd.conf.5: new map page.
4641
4642         * amd/info_hesiod.c: define extern for hesiod_resolve, since bsdi3
4643         does not.
4644
4645         * amd/amd.8: updated man page.
4646
4647         * amd/get_args.c (get_args): removed defunct -h option to amd.
4648
4649         * amq/amq.8: updated man page.
4650
4651         * amd/info_nisplus.c (nisplus_search): prototype fixes so Sun
4652         SparcCompiler CC won't complain.
4653
4654         * amd/info_hesiod.c (hesiod_search): small fixes to compile with
4655         hesiod-1.3, as per Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>.
4656
4657         * aux/macros/opt_ldflags.m4: new option added to configure
4658         --enable-ldflags, to specify -L option for configuring/compiling.
4659         The older one --enable-libs is now to be used only for -l options.
4660
4661         * amd/ops_nfs.c (mount_nfs_fh): bug fixed.  Should initialize
4662         nc_protoname from nfs_proto if available for all TLI systems, not
4663         just those that have NFS V3.
4664
4665         * amd/info_ldap.c: ldap patches from Leif Johansson
4666         <leifj@matematik.su.se>, adding two new amd.conf ldap variables:
4667         ldap_cache_seconds and ldap_cache_maxmem.
4668
4669         * hlfsd/hlfsd.c (main): bug fixed. port number must be wrapped in
4670         htons().
4671
4672 Sun Aug  3 17:20:05 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4673
4674         * amd/nfs_start.c (mount_automounter): register amd with the rpc
4675         program number that may have been overridden by amd.conf.
4676
4677         * libamu/xutil.c (set_amd_program_number, get_amd_program_number):
4678         allow storing and retrieving alternate amd program numbers.
4679
4680         * amd/conf.c (gopt_portmap_program): new function to parse
4681         amd.conf entry portmap_program=1234.
4682
4683         * amq/amq.c (main): allow specifying an alternate rpc program
4684         number for amd via -P prognum.
4685
4686         * new amq RPC to get the process id of the running amd.  This is
4687         used in ctl-amd to quickly find the pid of the amd that is to be
4688         killed.
4689
4690         * expanded shared libraries support.  Using GNU libtool-1.0,
4691         am-utils now builds shared libraries on many platforms that have
4692         support for it and proper compilers/linkers.  See "INSTALL" file
4693         for compatibility chart.
4694
4695 Thu Jul 31 13:07:23 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4696
4697         * fsinfo/fsi_lex.l: removed code that was in support of very old
4698         versions of flex.  No longer needed.
4699
4700 Tue Jul 29 12:00:13 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4701
4702         * amd/amd.c (init_global_options): find the kernel architecture
4703         from uname() if possible.
4704
4705 Mon Jul 28 03:53:59 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4706
4707         * new working port: i386-unknown-openbsd2.1
4708
4709 Fri Jul 25 03:16:31 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
4710
4711         * working port: sparc-sun-solaris2.4.  Had to fix fhandle_t from
4712         structure to actual char[], because the structure was passed to
4713         xdr_fhandle as data and not a pointer.  Surprisingly, gcc
4714         -fpcc-struct-return did not help.
4715         
4716         * conf/nfs_prot/nfs_prot_sunos5_4.h: special nfs protocol
4717         definitions for solaris 2.4 have to be different from 2.3, and
4718         different from 2.5.
4719
4720         * libamu/xdr_fhstatus.c (xdr_fhstatus): minor code cleanup.
4721
4722 Thu Jul 24 16:22:39 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4723
4724         * conf/mount/mount_svr4.c (mount_svr4): use STREQ to compare mount
4725         types, not ==.  Fix from Christos Zoulas <christos@deshaw.com>.
4726
4727         * mk-amd-map/mk-amd-map.8: man page taken from bsd44.
4728
4729 Thu Jul 24 00:01:55 1997  Erez Zadok  <ezk@moisil.cs.columbia.edu>
4730
4731         * conf/mount/mount_linux.c: made the nfs error mapping code into a
4732         small function.
4733
4734 Wed Jul 23 16:11:49 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4735
4736         * conf/nfs_prot/nfs_prot_linux.h (NFS_ERROR_MAPPING): special
4737         error mappings from errno numbers to NFS errors.  From Debian
4738         Linux.
4739
4740         * scripts/am-eject.in (fs): new script (taken from Debian Linux
4741         folks) to auto-unmount floppy/cd devices before ejecting them.
4742
4743         * fsinfo/wr_exportfs.c (write_exportfs): from Debian folks, pass
4744         '5' as second arg to show_area_being_processed.  I'm not sure why.
4745
4746         * fsinfo/wr_atab.c (write_atab): from Debian folks, pass '5' as
4747         second arg to show_area_being_processed.  I'm not sure why.
4748
4749         * conf/mount/mount_linux.c (parse_opts): as per Debian Linux,
4750         ensure that you have a buffer in *xopts to strcat onto.
4751         (mount_linux): fixed from Debian folks to ensure that NFS mount
4752         sockets are connected only for kernels prior to 1.3.10 (avoids
4753         hangs for multi-homed hosts).
4754
4755         * amd/mapc.c (make_entry_chain): from Debian folks: don't skip
4756         over amd map keys that have a prefix, and include the prefix in
4757         the returned readdir().
4758
4759         * amd/info_passwd.c (passwd_init, passwd_search): format
4760         enhancements from the Debian Linux folks.  They added
4761         - var0:=pw-prefix:=anydir
4762         - var1:=pw-rhost:=dom3.dom2.dom1
4763         - var2:=pw-user:=user
4764         - var3:=pw-home:=/anydir/dom1/dom2/dom3/user
4765
4766         * new ports: sparc-sun-solaris2.4 and sparc-sun-sunos4.1.1.
4767
4768         * amd/ops_afs.c (afs_retry): patches from Debian Linux.  If
4769         afs_mount timed out, then explicitly forbid further retries after
4770         the timeout.  (afs_bgmount): buf fix from Debian Linux.  Timeout
4771         values (17 and 5) were mistakenly swapped.
4772
4773 Wed Jul 23 15:53:25 1997  Erez Zadok  <ezk@felix.psl.cs.columbia.edu>
4774
4775         * conf/nfs_prot/nfs_prot_sunos5_3.h: turn off non-existent NFS V.3
4776         support for Solaris 2.4 (the header files incorrectly define parts
4777         of the NFS V.3 protocol, but the kernel does not support it).
4778
4779 Wed Jul 23 00:07:12 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4780
4781         * amd/info_hesiod.c: minor cleanup to use hes_init and hesiod_init
4782         for determining if using old or new hesiod libraries,
4783         respectively.
4784
4785         * amd/ops_nfs.c (mount_nfs_fh): If "noconn" option exists in NFS
4786         V.3 then use non-connected sockets (both TCP and UDP).  Otherwise
4787         they cause hangs of mounts from multi-homed hosts when the return
4788         route is not the same as the outgoing route (esp. on NetBSD
4789         1.2.1).  If "conn" option was supplied, then don't turn on the
4790         "noconn" mount option.  Otherwise default to "noconn" mount
4791         option.
4792
4793         * aux/configure.in: better check for systems that need libgdbm and
4794         <ndbm.h>
4795
4796 Tue Jul 22 04:02:05 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4797
4798         * hlfsd/hlfsd.c (main), amd/ops_afs.c (mount_toplvl): ensure that
4799         mounts are hidden from df(1) on systems that keep mount tables in
4800         kernel, such as osf1.
4801
4802 Tue Jul 22 02:26:55 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4803
4804         *******************************************************************
4805         *** Released am-utils-6.0a8                                     ***
4806         *******************************************************************
4807
4808 Mon Jul 21 21:33:19 1997  Erez Zadok  <ezk@stone.mcl.cs.columbia.edu>
4809
4810         * hlfsd/hlfsd.c (main): bug fixed: forgot to set sin_family to
4811         AF_INET when hlfsd mounts itself, thus getting an errno "protocol
4812         family not supported".
4813
4814 Mon Jul 21 20:46:59 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4815
4816         * verified that amd on NetBSD 1.2.1 (i386) works, but the OS
4817         itself is flaky.
4818
4819         * verified that amd AIX 3 works w/ the new readdir() code.
4820
4821 Mon Jul 21 18:59:30 1997  Erez Zadok  <ezk@chestnut.mcl.cs.columbia.edu>
4822
4823         * amd/mapc.c (maptypes): changed the default map caching type for
4824         nis and ndbm maps to "MAPC_ALL", so that all possible entries will
4825         be available to amd for browsable_dirs=yes.
4826
4827 Mon Jul 21 18:04:16 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4828
4829         * amd/ops_afs.c (afs_readdir, afs_readdir_browsable): split
4830         afs_readdir into a browsable version and a non-browsable one.
4831         Fixed bugs that resulted in an infinite nfs_readdir loop on the
4832         localhost for some operating systems.
4833
4834 Sat Jul 19 19:38:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4835
4836         * amd/ops_afs.c (afs_readdir): fixed up the browsable code to
4837         comply with nfs_readdir specs.  It was returning all entries at
4838         once, even if there was not enough space in the RPC packet.  Now,
4839         it sends a reasonably sized chunk, and sets static state to resume
4840         it for the next continuation RPC of readdir.
4841
4842         * amd/conf.c (set_conf_kv): fixed bug that resulted in the first
4843         regular map not getting all of the [global] options defaulted from.
4844
4845 Fri Jul 18 00:45:12 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4846
4847         * amq/amq.c (main): fixed so that portmapper "ping" will only fail
4848         upon an RPC timeout
4849
4850         * scripts/ctl-{amd,hlfsd}.in (killproc): better method to find the
4851         amd/hlfsd process to kill.
4852
4853         * amd/ops_afs.c (mount_toplvl), hlfsd/hlfsd.c (main): code to
4854         determine how to avoid df from seeing amd's toplvl mounts.  Moved
4855         from libamu/mount_fs.c and include/am_utils.h.  Ensure that hlfsd
4856         is hidden from df.
4857         (mount_toplvl): fixed df types for irix.
4858
4859 Thu Jul 17 21:59:45 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
4860
4861         * amq/amq.c (main): fixed bug that caused the 5 second timeout for
4862         TLI amq using udp to be ignored.
4863         (main): if amq cannot contact remote host's portmapper within 5
4864         seconds, timeout and fail faster than the default longer timeout
4865         (this is for non-TLI systems).
4866
4867 Thu Jul 17 17:08:13 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4868
4869         * amq/amq.c (get_secure_amd_client): if amq cannot contact
4870         remote host's portmapper within 5 seconds, timeout and fail faster
4871         than the default TLI timeout of over 4 minutes.
4872
4873         * amd/am_ops.c (ops_showfstypes): added styles for new bsd44
4874         file systems nullfs, unionfs, and umapfs.
4875         (ops_show1): cleanup code and and reuse this function.
4876         (vops): empty placeholders for nullfs, unionfs, and umapfs.
4877
4878         * amd/ops_{nullfs, unionfs, umapfs}.c: 3 new empty templates for
4879         bsd44 style file systems.
4880
4881         * fsinfo/fsinfo.8: man page for fsinfo rewritten from bsd44
4882         sources.
4883
4884         * amd/conf_tok.l, fsinof/fsi_lex.c: undefine ECHO to avoid
4885         conflict with systems that define it in <sys/ioctl.h> and also
4886         define a conflicting one via lex.  Newer versions of f/lex are ok.
4887
4888 Wed Jul 16 00:17:45 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4889
4890         * amd/ops_nfs.c (mount_nfs_fh): fill in nfs_args' fields
4891         acdirmin/max and acregmin/max only if they exist.
4892
4893         * aux/configure.in: test for nfs_args fields acdirmin and
4894         acregmin.
4895
4896 Tue Jul 15 17:24:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4897
4898         * aux/configure.in: commented out checking for MNT2_GEN_OPT_* for
4899         "nondev" and commented back in checking for "nodev".  This was a
4900         typo.
4901
4902         * include/am_compat.h: more compatibility options: define "ro"
4903         mnttab option all the time.  Define "overlay" as needed.  Added
4904         more fillers of mnttab options (as per Daniel S. Riley
4905         <dsr@mail.lns.cornell.edu>), for acdirmax, acdirmin, acregmax,
4906         acregmin, noac, grpid, nosuid, and actimo.
4907
4908         * libamu/mount_fs.c (mnt_flags): fixed a typo in "ro" option as
4909         per dsr@mail.lns.cornell.edu (Daniel S. Riley).  Then cleaned up
4910         the same code for other options in struct opt_tab.
4911
4912 Mon Jul 14 22:36:37 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4913
4914         * amd/get_args.c (get_args): moved amd.conf file parsing to before
4915         the switching the default log/debug options.  Suggested by
4916         dsr@mail.lns.cornell.edu (Daniel S. Riley).
4917
4918         * aux/update_build_version: new script to record the build version
4919         of amd, along with the rest of the info thet comes up with amd -v.
4920
4921 Sun Jul 13 00:30:24 1997  Erez Zadok  <ezk@decca.damtp.cam.ac.uk>
4922
4923         * aux/macros/os_cflags.m4: new macro, to add additional
4924         compilation options (also used during configuration), based on the
4925         OS and the compiler.  Used for solaris-2.6, osf, and irix6.
4926
4927 Fri Jul 11 10:15:11 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4928
4929         * amd/conf_tok.l, conf_parse.y: allow values of keys to include
4930         white spaces, if they are double-quoted (key="some value")
4931
4932         * amd/info_hesiod.c (hesiod_search): cleanup and minor bug fixes
4933         of hesiod from Danny Braniss <danny@cs.huji.ac.il>.
4934
4935 Fri Jul 11 02:16:06 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4936
4937         *******************************************************************
4938         *** Released am-utils-6.0a7                                     ***
4939         *******************************************************************
4940
4941 Thu Jul 10 12:19:25 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4942
4943         * include/am_defs.h: fill in extern definition of innetgr() in
4944         case system headers don't.
4945
4946         * aux/macros/path_prog_lex.m4 aux/configure.in: using macros that
4947         will show the full pathname to yacc/bison and f/lex.  Some systems
4948         have older or bad versions of those and this way the user will
4949         know for sure what is being invoked.
4950
4951         * tasks: file populated with todo items.
4952
4953         * scripts/amd2ldif.in: Script to convert amd maps to plain text
4954         LDAP object files.  Contributed by Leif Johansson
4955         <leifj@matematik.su.se>.
4956
4957         * aux/config.guess: added recognition for sun3's running 4.2bsd,
4958         from Tom Schmidt <tschmidt@micron.com>.  Fixed one small typo.
4959
4960         * amd/conf.c: several variables that were local to a map, were
4961         also added to [global], where they apply to all maps.  Each map
4962         can then individually override those defaults.  Flags
4963         affected: browsable_dirs and mount_type.  Options affected:
4964         map_type, map_options, and search_path.
4965
4966         * amd/amd.h: eliminated several global flags each of which took an
4967         int, in favor of one global flags variable used as a bit field.
4968
4969         * amd/amd.c (init_global_options): moved all global variables into
4970         a single struct amu_global_options, so it is easier to add new
4971         ones and/or identify existing ones.
4972
4973         * amd/get_args.c (get_args): removed unused amd -m option.
4974
4975         * amd/conf.c (gopt_cluster): added new amd.conf option for cluster
4976         name, same as amd -C.
4977
4978         * amd/info_ldap.c: LDAP info map functions from Leif Johansson
4979         <leifj@matematik.su.se>.
4980
4981         * amd/conf.c (gopt_ldap_base, gopt_ldap_hostports): put in global
4982         amd.conf options for ldap_base and ldap_hostports.
4983
4984         * amd/opts.c (f_netgrp): new amd map function netgrp(ARG) to test
4985         if the current host is in the ARG host netgroup.
4986
4987         * aux/configure.in: some systems replaced dbm in libc with GNU's
4988         libgdbm, so check for libgdbm, but only if dbm_open is not in
4989         libc already.  This was a recommendation from Tom Schmidt
4990         <tschmidt@micron.com>.
4991
4992         * conf/nfs_prot/nfs_prot_sunos5_3.h: port to sparc-sun-solaris2.3
4993         completed.
4994
4995 Wed Jul  9 18:14:59 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
4996
4997         * port to sparc-unknown-netbsd1.2E done, not tested.  Includes NFS
4998         V.3.
4999
5000 Tue Jul  8 17:35:07 1997  Erez Zadok  <ezk@elk.mcl.cs.columbia.edu>
5001
5002         * port to i386-unknown-freebsd3.0 done and working.  Includes NFS
5003         V.3.
5004
5005         * aux/macros/check_nfs_fh_dref.m4: freebsd3 should use
5006         file handle dereferencing style similar to freebsd22.
5007
5008         * include/am_defs.h: need to include <net/if_var.h> before
5009         <netinet/if_ether.h> on freebsd3.
5010
5011         * conf/nfs_prot/nfs_prot_freebsd3.h: new protocol header additions
5012         for freeBSD 3.0.
5013
5014 Tue Jul  8 16:53:41 1997  Erez Zadok  <ezk@moisil.cs.columbia.edu>
5015
5016         * amd/info_nis.c (nis_reload): cast nis' callback function so
5017         picky compilers won't complain.
5018
5019         * libamu/xdr_mountres3.c (xdr_mountres3): make sure this function
5020         gets compiled only if the system has NFS V3 and does not have
5021         xdr_mountres3.
5022
5023 Tue Jul  8 12:42:03 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5024
5025         * COPYING: put in some legal stuff in this file.
5026
5027 Mon Jul  7 19:10:44 1997  Erez Zadok  <ezk@prometheus.soscorp.com>
5028
5029         * NFS V3 now works under Irix5, thanks to patches from 
5030         Andreas Stolcke <stolcke@speech.sri.com>.
5031
5032         * conf/mount/mount_irix5.c: sparate mount_irix.c into an irix5
5033         version and an irix6 version, since irix5's NFS V3 code is broken
5034         and hacky.
5035
5036         * amd/info_hesiod.c (hs_zone_transfer): minor fixes to buffer
5037         sizes for some hesiod queries.  Patch from Danny Braniss
5038         <danny@cs.huji.ac.il>.
5039
5040 Mon Jul  7 19:04:14 1997  Erez Zadok  <ezk@glory.soscorp.com>
5041
5042         * amd/ops_nfs.c (mount_nfs_fh): fixed NFS V.3 support for bsdi3.
5043
5044 Sun Jul  6 14:22:24 1997  Erez Zadok  <ezk@glory.soscorp.com>
5045
5046         * aux/{configure.in,acconfig.h}: added checks for struct
5047         nfs_args's fields proto and sotype (bsdi3).
5048         
5049         * amd/ops_nfs.c (mount_nfs_fh): added nfsv3 option to
5050         nfs_args.flags for bsdi3.  Set field proto to 0.  Set sotype field
5051         to SOCK_STREAM or SOCK_DGRAM.
5052
5053         * aux/macros/check_mount_style.m4: add case for bsdi3.
5054
5055         * amd/info_hesiod.c: got hesiod support for bsdi3.
5056
5057 Sun Jul  6 11:14:47 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5058
5059         * aux/configure.in: look for hesiod on libc (bsdi3)
5060
5061         * amd/get_args.c (get_args): reformat usage so it fits in 80
5062         columns.
5063
5064         * scripts/ctl-amd.in: changed directory name for optional tftpboot
5065         map to /tftpboot/.amd.
5066
5067 Sat Jul  5 17:46:45 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5068
5069         *******************************************************************
5070         *** Released am-utils-6.0a6                                     ***
5071         *******************************************************************
5072
5073 Sat Jul  5 03:17:09 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5074
5075         * scripts/ctl-amd.in: include -T tag for tftpboot.
5076
5077         * new port: mips-sgi-irix5.3.  Compiled with gcc, but NFS V3 code
5078         is broken and needs work on the specific nfs_args that irix5 uses
5079         for V3 mounts.
5080
5081 Sat Jul  5 01:44:25 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5082
5083         * amd/get_args.c (get_args): new options amd -T tag.  A map with
5084         tag=foo matching the -T tag will be processed.  All untagged maps
5085         get processed all the time.
5086
5087 Fri Jul  4 16:19:26 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5088
5089         * aux/configure.in: need to check for strcasecmp in libucb (ncr2)
5090
5091         * aux/macros/check_os_libs.m4: a new macro to set the usage of
5092         libnsl and libsocket based on the OS.
5093
5094         * libamu/mount_fs.c (mnt_flags): used MNTTAB_OPT_GRPID if it is
5095         defined (problem on osf4).
5096
5097         * conf/nfs_prot/nfs_prot_irix5.h: new file for irix5 headers.
5098
5099         * include/am_defs.h, aux/macros/try_compile_nfs.m4,
5100         aux/macros/mount_headers.m4: do include <sys/proc.h> because it
5101         failes on irix5.  Rather, put in the individual
5102         conf/nfs_prot/nfs_prot_*.h headers.
5103
5104         * amd/conf.c: AIX3 doesn't like strdup() being passed a constant
5105         char*, so cast all strdup()'s args to a non-const char*.
5106
5107         * amd/mapc.c (root_newmap): don't try to strdup only a "const
5108         char *".
5109
5110 Fri Jul  4 15:47:10 1997  Erez Zadok  <ezk@americas.psl.cs.columbia.edu>
5111
5112         * conf/nfs_prot/nfs_prot_sunos4.h: added rpc/rpc.h and
5113         sys/errno.h.
5114
5115 Thu Jul  3 17:49:00 1997  Erez Zadok  <ezk@prometheus.soscorp.com>
5116
5117         * made sure am-utils compiles, links, and runs properly on Irix
5118         6.2 using "cc -32 -Wl,-woff,"
5119
5120         * aux/macros/check_lib2.m4: a bug fix version to autoconf 2.12
5121         AC_CHECK_LIB.  If OTHER-LIBRARIES are defined and used, then add
5122         them to $LIBS.
5123
5124         * aux/configure.in: some cleanup of which libraries are needed.
5125         Espectially ensure that libnsl is included only on Solaris, where
5126         so far it is the only system on which it is absolutely necessary.
5127         Also no longer need to include libc explicitly. 
5128
5129         * amd/amd.c,wire-test/wire-test.c (main): convert IP address to
5130         network-long order before printing it.
5131
5132         * wire-test/wire-test.c (main): also check and report on the IP
5133         address of the local host, since some systems have bad versions of
5134         get_myaddress, or ones that conflict with other versions in
5135         multiple libraries (SunOS 4 and Irix especially).
5136
5137 Wed Jul  2 18:19:02 1997  Erez Zadok  <ezk@starblazers.soscorp.com>
5138
5139         * scripts/ctl-amd.in: don't use full pathname so killproc() works
5140         better.  Also run bsd44 and irix style ps programs. 
5141
5142         * aux/macros/check_lib_funcs.m4: bug fixed: used to define usage
5143         of library no matter if it was found or not.
5144
5145 Wed Jul  2 02:11:48 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5146
5147         * aux/macros/check_mnt2_gen_opt.m4: turned back on the checking
5148         for M_* macros, but ensure that <sys/stream.h> is not included at
5149         all so it won't conflict with other M_* macros.
5150
5151 Tue Jul  1 21:16:51 1997  Erez Zadok  <ezk@mako.cs.columbia.edu>
5152
5153         * conf/mount/mount_irix.c (mount_irix): first arg to mount(2) on
5154         irix should be "spec" (host:/path), not the dir of the mnt point.
5155
5156         * amd/ops_afs.c (afs_lookuppn): bug in enable_default_selectors
5157         fixed.  If on, it essentially ignored the setting in a
5158         selector-controlled /defaults if there were 2 or more entries in it.
5159
5160 Tue Jul  1 12:23:38 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5161
5162         * scripts/ctl-{amd,hlfsd}.in (killproc): if failed to find process
5163         using BSD style ps, then try SVR4 style ps.
5164
5165         * include/am_utils.h (amuDebug): renamed Debug macro to amuDebug
5166         etc., to avoid conflicts with similar named macros in <ldap.h>.
5167
5168         * aux/configure.in, amd/info_ldap.c, etc.: put in all the autoconf
5169         support needed for LDAP.  Now the code has to be written mostly in
5170         amd/info_ldap.c.
5171
5172         * Included additional patches from Andreas Stolcke
5173         <stolcke@speech.sri.com> to support using the best possible
5174         combination of NFS version (2,3) and protocol (udp,tcp) for any
5175         given host, since it appears that some Irix versions have NFS V3,
5176         but do not support TCP.
5177
5178         * scripts/ctl-amd.in: updated amd control script to look for and
5179         use amd.conf file.
5180
5181 Tue Jul  1 00:28:23 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5182
5183         * amd/mapc.c (mapc_create): now, each map in the amd.conf can be
5184         initialized off of a different type, or default to cycling through
5185         all maps until one of them matches.
5186
5187 Mon Jun 30 20:49:13 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5188
5189         * amd/ops_afs.c (afs_readdir): per-map browsing (readdir) done.
5190         if browsable_dirs=yes is set in the map section in amd.conf, that
5191         map will return all entries back to a readdir(2).
5192
5193 Sun Jun 29 16:22:11 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5194
5195         * rudimentary amd.conf file support included.  You may even
5196         override things like os=sos5, to get "backwards" compatibilty with
5197         upl102.
5198
5199 Sat Jun 28 13:35:02 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5200
5201         * amd/conf.c: new file to process amd.conf file.
5202
5203         * amd/get_args.c (get_args): new options -H to print help.
5204
5205         * moved enable_default_selectors to be amd.conf controlled, and
5206         not compiler controlled.
5207
5208         * amd/get_args.c (get_args): new options -F <conf-file> to parse an
5209         amd configuration file.
5210
5211 Wed Jun 25 23:15:42 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5212
5213         * converted all files that used strcmp() == 0 or != 0  to using
5214         the STREQ() macro.
5215
5216 Mon Jun 23 22:31:14 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5217
5218         * aux/macros/check_lib_funcs.m4: new M4 macro that can be used to
5219         search for any number of functions in any given library.
5220
5221 Mon Jun 23 01:04:23 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5222
5223         * amd/mapc.c: Included patch from Leif Johansson
5224         <leifj@matematik.su.se> to ensure that systems without an RE
5225         library can compile.
5226
5227         * libamu/mount_fs.c (mount_fs): Included patch from Andreas
5228         Stolcke <stolcke@speech.sri.com>, to ensure that mount options on
5229         table are properly delimited by a comma.
5230
5231         * amd/ops_nfs.c (mount_nfs_fh): Included patch from Andreas
5232         Stolcke <stolcke@speech.sri.com>, to allow users to override the
5233         proto= and vers= mount options.
5234
5235 Sun Jun 22 01:00:11 1997  Eric Dana  (edana@ncr2.bgs.com)
5236
5237         * conf/nfs_prot/nfs_prot_svr4.h: port completed to
5238         i486-ncr-sysv4.3.03.  Assorted source cleanups done.
5239
5240         * include/am_defs.h, aux/macros/mount_headers.m4: don't include
5241         mnttab.h if sys/mnttab.h was already included, because on ncr2,
5242         they contain conflicting entries for struct mnttab.
5243
5244 Sat Jun 21 23:52:15 1997  Eric Dana  (edana@ncr2.bgs.com)
5245
5246         * aux/macros/check_nfs_prot_headers.m4: added support for ncr2.
5247
5248 Fri Jun 20 06:14:17 1997  Erez Zadok  <ezk>
5249
5250         * amd/*.c: lots of 64-bit "ugly" ports like casts to long ints.
5251
5252         * aux/macros/struct_nfs_fh.m4: check for "struct nfssvcfh" because
5253         on DU-4.0 it is better than the next one to be picked (nfsv2fh_t).
5254
5255 Wed Jun 18 18:59:49 1997  Erez Zadok  <ezk@defiant.soscorp.com>
5256
5257         * aux/macros/struct_nfs_fh.m4 (AC_TRY_COMPILE_NFS): check for
5258         nfsv2fh_t before fhandle_t becasue on bsdi2.1 the former is
5259         better.
5260
5261 Tue Jun 10 17:06:58 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5262
5263         * amd/rpc_fwd.c (fwd_packet): TLI bug fix. if fwdto socket is
5264         NULL, set the maxlen and len fields in netbuf to zero.
5265
5266 Wed May 28 22:52:28 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5267
5268         * scripts/fix-amd-map.in (name): replace all matching patterns on
5269         line.
5270
5271 Sun May 25 19:33:41 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5272
5273         *******************************************************************
5274         *** Released am-utils-6.0a5                                     ***
5275         *******************************************************************
5276
5277 Sun May 25 13:37:24 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5278
5279         * amd/amq_subr.c (amqproc_getvers_1_svc): amq's RPC service
5280         procedure now returns the full string that amd -v returns.
5281
5282         * amd/get_args.c (get_version_string): new function to return
5283         complete version/info string so it could be used more flexibly.
5284
5285         * amd/am_ops.c (ops_showamfstypes, ops_showfstypes): put the list
5286         of Fs types into a string buffer, rather than a FILE*.
5287
5288         * amd/mapc.c (mapc_showtypes): put the list of map types into a
5289         string buffer, rather than a FILE*.
5290
5291 Sun May 25 01:25:36 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5292
5293         * amd/get_args.c (get_args): amd -v also prints user who built
5294         amd, hostname built on, and date of configuration.
5295
5296 Sat May 24 13:40:50 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5297
5298         * scripts/lostaltmail.conf-sample: sample lostaltmail
5299         configuration file.
5300
5301         * scripts/lostaltmail.in: new script lostaltmail used to redeliver
5302         "lost" mail that hlfsd redirected to a temp location because the
5303         primary home file system of the user was full.
5304
5305         * scripts/amd2sun.in: new script amd2sun. Used to convert Sub
5306         automount maps to amd maps.
5307
5308         * scripts/ctl-hlfsd.in: new script ctl-hlfsd.  Used to start,
5309         stop, or restart hlfsd.
5310         
5311         * scripts/expn.1: man page for expn command.
5312
5313         * scripts/ctl-amd.in: new script ctl-amd.  Used to start, stop, or
5314         restart amd.
5315
5316         * scripts/expn.in: new script expn.  Actually taken from David
5317         Muir Sharnoff <muir@idiom.com>.  Used by hlfsd's mail re-delivery
5318         script.
5319
5320         * scripts/wait4amd.in: new script wait4amd added.  Waits for amd
5321         to come up on a host, and then runs a command (rsh $hostname by
5322         default).
5323
5324         * scripts/Makefile.am: new directory now holds all shell/perl
5325         scripts that belong to am-utils.
5326
5327         * conf/mount/mount_linux.c (parse_opts): new parser for
5328         linux-specific mounts.  Handles fs-type specific mount-options
5329         correctly.  Currently implemented: msdos, iso9660.
5330
5331         * amd/ops_pcfs.c (pcfs_ops): don't timeout cdfs mounts by default
5332         (fix for linux).
5333
5334         * amd/ops_cdfs.c (cdfs_ops): don't timeout cdfs mounts by default
5335         (fix for linux).
5336
5337         * amd/mapc.c (make_entry_chain): fixed bug that resulted in amd
5338         core dumps upon "ls" of a mount point; an invalid pointer was
5339         being returned and dereferenced.
5340
5341         * port to Linux sparc working!
5342
5343         * hlfsd/homedir.c (hlfsd_diskspace): close file descriptor if
5344         failed to write test file, or else the fd will leak.
5345
5346 Sun May 18 00:42:41 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5347
5348         * amd/info_hesiod.c (hs_strip_our_domain): use strcasecmp()
5349         instead of strcmp().
5350
5351         * Port to Digital Unix 4.0 (OSF) done.
5352
5353         * hlfsd/hlfsd.c: renamed dirname to dir_name to avoid conflicts
5354         with dirname() function in <string.h> on OSF systems.
5355
5356         * fsinfo/fsi_util.c (set_ether_if): take out extern defintion of
5357         inet_addr().  It should come from <arpa/inet.h> instead.
5358
5359         * conf/mtab/mtab_osf.c: fixed macros and added NFS V3 specs.
5360
5361         * include/am_utils.h: renamed FIRST/LAST to AM_FIRST/AM_LAST to
5362         avoid conflicts with DU 4.0 system header.
5363
5364 Thu May 15 22:49:12 1997  Erez Zadok  <ezk@subzero.cs.columbia.edu>
5365
5366         * libamu/mount_fs.c (mount_fs): pass along NFS version so I can
5367         determine if to include additional options in the mount table file
5368         entry (such as proto=tcp, and vers=3).
5369
5370 Thu May 15 00:42:12 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5371
5372         * libamu/mount_fs.c (mount_fs): include NFS version number in the
5373         mount table options, as well as proto={tcp,udp}.
5374
5375 Wed May 14 14:30:19 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5376
5377         * NFS V3 code ported to most other systems, so it compiles for V2
5378         and V3 NFS systems.
5379
5380         * NFS VERSION 3 support, first pass.  Working for Solaris and
5381         using TCP.
5382
5383 Sun May 11 01:14:29 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5384
5385         * amq/amq.c: many newline characters were missing from various
5386         stderr printfs.
5387
5388 Sat May 10 13:09:06 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5389
5390         * conf/nfs_prot/nfs_prot_sunos5.h: protocol defintions for
5391         Solaris, which include NFS V3 support.
5392
5393         * conf/nfs_prot/nfs_prot_default.h: default NFS protocol headers.
5394
5395         * conf/transp/transp_{tli,sockets}.c (get_mount_client): use NFS
5396         protocol version while getting a mount client.
5397
5398         * amd/ops_nfs.c (mount_nfs_fh): set the mount types, mnttab types,
5399         file handle size, and proper file handle based on the correct NFS
5400         version number.
5401
5402         * conf/mount/mount_svr4.c (mount_svr4): support NFS3 mounts under
5403         Solaris and other SVR4 systems.
5404
5405         * amd/ops_nfs.c: store NFS file handle version and version
5406         specific handle in struct fh_cache.
5407         (got_nfs_fh): pick the correct RPC reply based on the NFS version
5408         of the server.
5409         (prime_nfs_fhandle_cache): figure out the right NFS file handle
5410         for a node, but now include NFS protocol version information.
5411         (call_mountd): set the correct version for the mount protocol,
5412         based on the NFS protocol version.
5413         (nfs_init): use the NFS protocol generic structure
5414         am_nfs_handle_t.
5415
5416         * include/am_utils.h: new structure am_nfs_handle_t to contain all
5417         possible versions of NFS file handles.
5418
5419         * amd/srvr_nfs.c (start_ping): ping program performs NFS version
5420         specific pings.
5421         (recompute_portmap): figure out the correct portmap version mount.
5422         (nfs_keepalive): call start_ping() with the correct NFS version.
5423         (find_nfs_srvr): if mount option "vers=" is given, use it.  Get
5424         the NFS server version and verify that it is up.
5425
5426         * conf/transp/transp_{tli,sockets}.c (get_nfs_version): a new
5427         function to find the best NFS version for a particular host.
5428
5429         * libamu/amu.h: determine what is the highest version of NFS we
5430         should try.
5431
5432         * include/am_utils.h (NFS_VERSION3): added definition for NFS V3
5433         protocol number.
5434         Added field fs_version to struct fserver, so we can now store the
5435         server protocol version.
5436
5437 Fri May  9 01:09:45 1997  Erez Zadok  <ezk@lorien.cs.columbia.edu>
5438
5439         * aux/macros/check_field.m4 (AC_MOUNT_HEADERS): map '.' (dot) into
5440         underscores too, so I can test for sub-fields.
5441
5442         * libamu/wire.c: use test that checks for sub-fields of struct
5443         ifreq.
5444
5445 Sat May  6 10:20:17 2000  Erez Zadok  <ezk@glory.soscorp.com>
5446
5447         * port to BSD/OS 3.0 completed!  Many xdr_ functions were broken
5448         into smaller files.  M4 macros fixed to test for existence of
5449         file systems using getvfsbyname().
5450
5451         * amd/sched.c (sigchld): signal handler must waitpid() for all
5452         possible children.
5453
5454         * hlfsd/homedir.c: signal handler must waitpid() for all possible
5455         children. 
5456
5457         * aux/macros/check_restartable_signals.m4: new macro to determine
5458         if need to reinstall signal handlers per OS is better than trying
5459         to figure these out based on system macros.
5460
5461 Fri May  5 19:23:28 2000  Erez Zadok  <ezk@glory.soscorp.com>
5462
5463         * amd/ops_nfs.c (mount_nfs_fh): set nfs_args_t version number.
5464
5465         * amd/ops_afs.c (mount_toplvl): set nfs_args_t version number.
5466
5467         * amd/ops_nfs.c (mount_nfs_fh): process nfs mount option resvport
5468         (must be supplied for bsdi 3.0)
5469
5470         * libamu/wire.c: use HAVE_FIELD_STRUCT_IFREQ_IFR_ADDR (and
5471         associated new macro) for determining the right way to compute the
5472         size of the interface structure.
5473
5474 Fri Apr 11 15:56:13 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5475
5476         * aux/configure.in: need to include libc before libnsl if
5477         get_myaddress() is available because on irix libnsl has a buggy
5478         get_myaddress().
5479
5480         * include/am_defs.h: make sure REINSTATE_SIGNAL_HANDLER is defined
5481         on Irix 6 (an SVR4 variant)
5482
5483 Thu Mar 27 02:28:40 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5484
5485         *******************************************************************
5486         *** Released am-utils-6.0a4                                     ***
5487         *******************************************************************
5488
5489 Wed Mar 26 21:15:36 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5490
5491         * amd/amq_subr.c (ok_security): turned off insecure code unless
5492         user explicitly runs configure --enable-amq-mount.
5493
5494         * hlfsd/hlfsd.c (main): use new protoypes dor create_nfs_service().
5495
5496         * amd/nfs_start.c (mount_automounter): use code that separately
5497         creates the NFS and the amq service.  Register tcp and udp
5498         services for amd.
5499
5500         * conf/transp/transp_*.c (create_amq_service): new function to
5501         separately create the amq service for amd.  Simplified prototypes
5502         for create_nfs_service().
5503
5504 Wed Mar 19 20:40:56 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5505
5506         *******************************************************************
5507         *** Released am-utils-6.0a3                                     ***
5508         *******************************************************************
5509
5510 Wed Mar 19 17:49:18 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5511
5512         * new port: rs6000-ibm-aix3.2.5 and rs6000-ibm-aix4.1.5.0.  Lots
5513         of small changes to support these two.
5514
5515 Wed Mar 19 14:33:30 1997  Erez Zadok  <ezk@grande.cs.columbia.edu>
5516
5517         * conf/umount/umount_default.c (umount_fs): bug: unlock_mntlist()
5518         should run if MOUNT_TABLE_ON_FILE, not otherwise.
5519
5520 Mon Mar 17 22:02:43 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5521
5522         * hlfsd/hlfsd.c (main): fill in fhsize field if exists
5523         (freebsd-2.2).
5524
5525         * amd/ops_{nfs,afs}.c (mount_toplvl): fill in fhsize field if
5526         exists (freebsd-2.2).
5527
5528 Sat Mar 15 19:37:48 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5529
5530         * new port: i386-unknown-freebsd2.2.  FreeBSD 2.2 and higher
5531         changed the filehandle type in struct nfs_args from nfsv2fh_t to
5532         u_char.
5533
5534 Sat Mar 14 10:11:03 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5535
5536         * SHARED LIBRARIES: too many change to list individually.  Now,
5537         libamu can be built as a shared library, and other programs link
5538         with it.
5539
5540 Tue Mar 11 22:24:09 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5541
5542         * aux/macros/opt_shared.m4: new macro for setting options for
5543         building shared am-utils libraries.
5544
5545 Sun Mar  9 19:17:46 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5546
5547         * fixmount/fixrmtab: cleaned up the script.
5548
5549         * fixmount/Makefile.am (EXTRA_DIST): adde $(sbin_SCRIPTS) so that
5550         fixrmtab gets distributed too.
5551
5552         * conf/nfs_prot/nfs_prot_bsdi2.h: added support for MOUNTPROC_DUMP.
5553         Added extern for xdr_mountlist().
5554
5555         * aux/configure.in: trimmed down many tests for MNT2_GEN_OPT,
5556         MNT2_NFS_OPT, and MNTTAB_OPT that were not referenced anywhere in
5557         the sources.
5558
5559 Sat Mar  8 00:23:58 1997  Erez Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5560
5561         * fixmount/hlfsd ported to bsd44, hpux, and linux systems.
5562
5563         * aux/macros/check_fixmount_style.m4: add check for bsd44 systems.
5564
5565         * conf/fixmount/fixmount_default.c: use lockf() if flock() is
5566         unavailable.
5567
5568         * include/am_defs.h: include <string.h> even if don't have
5569         STDC_HEADERS defined (sunos4).
5570         (seteuid): define seteuid() to be setresuid() for systems that
5571         have but not the other (hpux).
5572
5573         * aux/macros/check_extern.m4: test should include <strings.h>.
5574
5575 Tue Mar  4 17:16:52 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5576
5577         * lib/xutil.c (debug_option): moved from amd/getargs.c to this
5578         more proper file.
5579
5580         * include/am_utils.h: put in structure for debug options, for all
5581         progams to use.
5582
5583         * amd/get_args.c: moved structure for debug options out.
5584
5585 Sun Mar  2 00:13:07 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5586
5587         * ported fixmount.
5588
5589         * lib/ualarm.c: replacement function for systems that don't have a
5590         ualarm().
5591
5592         * ported fsinfo.
5593
5594 Sun Mar  1 10:23:34 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5595
5596         * ported mk-amd-map.
5597
5598         * buildall: added -K option to buildall, to run mkconf.
5599
5600 Fri Feb 28 01:10:25 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5601
5602         *******************************************************************
5603         *** Released am-utils-6.0a2                                     ***
5604         *******************************************************************
5605
5606 Thu Feb 27 13:58:59 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5607
5608         * all *.[hcyl] files: add copyright line.
5609
5610         * aux/macros/check_mount_type.m4: test for mount type for
5611         linux-like systems, by checking for loadable or statically linked
5612         kernel filesystem modules.
5613
5614         * aux/macros/check_mnttab_type.m4: test for mount table entry
5615         for linux-like systems, by checking for loadable or statically
5616         linked kernel filesystem modules.
5617
5618         * aux/configure.in: pcfs filesystems can use vfat type (linux)
5619
5620         * aux/macros/check_fs_mntent.m4: test for filesystem existence for
5621         linux-like systems, by checking for loadable or statically linked
5622         kernel filesystem modules.
5623
5624         * conf/trap/trap_hpux.h: ugly hack added because of stupide HPUX
5625         9.0 header files.  This should be removed when HPUX 9.0 is deemed
5626         defunct.
5627
5628         * aux/acconfig.h: set an undefined variable for having an extern
5629         to clnt_sperrno().
5630
5631         * include/am_defs.h: define extern for clnt_sperrno() if needed.
5632
5633         * aux/configure.in: test for extern clnt_sperrno().
5634
5635         * aux/macros/check_nfs_fh_dref.m4: HPUX's NFS fhandle dref is
5636         similar to irix.
5637
5638         * aux/macros/check_mount_style.m4: use mount helper on HPUX.
5639
5640         * aux/macros/check_mtype_type.m4: hpux's mount type is a char*,
5641         not integer (but may be mapped to one later).
5642
5643         * conf/mount/mount_hpux.c (mount_hpux): HPUX has confusing header
5644         files.  They have mount(2) and vfsmount(2) which don't take same
5645         arguments, and they have string mount types MNTTYPE_* as well as
5646         integer types MOUNT_*.  So I need this new mount function to map
5647         from string types to integer types for the vfsmount() function.
5648
5649         * conf/trap/trap_hpux.h (MOUNT_TRAP): instead of calling
5650         vfsmount(), call mount_hpux().
5651
5652 Thu Feb 27 03:34:14 1997  Erez "HWank1" Zadok  <ezk@okeeffe.cs.columbia.edu>
5653
5654         * lib/mount_fs.c (mnt_flags): make sure SYNC option is on only if
5655         both MNTTAB_OPT_SYNC and MNT2_GEN_OPT_SYNC are defined.
5656
5657 Thu Feb 27 00:26:00 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5658
5659         * conf/nfs_prot/nfs_prot_hpux.h: NFS protocol definitions for
5660         hpux.
5661
5662         * include/am_defs.h: no need to include rpc/auth.h or rpc/clnt.h.
5663
5664         * aux/configure.in: no need to test for rpc/auth.h and rpc/clnt.h.
5665
5666         * buildall: added ability to configure using other shells than
5667         /bin/sh, on those systems where /bin/sh is buggy or limited
5668         (HPUX).
5669
5670         * aux/macros/struct_nfs_fh.m4: reinstated the macro but have it
5671         defined am_nfs_fh, and also test for plain typedef "nfs_fh".
5672
5673         * aux/acconfig.h: #undef am_nfs_fh, which is being defined by a
5674         reinstated macro.
5675
5676         * aux/configure.in: check for <nfs/export.h>
5677
5678         * include/am_defs.h: include <nfs/export.h> (HPUX) if exists.
5679
5680         * aux/macros/try_compile_nfs.m4: include <nfs/export.h> (HPUX) if
5681         exists.
5682
5683         * aux/macros/mount_headers.m4 (define): removed some non-working
5684         (on HPUX) code that attempts to recreate the fhandle_t rather than
5685         load it up from system headers.  Also added some NFS protocol
5686         header inclusion.  include <nfs/export.h> (HPUX) if exists.
5687
5688 Wed Feb 26 00:32:35 1997  Erez "HWank1" Zadok  <ezk@okeeffe.cs.columbia.edu>
5689
5690         * aux/macros/mount_headers.m4 (define): Use M4 changequote to
5691         ensure [] brackets are correctly used.
5692
5693         * aux/macros/expand_cpp_{string,hex,int}.m4: encapsulate
5694         multi-line M4 inclusions in [].
5695
5696 Tue Feb 25 22:19:44 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5697
5698         * conf/mtab/mtab_bsd.c (mnt_dup): use statfs field f_fstypename if
5699         it exists.
5700
5701         * aux/acconfig.h: HAVE_FIELD_STRUCT_STATFS_F_FSTYPENAME, new
5702         config.h macro for field f_fstypename of struct statfs.
5703
5704         * aux/configure.in: testing for field f_fstypename field of struct
5705         statfs (NetBSD).
5706
5707         * aux/acconfig.h: moved all of the "static" definitions out to a
5708         fixed file called include/am_defs.h.  Added to all */Makefile.am
5709         files a dependency on am_defs.h.  Created am_defs.h of course, and
5710         then added #include <amd_defs.h> to all of the source and header
5711         files that required it.
5712
5713 Mon Feb 24 01:27:02 1997  Erez Zadok  <ezk@defiant.soscorp.com>
5714
5715         * aux/acconfig.h: two more externals for xdr functions that may be
5716         implemented by libamu.
5717
5718         * conf/nfs_prot/nfs_prot_bsdi2.h: added missing RPC and XDR
5719         definitions.
5720
5721 Sun Feb 23 15:25:26 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5722
5723         * buildall (default): added -D option for turning on even stricker
5724         developer options.
5725
5726         * */Makefile.am: make sure @AMU_NFS_PROT_HEADERS@ is used to
5727         determine dependencies on optional NFS protocol headers.
5728
5729         * aux/acconfig.h: define and use HAVE_NFS_PROT_HEADERS as needed.
5730
5731         * aux/macros/check_nfs_prot_header.m4: new test to determine what
5732         NFS protocol headers to use. 
5733
5734         * conf/nfs_prot/nfs_prot_{irix6,sunos4,bsdi2}.h: new headers to
5735         complete missing system headers for NFS protocol definitions.
5736
5737 Sun Feb 16 15:58:42 1997  Erez "HWank1" Zadok  <ezk@vir.cs.columbia.edu>
5738
5739         * amd/ops_nfs.c (mount_nfs_fh): encapsulated some more code in
5740         #ifdef's as needed.
5741
5742         * amd/ops_afs.c (mount_toplvl): make sure TIMEO/RETRANS code is
5743         suitable #ifdef'ed.
5744
5745         * include/am_compat.h: a couple more mnttab options
5746         (timeo/retrans) setting just in case.
5747
5748         * amd/autil.c (host_normalize): make sure hostent->h_name is
5749         passed a non-const char *.
5750
5751         * conf/mount/mount_linux.c (mount_linux): cleaned up a block of code.
5752
5753         * {lib,amq,amd}/*.c (many functions): cast xdr_entry to
5754         XDRPROC_T_TYPE.
5755
5756         * lib/nfs_prot_svc.c (nfs_program_2): cast xdr_entry to
5757         XDRPROC_T_TYPE.
5758
5759         * lib/nfs_prot_xdr.c (xdr_entry): cast xdr_entry to
5760         XDRPROC_T_TYPE.
5761
5762         * lib/wire.c (getwire): Make sure safe assignment from const to
5763         none is done.
5764
5765 Sat Feb 15 19:38:51 1997  Erez "HWank1" Zadok  <ezk@vir.cs.columbia.edu>
5766
5767         * aux/macros/expand_cpp_int.m4: new macro for expanding integers.
5768
5769         * aux/configure.in: added linux/fs.h support in configure and
5770         several M4 macros.
5771
5772         * conf/mount/mount_linux.c (mount_linux): use macro instead of
5773         "ugly" fixed hex number for mount() arguments.
5774
5775 Sat Feb 15 02:09:47 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5776
5777         * amd/info_hesiod.c: removed macro HAVE_HS_ZONE_TRANSFER and
5778         turned all of its code always on.  That code always seems to
5779         compile, as long as you have hesiod and libresolv.
5780
5781         * amd/mapc.c: removed macro HAVE_HS_ZONE_TRANSFER and turned all
5782         of its code always on.
5783
5784         * aux/configure.in: removed superfluous test for hs_zone_transfer
5785         function (will never find it because it is an amd-internal
5786         function).
5787
5788         * amd/mapc.c (maptypes): must used correct new name for am-utils'
5789         hesiod initialization function: hesiod_am_init.
5790
5791         * amd/info_hesiod.c (hesiod_am_init): renamed hesiod_init to
5792         hesiod_am_init so as not to conflict with libhesiod's
5793         hesiod_init() function.
5794
5795         * aux/configure.in: added test and explicit inclusion of
5796         libresolv.a for later resolution of library references with
5797         libhesiod.
5798
5799         * aux/macros/opt_cppflags.m4: new file.  configure/compile C
5800         preprocessor flags.
5801
5802         * aux/macros/opt_libs.m4: new file.  configure/compile library
5803         flags.
5804
5805         * Makefile.am (EXTRA_DIST_AUX): include two new macros
5806         opt_cppflags.m4 and opt_libs.m4.
5807
5808         * aux/configure.in: test for libhesiod needs to additional
5809         libresolv to link completely.  Additional configuration time
5810         options added for setting initial CPPFLAGS and LIBS.
5811
5812 Tue Feb 10 02:15:40 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5813
5814         *******************************************************************
5815         *** Released am-utils-6.0a1                                     ***
5816         *******************************************************************
5817
5818 Thu Feb  6 02:55:19 1997  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
5819
5820         * amd/info_ndbm.c (ndbm_search,ndbm_init): fixed the code so that
5821         it works on freebsd, where they map dbm_pagfno a non-existing
5822         macro on purpose, to force you to port the code to Berkeley DB.
5823
5824 Fri Jan 31 01:35:09 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5825
5826         * amd/ops_afs.c (mount_toplvl): added a sleep(1) right before the
5827         actual mount_toplvl, to avoid some possible race conditions.
5828
5829 Thu Jan 30 02:31:49 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5830
5831         * amd/rpc_fwd.c: removed all TLI (HAVE_T_OPEN) code.
5832
5833 Wed Jan 29 18:25:07 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5834
5835         * lib/wire.c (getwire): removed HAVE_T_OPEN (TLI code)
5836
5837         * amd/amd.c (main): fix local address using htonl(). Free up
5838         buffers allocated by netdir_*() functions.
5839
5840 Wed Jan 22 23:53:24 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5841
5842         * amd/fix-amd-map.in: new script that will convert old-style amd
5843         maps to new one.
5844
5845 Tue Jan 21 01:18:16 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5846
5847         * FIRST AMD IN AM-UTILS FINALLY WORKS (mounts itself as toplvl,
5848         and replies back to simple nfs/link type mount queries).
5849
5850         * conf/mtab/mtab_svr4.c: reorganized the code in this file to be
5851         easier to read, and fixed a few bugs with un/setting the lock file
5852         descriptor.
5853
5854 Wed Jan  8 15:27:49 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5855
5856         * amd/sched.c: removed HAS_SVR3_SIGNALS code to handle older
5857         signals in Svr3 systems.  Only stellix ever used this.
5858
5859         * amd/rpc_fwd.c (fwd_reply): removed all code that was triggered
5860         by DYNAMIC_BUFFERS, since it was not in use.
5861
5862 Tue Jan  7 00:45:59 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5863
5864         * amd/opts.c (eval_opts): removed AMD_COMPAT code.  Amd no longer
5865         takes '=' sign as old selector.  Fix your maps.
5866         (deslashify): removed APOLLO code that treated two '//' as one.
5867
5868 Sun Jan  5 01:25:09 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5869
5870         * amd/ops_nfsx.c (nfsx_init): removed HARD_NFSX_ERRORS, code which
5871         was not used.  It made any submount error fail the whole group.
5872
5873         * amd/ops_nfs.c (make_nfs_auth): removed code dependent on
5874         HAS_NFS_QUALIFIED_NAMES.
5875         (mount_nfs_fh): removed macro for NFS_ARGS_NEEDS_PATH, assuming it
5876         is never on.  So code that was triggered by #ifndef
5877         NFS_ARGS_NEEDS_PATH (osf1, aix3, and bsd44 variants) may have to
5878         be fixed later.
5879         Removed all ULTRIX_HACK code.  Ultrix is DEAD!
5880         removed all PRESET_AC code, which was only on for Linux to preset
5881         the attribute cache values (otherwise they default to zero).
5882         (nfs_umounted): revobed KICK_KERNEL code (IRIX systems).  Will
5883         have to fixed up later.
5884         (mount_nfs_fh): removed code that was never included, which
5885         attempted to set the port on which amd's nfs mounts on.  This
5886         isn't supported by the ping algorithm yet.  In any case, it is all
5887         done in nfs_init().
5888
5889         * amd/srvr_nfs.c (find_nfs_srvr), amd/ops_nfs.c (mount_nfs_fh):
5890         removed HAS_TCP_NFS code.  The whole use of NFS V.3 with TCP or
5891         specially hacked NFS V.2 that uses TCP (BSD 4.4 variants) will
5892         have to be addressed later.
5893
5894         * amd/nfs_subr.c (nfsproc_getattr_2): removed all code dependent
5895         on PRECISE_SYMLINKS.
5896
5897         * amd/mapc.c (mapc_meta_search): removed code that depended on
5898         HAS_DEPOT.  It is known buggy code.  The whole DEPOT support needs
5899         to be rethought.
5900         (mapc_add_kv): ported code to use standard regular expression
5901         (regexp) library.
5902
5903         * amd/{map.c,ops_sfs.c,ops_ufs.c}: removed all code dependent on
5904         FLUSH_KERNEL_NAME_CACHE and the macro itself.
5905
5906 Sat Jan  4 15:46:58 1997  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5907
5908         * amd/map.c (exported_ap_alloc): removed all code triggered by
5909         SHRINK_EXPORTED_AP and the macro itself.
5910
5911         * amd/info_nis.c: removed HAS_NIS_RELOAD macro, and left the code
5912         in all the time.  Assuming that there is always NIS realod
5913         available.
5914         (yp_all_fixed): removed code for BROKEN_YP_ALL.  If your yp_all()
5915         function is broken such that it does not release filedescriptors
5916         it created, then you are hosed.  Get a fix for yp_all from your
5917         vendor or switch operating systems.
5918
5919 Tue Dec 31 15:34:36 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5920
5921         * amd/info_hesiod.c: renamed macro HAS_HESIOD_RELOAD to
5922         HAVE_HS_ZONE_TRANSFER.
5923
5924 Mon Dec 30 17:33:23 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5925
5926         * amd/{nfs,host}_ops.cremoved INFORM_MOUNTD macro, so its code is
5927         always included.  We should always try to inform the remove mount
5928         daemon of mounts we performed.  If we want an option for this, it
5929         should be a run-time option.
5930
5931         * amd/host_ops.c: removed all that optionally did not make the
5932         directory mount points for amd.
5933
5934         * HOST_EXEC code removed from everywhere.  There is no indication
5935         that it was used anywhere.  If it needs to be used, then a
5936         run-time switch should control it.
5937
5938 Thu Dec 26 00:06:52 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5939
5940         * amd/*_ops.c: removed all references to mntent_t's fields
5941         mnt_freq and mnt_passno, since they are no longe rused (and never
5942         have been).
5943
5944         * amd/am_ops.c: removed function sunos4_match, which was off
5945         anyway.  This was one of the places where an '=' sign was allowed
5946         as an assignment operator (which is now ':=').
5947
5948         * amd/afs_ops.c (afs_bgmount): removed SUNOS4_COMPAT code which
5949         was off anyway.  This was one of the places where an '=' sign was
5950         allowed as an assignment operator (which is now ':=').
5951
5952 Tue Dec 24 01:53:52 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5953
5954         * amq/amq.c: ported to am-utils.  Working.
5955
5956         * conf/mount/mount_svr4.c (mount_svr4): changed mount type on svr4
5957         to be string, as it should be (rather than a string mapped to int
5958         and back mapped to string).
5959
5960 Sun Dec 22 13:26:05 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5961
5962         * lib/mount_fs.c (mount_fs): removed MNTINFO_PREF code.
5963
5964         * lib/umount_fs.c: split this into three files: default, osf, and
5965         bsd44, that are in conf/umount/umount_*.c.
5966
5967 Thu Dec 19 17:33:46 1996  Erez "HWank1" Zadok  <ezk@lorien.cs.columbia.edu>
5968
5969         * aux/configure.in, aux/aclocal.m4, aux/acconfig.h: added new
5970         macro to automatically figure out if an external definition for
5971         sys_errlist[] exists.
5972
5973         * lib/xutil.c (xfree): removed "#undef free" because it's not
5974         needed there.  Any system that redefines free() needs help.
5975
5976         * conf/mtab/mtab_file.c (REWRITE_MTAB_IN_PLACE): removed code that
5977         was dependent on REWRITE_MTAB_IN_PLACE.  It does not appear to be
5978         in active use anywhere.  If added later, it should be a run-time
5979         configuration option.
5980
5981         * conf/mtab/mtab_mach3.c: removed code that was #ifdef'ed not to
5982         be MOUNT_TABLE_ON_FILE, since mach2 always stores its mount tables
5983         in a file in /etc.
5984
5985         * lib/util.c (str3cat): removed _AIX code.  AIX should have a
5986         working realloc, or else find a cleaner solution to this.
5987         (mkdirs): removed SUNOS4_WORKAROUND code.  This was to do a sync()
5988         after immediately making directories so that fsck will be able to
5989         fix the filesystem in the event of an immediate crash.  This was
5990         because a bug in UFS which is fixed by now.
5991
5992         * lib/hutil.c (domain_strip): removed PARTIAL_DOMAINS triggered
5993         code.  Does not appear to be on and used anywhere.
5994         (dofork): removed MACH3 code, b/c mach3 NFS bugs are fixed by now.
5995
5996         * lib/resvport.c: split the binding of reserved ports code to a
5997         separate file.  A #define (HAVE_T_OPEN) separates the TLI (SVR4)
5998         from the BSD code.
5999
6000 Thu Dec 19 02:08:35 1996  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
6001
6002         * lib/Makefile.am (amu_LIBADD): includs @LIBOBJS@ now, auto-filled
6003         in by automake and configure, for optional sources that need to be
6004         built as part of libamu.a.
6005
6006         * aux/aclocal.m4: Make sure AC_CHECK_MOUNT_STYLE adds mountutil.o
6007         to LIBOBJS.
6008
6009         * lib/memcmp.c (memcmp): new file added to replace a possible bad
6010         implementation of memcmp.
6011
6012 Wed Dec 18 22:20:23 1996  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
6013
6014         * converted the sources to use memset/memmove/memcmp instead of
6015         bzero/becopy/bcmp.
6016
6017         * ran all sources through gnu Indent w/ options specified in
6018         aux/amindent.
6019
6020 Wed Dec 11 22:19:29 1996  Erez "HWank1" Zadok  <ezk@shekel.mcl.cs.columbia.edu>
6021
6022         * At this point the initial genration of config.h via autoconf and
6023         some preliminary makefiles via automake is done.  I will not begin
6024         modifying sources, so it's a good time to document from here.