am-utils-6.1.git
19 years ago* configure.in: check if libc already includes dbm functionality
Erez Zadok [Tue, 2 May 2006 03:12:45 +0000 (03:12 +0000)]
* configure.in: check if libc already includes dbm functionality
(as in FreeBSD 6), then don't bother to check specific libraries
such as libdbm, gdbm, etc.

19 years ago* configure.in: detect G/DBM support via gdbm_compat library
Erez Zadok [Fri, 21 Apr 2006 19:34:42 +0000 (19:34 +0000)]
* configure.in: detect G/DBM support via gdbm_compat library
(Debian 3.1).

* minor new port: powerpc-apple-darwin8.5.0

19 years ago* scripts/amd.conf-sample, scripts/amd.conf.5, doc/am-utils.texi,
Erez Zadok [Fri, 21 Apr 2006 01:11:50 +0000 (01:11 +0000)]
* scripts/amd.conf-sample, scripts/amd.conf.5, doc/am-utils.texi,
NEWS: document new nfs_allow_any_interface parameter.

* include/am_compat.h (INADDR_LOOPBACK): define INADDR_LOOPBACK if
not defined, since some systems don't have it.

* libamu/wire.c (is_interface_local): new boolena function to
determine if address represents any of the local interfaces.
(getwire): more properly check if address equals INADDR_LOOPBACK,
not if IFF_LOOPBACK is not (the latter isn't as correct).

* include/am_utils.h: extern for new is_interface_local() function.

* conf/transp/transp_{sockets,tli}.c: don't define INADDR_LOOPBACK
here but in am_compat.h

* amd/nfs_prot_svc.c (nfs_program_2): if
nfs_allow_any_interface=yes, then allow NFS packets from any local
interface (not just 127.0.0.1).

* amd/conf.c (gopt_nfs_allow_any_interface): implement the new
amd.conf parameter nfs_allow_any_interface.

* amd/amd.h (CFM_NFS_ANY_INTERFACE): define new global flag when
al interfaces are acceptable for local NFS packets.

19 years agominor refomatting (emacs)
Erez Zadok [Wed, 19 Apr 2006 01:58:16 +0000 (01:58 +0000)]
minor refomatting (emacs)

19 years agoMention netgrp/netgrpd changes.
Christos Zoulas [Tue, 18 Apr 2006 17:30:39 +0000 (17:30 +0000)]
Mention netgrp/netgrpd changes.

19 years agoMake netgrp and netgrpd take an optional ",host" argument instead of always
Christos Zoulas [Tue, 18 Apr 2006 17:27:57 +0000 (17:27 +0000)]
Make netgrp and netgrpd take an optional ",host" argument instead of always
defaulting to ${host} or ${hostd} respectively.

19 years agoDocument the new 2 argument netgrp and netgrpd.
Christos Zoulas [Tue, 18 Apr 2006 17:26:54 +0000 (17:26 +0000)]
Document the new 2 argument netgrp and netgrpd.

19 years ago* libamu/mtab.c (hasmntval): fix inverted meaning of error from
Erez Zadok [Sun, 16 Apr 2006 16:34:35 +0000 (16:34 +0000)]
* libamu/mtab.c (hasmntval): fix inverted meaning of error from
hasmntvalerr().

19 years agobetter fix
Erez Zadok [Fri, 14 Apr 2006 19:57:22 +0000 (19:57 +0000)]
better fix

19 years ago* libamu/mount_fs.c (compute_nfs_attrcache_flags): use new
Erez Zadok [Fri, 14 Apr 2006 19:51:43 +0000 (19:51 +0000)]
* libamu/mount_fs.c (compute_nfs_attrcache_flags): use new
hasmntvalerr() function to set attribute cache values only if they
were set (regardless whether they were set to zero or a non-zero
value).  Before, we were unable to distinguish between an error to
parse an option, and a user who actually wanted to set an
attribute-cache value to 0.  This now fixes an important
performance bug that Amd was turning off the attribute caches even
for regular (non-automounter) NFS mounts.

* libamu/mtab.c (hasmntvalerr): new function to set the value of
an option into an integer, but ONLY if that options was set and
parsed correctly.  This function returns 1 on error, 0 on success
(instead of always setting the option value to 0).
(hasmntval): wrapper function around hasmntvalerr, which maintains
backwards compatibility (always sets option value to 0, even on
error to parse the option).

* amd/nfs_subr.c (fh_to_mp3): use long int printf format for
fhh_pid.

19 years ago* amd/amfs_generic.c (amfs_lookup_mntfs): fix use-after-free bug
Erez Zadok [Wed, 5 Apr 2006 15:16:20 +0000 (15:16 +0000)]
* amd/amfs_generic.c (amfs_lookup_mntfs): fix use-after-free bug
(Coverity).

19 years agoFix use after free.
Christos Zoulas [Wed, 5 Apr 2006 15:07:39 +0000 (15:07 +0000)]
Fix use after free.

19 years ago* doc/am-utils.texi, scripts/{amd.conf.5,amd.conf-sample}:
Erez Zadok [Tue, 28 Mar 2006 16:19:30 +0000 (16:19 +0000)]
* doc/am-utils.texi, scripts/{amd.conf.5,amd.conf-sample}:
document new nfs_retransmit_counter_toplvl and
nfs_retry_interval_toplvl global amd.conf parameters.

* amd/conf.c (gopt_nfs_retransmit_counter_toplvl,
(gopt_nfs_retry_interval_toplvl): parse amd.conf
nfs_retransmit_counter_toplvl and nfs_retry_interval_toplvl global
parameters.

* amd/amfs_toplvl.c (amfs_toplvl_mount): support setting toplvl
timeo/retrans parameters for Amd's toplvl mounts, separately from
all other UDP or NFS mounts.

* amd/amd.h: define a new timeo/retrans parameter for toplvl
mounts.

19 years ago* minor new port: i386-pc-linux-suse10.1 (beta 8).
Erez Zadok [Thu, 23 Mar 2006 02:44:04 +0000 (02:44 +0000)]
* minor new port: i386-pc-linux-suse10.1 (beta 8).

19 years ago* amd/am_ops.c (merge_opts): Remove useless check found by
Erez Zadok [Wed, 22 Mar 2006 17:21:17 +0000 (17:21 +0000)]
* amd/am_ops.c (merge_opts): Remove useless check found by
Coverity; xmalloc never returns NULL.

19 years agoRemove useless check found by Coverity; xmalloc never returns NULL.
Christos Zoulas [Wed, 22 Mar 2006 04:12:51 +0000 (04:12 +0000)]
Remove useless check found by Coverity; xmalloc never returns NULL.

19 years ago* minor new ports: i386-pc-linux-fc5.
Erez Zadok [Tue, 21 Mar 2006 16:46:55 +0000 (16:46 +0000)]
* minor new ports: i386-pc-linux-fc5.

* amd/info_ldap.c: as of Linux Fedora Core 5 (which comes with
openldap-2.3.9), the ldap.h headers deprecate several functions
used in this file, such as ldap_unbind.  You get compile errors
about missing extern definitions.  Those externs are still in
<ldap.h>, but surrounded by an ifdef LDAP_DEPRECATED.  I am
turning on that ifdef at the top of info_ldap.c, under the
assumption that the functions may be deprecated, but they still
work for this (older?) version of the LDAP API.  It gets am-utils
to compile, but it is not clear if it will work perfectly.

* libamu/xdr_func.c (xdr_am_mountres3_ok), amq/amq_xdr.c
(xdr_amq_mount_tree, xdr_amq_mount_tree_p,
xdr_amq_mount_info_list, xdr_amq_mount_tree_list), amq/amq.c
(show_mti), amd/amq_subr.c (xdr_amq_setopt, xdr_amq_mount_subtree,
xdr_amq_mount_tree, xdr_amq_mount_tree_list, xdr_amq_mount_tree),
libamu/xdr_func.c (xdr_am_mountres3_ok): use casing magic to stop
GCC-4.1 from complaining about "dereferencing type-punned pointer
will break strict-aliasing rules" here (but not elsewhere).

19 years ago* libamu/wire.c: avoid potential dereferencing of a NULL pointer
Erez Zadok [Mon, 20 Mar 2006 16:59:30 +0000 (16:59 +0000)]
* libamu/wire.c: avoid potential dereferencing of a NULL pointer
(Coverity).

* hlfsd/homedir.c (delay): remove unnecessary check for NULL
pointer (Coverity).

* fsinfo/fsi_analyze.c (analyze_dkmounts, analyze_mounts,
analyze_mounts): avoid potential dereferencing of a NULL pointer
(Coverity).

* conf/transp/transp_sockets.c (create_amq_service): avoid
potential dereferencing of a NULL pointer (Coverity).

* amd/sched.c (sigchld): properly check for the end of the waiting
process list (Coverity).

* amd/mapc.c (mapc_create): initialize 'modify' to zero (Coverity).

* amd/autil.c (amfs_mkcacheref, am_unmounted): avoid potential
dereferencing of a NULL pointer (Coverity).

* amd/amfs_generic.c (amfs_lookup_mntfs): free def_opts before
reusing it (memory leak bug detected by Coverity).
(amfs_bgmount): avoid potential dereferencing of a NULL pointer
(Coverity).

* amd/am_ops.c (merge_opts): no need to check if newstr is NULL
(bug detected by Coverity).

19 years ago * amd/nfs_subr.c (mp_to_fh): fixed old-style filehandles--the pid
Ion Badulescu [Thu, 9 Mar 2006 03:11:21 +0000 (03:11 +0000)]
* amd/nfs_subr.c (mp_to_fh): fixed old-style filehandles--the pid
comparison was failing.

19 years ago* configure.in: properly test for either <gdbm/ndbm.h> or
Erez Zadok [Wed, 8 Mar 2006 22:16:45 +0000 (22:16 +0000)]
* configure.in: properly test for either <gdbm/ndbm.h> or
<gdbm-ndbm.h> (unfortunately, Autoconf will map both names to the
same $ac_cv_* variable name).  Some systems support one header or
another.  Patch inspired by work Debian did.

19 years ago* amd/sum_map_tok.l: Fixed a bug in a regular expression that
Daniel Ottavio [Fri, 17 Feb 2006 03:44:01 +0000 (03:44 +0000)]
* amd/sum_map_tok.l: Fixed a bug in a regular expression that
prevented dashes in hostnames.  This was posted in BZ by Thomas
A. Fine.

* README.sun2amd: Fixed a typo.  Sentence mentions use of autofs
type when it should be host type.

19 years ago* doc/am-utils.texi (auto_attrcache Parameter): revise discussion
Erez Zadok [Thu, 5 Jan 2006 00:39:32 +0000 (00:39 +0000)]
* doc/am-utils.texi (auto_attrcache Parameter): revise discussion
to mention pros and cons of turning on/off this parameter,
including impact on Amd's performance, and ways to improve
performance while minimizing the window of vulnerability in which
kernel may return the wrong (cached) attributes.

19 years ago* updated copyright year to 2006 on all files.
Erez Zadok [Mon, 2 Jan 2006 18:47:15 +0000 (18:47 +0000)]
* updated copyright year to 2006 on all files.

19 years agoi386-unknown-netbsdelf3.0 (RELEASE), and i386-unknown-openbsd3.8.
Erez Zadok [Tue, 27 Dec 2005 23:26:56 +0000 (23:26 +0000)]
i386-unknown-netbsdelf3.0 (RELEASE), and i386-unknown-openbsd3.8.

19 years ago* include/am_utils.h, conf/transp/transp_tli.c (amu_svc_register,
Erez Zadok [Tue, 20 Dec 2005 19:59:55 +0000 (19:59 +0000)]
* include/am_utils.h, conf/transp/transp_tli.c (amu_svc_register,
register_autofs_service): use a consistent prototype for the
dispatch function of the autofs service de/registration functions.

19 years agoignore
Erez Zadok [Tue, 20 Dec 2005 18:43:40 +0000 (18:43 +0000)]
ignore

19 years ago* minor new ports: i386-unknown-netbsdelf2.1,
Erez Zadok [Sat, 3 Dec 2005 20:36:43 +0000 (20:36 +0000)]
* minor new ports: i386-unknown-netbsdelf2.1,
i386-unknown-netbsdelf3.0 (RC5), and i386-unknown-openbsd3.8.

* m4/macros/check_field.m4: remove double inclusion of msdosfs
headers, which are included in mount_header1.h (netbsd 2.1 doesn't
protect <msdosfs/msdosfsmount.h> which causes compile errors).

19 years ago* minor new port: i386-unknown-freebsd6.0 (RELEASE)
Erez Zadok [Wed, 9 Nov 2005 10:10:17 +0000 (10:10 +0000)]
* minor new port: i386-unknown-freebsd6.0 (RELEASE)

19 years ago* amd/amq_subr.c (amqproc_pawd_1_svc): repeatedly resolve path in
Erez Zadok [Wed, 26 Oct 2005 14:59:19 +0000 (14:59 +0000)]
* amd/amq_subr.c (amqproc_pawd_1_svc): repeatedly resolve path in
Amd, not in pawd (to avoid repeated network RPCs).

* amq/pawd.c (transform_dir): move repeated path resolution into Amd.

19 years ago* amq/pawd.c (transform_dir): resolve path repeatedly until
Erez Zadok [Wed, 26 Oct 2005 03:35:50 +0000 (03:35 +0000)]
* amq/pawd.c (transform_dir): resolve path repeatedly until
finished.  Bug fix from Jonathan Chen <jon+amd-at-spock.org>.
Added safety check to prevent infinite loops.

19 years agolongname, nowin95, shortname, user=N, group=N, mask=N, and
Erez Zadok [Thu, 20 Oct 2005 20:26:16 +0000 (20:26 +0000)]
longname, nowin95, shortname, user=N, group=N, mask=N, and
dirmask=N.
nowin95, shortname, user=N, group=N, mask=N, and dirmask=N.
user=N, group=N, mask=N, and dirmask=N.

19 years ago* doc/am-utils.texi (opts Option): document new pcfs options
Erez Zadok [Wed, 19 Oct 2005 23:54:35 +0000 (23:54 +0000)]
* doc/am-utils.texi (opts Option): document new pcfs options
longname, nowin95, shortname, uid=N, gid=N, mask=N, and dirmask=N.

* amd/ops_pcfs.c (mount_pcfs): process new pcfs options longname,
nowin95, shortname, uid=N, gid=N, mask=N, and dirmask=N.

* include/am_compat.h: provide compatibility mnttab string names,
if needed, for pcfs mount options longname, nowin95, shortname,
uid=N, gid=N, mask=N, and dirmask=N.

* include/am_utils.h: extern for hasmntstr().

* libamu/mtab.c (hasmntstr): new function to return the string
value following a mount option, up to the next comma-delimited
options.

* configure.in: check for mnttab and pcfs options longname,
nowin95, and shortname.

* Makefile.am (EXTRA_DIST_M4): distribute new macro
check_mnt2_pcfs_opt.m4.

* m4/macros/check_mnt2_pcfs_opt.m4: new macro to check for pcfs
mnttab and mount options.

19 years ago* libamu/mount_fs.c (print_nfs_args): print nfs_args->addr
Erez Zadok [Tue, 18 Oct 2005 18:11:34 +0000 (18:11 +0000)]
* libamu/mount_fs.c (print_nfs_args): print nfs_args->addr
correctly, depending if it's a pointer or not.

* conf/sa_dref/sa_dref_*.h: for each NFS_SA_DREF macro, also
#define NFS_ARGS_T_ADDR_IS_POINTER if nfs_args->addr is a pointer
or an embedded structure, so we can tell how to print it.

* libamu/mount_fs.c (print_nfs_args): print nfs_args->addrlen
field, if it exists.

* configure.in: check for nfs_args->addrlen field.

* wire-test/wire-test.c (main), libamu/mount_fs.c
(print_nfs_args), fixmount/fixmount.c (inetresport,
clnt_create_timeout), amq/pawd.c (transform_dir), amq/amq.c
(main), amd/srvr_nfs.c (find_nfs_srvr), amd/autil.c
(amfs_mount): document that as per POSIX, we don't need to set the
sa_len/sin_len fields in struct sockaddr/sockaddr_in.  The field
is used only internally in the kernel.  See
www.awprofessional.com/articles/article.asp?p=169505&seqNum=2&rl=1

* fixmount/fixmount.c (inetresport): initialize sockaddr_in
structure before filling in some fields.

19 years ago* doc/am-utils.texi (nfs_vers, nfs_proto parameters): clarify and
Erez Zadok [Tue, 11 Oct 2005 16:50:19 +0000 (16:50 +0000)]
* doc/am-utils.texi (nfs_vers, nfs_proto parameters): clarify and
correct mistaken description of nfs_proto.

19 years agoreorg NEWS a bit
Erez Zadok [Mon, 10 Oct 2005 18:27:48 +0000 (18:27 +0000)]
reorg NEWS a bit

19 years agoinstall sun2amd.txt am-utils-6_2a1
Erez Zadok [Mon, 10 Oct 2005 17:29:17 +0000 (17:29 +0000)]
install sun2amd.txt

19 years ago*******************************************************************
Erez Zadok [Mon, 10 Oct 2005 17:15:48 +0000 (17:15 +0000)]
*******************************************************************
*** Released am-utils-6.1a1 ***
*******************************************************************

* README.sun2amd: revised.

19 years agonuke trailing spaces
Erez Zadok [Mon, 10 Oct 2005 16:46:59 +0000 (16:46 +0000)]
nuke trailing spaces

19 years agothe sun2amd feature.
Daniel Ottavio [Mon, 10 Oct 2005 01:40:16 +0000 (01:40 +0000)]
the sun2amd feature.
Moved the date.

19 years ago* README.sun2amd: Made a first pass at describing the status of
Daniel Ottavio [Mon, 10 Oct 2005 01:33:16 +0000 (01:33 +0000)]
* README.sun2amd: Made a first pass at describing the status of
the sun2amd feature.

19 years agospacing
Erez Zadok [Sun, 9 Oct 2005 23:37:12 +0000 (23:37 +0000)]
spacing

19 years ago* amd/info_nis.c (nis_search): Bug fix for bugzilla #428; make
Daniel Ottavio [Sun, 9 Oct 2005 22:24:12 +0000 (22:24 +0000)]
* amd/info_nis.c (nis_search): Bug fix for bugzilla #428; make
sure that sun_entry2amd() is not called when yp_match() returns an
error, this is done by checking that 'res' is 0.  Bug fix (same
BZ#); free the output allocated by yp_match() instead of freeing
the return value of sun_entry2amd().

* amd/sun_map.c (sun_entry2amd): Fix a comment.

19 years ago* README.sun2amd: place holder.
Erez Zadok [Sun, 9 Oct 2005 20:18:50 +0000 (20:18 +0000)]
* README.sun2amd: place holder.

* Makefile.am (EXTRA_DIST): distribute new README.sun2amd file.

19 years ago* m4/macros/check_mnttab_type.m4: move the test for MOUNT_* to the
Erez Zadok [Sat, 8 Oct 2005 02:58:01 +0000 (02:58 +0000)]
* m4/macros/check_mnttab_type.m4: move the test for MOUNT_* to the
very end, after the test using getvfsbyname().

* m4/macros/expand_run_string.m4: if the string value returned is
empty, consider it invalid.

19 years ago* m4/macros/check_varargs_macros.m4: rewrite macro so it'll
Erez Zadok [Fri, 7 Oct 2005 23:17:31 +0000 (23:17 +0000)]
* m4/macros/check_varargs_macros.m4: rewrite macro so it'll
try and compile the varargs test, not just cpp it.  Some systems
pass the old cpp test, but not when you actually try to compile
the code (Tru64's cc).

19 years ago* conf/autofs/autofs_solaris_v1.h: redefine
Erez Zadok [Fri, 7 Oct 2005 22:28:12 +0000 (22:28 +0000)]
* conf/autofs/autofs_solaris_v1.h: redefine
autofs_strdup_space_hack as a macro to str3cat(NULL,(s)," ","").
This works everywhere and we avoid linking problems, inline
functions, etc.

* conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): remove
autofs_strdup_space_hack() function altogether.

19 years ago* m4/macros/os_cflags.m4: remove hack that hardcodes pte_t=u_int.
Erez Zadok [Fri, 7 Oct 2005 21:25:01 +0000 (21:25 +0000)]
* m4/macros/os_cflags.m4: remove hack that hardcodes pte_t=u_int.

* configure.in: test for <sys/immu.h> header.
Test for pte_t, but only on IRIX6 systems.

* Makefile.am (EXTRA_DIST_M4): distribute new type_pte_t.m4 file.

* m4/macros/type_pte_t.m4: new test for existence of pte_t
typedef, needed on some IRIX-6.5/gcc systems.

19 years ago* m4/macros/header_templates.m4: add missing templates for
Erez Zadok [Fri, 7 Oct 2005 20:34:19 +0000 (20:34 +0000)]
* m4/macros/header_templates.m4: add missing templates for
HAVE_EXTERN_GETDTABLESIZE, HAVE_EXTERN_GETWD, and
HAVE_EXTERN_UALARM.

19 years ago* amd/Makefile.am (amd_LDADD, sun2amd_LDADD): put libaminfo.a
Erez Zadok [Fri, 7 Oct 2005 20:16:29 +0000 (20:16 +0000)]
* amd/Makefile.am (amd_LDADD, sun2amd_LDADD): put libaminfo.a
before libamu.la.  Some linkers (e.g., IRIX-6.5) incorrectly
complain about undefined symbols.

19 years ago* amd/info_exec.c (exec_map_open): break assignment from inside
Erez Zadok [Fri, 7 Oct 2005 20:05:21 +0000 (20:05 +0000)]
* amd/info_exec.c (exec_map_open): break assignment from inside
conditional, to work around an IRIX-6.5 cc bug.

* amd/Makefile.am (amd_LDADD): put libaminfo.a before libamu.la.
Some linkers (e.g., IRIX-6.5) incorrectly complain about undefined
symbols.

19 years ago* fsinfo/fsi_util.c (set_ether_if), amd/map.c (unmount_mp),
Erez Zadok [Fri, 7 Oct 2005 18:55:29 +0000 (18:55 +0000)]
* fsinfo/fsi_util.c (set_ether_if), amd/map.c (unmount_mp),
libamu/xutil.c (expand_error), libamu/strutil.c (xsnprintf): avoid
comparison between signed and unsigned integers.

19 years agostandard usage and formatting
Erez Zadok [Fri, 7 Oct 2005 17:24:16 +0000 (17:24 +0000)]
standard usage and formatting

19 years ago* conf/autofs/autofs_solaris_v1.h, conf/autofs/autofs_solaris_v1.c
Erez Zadok [Fri, 7 Oct 2005 17:15:36 +0000 (17:15 +0000)]
* conf/autofs/autofs_solaris_v1.h, conf/autofs/autofs_solaris_v1.c
(autofs_strdup_space_hack): move "space_hack" function from static
inline in header, into the only source file that needs it.  This
is cleaner and also prevents linking problem with some compilers
that won't apply CPP macros inside static inline functions (for
the strl* functions).

19 years ago* amq/pawd.c (find_mt, find_mlp): remove obsolete, inefficient
Erez Zadok [Fri, 7 Oct 2005 16:39:12 +0000 (16:39 +0000)]
* amq/pawd.c (find_mt, find_mlp): remove obsolete, inefficient
code.
(transform_dir): call the new, efficient amqproc_pawd_1() routine.

* amq/amq_clnt.c (amqproc_pawd_1): AMQPROC_PAWD wrapper routine.

* amq/amq.h (amqproc_pawd_1): extern for amq's AMQPROC_PAWD
wrapper routine.

* amd/amq_svc.c (amq_program_1): dispatch point for
amqproc_pawd_1_svc.

* amd/amq_subr.c (amqproc_pawd_1_svc): moved pawd's path-matching
functionality into Amd, where it can be done a lot more
efficiently.  We don't have to construct and ship a whole export
tree from Amd to pawd.  We just get a variable-length
xdr_wrapstring for the user's path, iterate over the entire export
list inside Amd, and return only a matched string if found
(otherwise we return "" to indicate that there was no match, and
let pawd printf the same string it sent over).

* amd/amd.h: extern for amqproc_pawd_1_svc, amd's service routine
the AMQPROC_PAWD RPC.

* amq/pawd.c (transform_dir): was using UDP only.  Now will also
try TCP if UDP failed.  Destroy client after use to avoid leftover
TCP sockets in the kernel.

19 years ago* ltmain.sh, m4/macros/libtool.m4: update to libtool-1.5.20.
Erez Zadok [Fri, 7 Oct 2005 03:53:16 +0000 (03:53 +0000)]
* ltmain.sh, m4/macros/libtool.m4: update to libtool-1.5.20.
Fixes Tru64 bugs when using ksh.

19 years ago* amd/amfs_toplvl.c (amfs_toplvl_mount): break complex ifdef macro
Erez Zadok [Fri, 7 Oct 2005 03:44:59 +0000 (03:44 +0000)]
* amd/amfs_toplvl.c (amfs_toplvl_mount): break complex ifdef macro
into two sections, to workaround a C99 varargs-macro bug in
gcc-3.2.2 (RH9).

19 years ago* libamu/wire.c (print_wires): convert argument-less xsnprintf to
Erez Zadok [Fri, 7 Oct 2005 01:40:03 +0000 (01:40 +0000)]
* libamu/wire.c (print_wires): convert argument-less xsnprintf to
xstrlcpy.

* include/am_utils.h: use new HAVE_C99_VARARGS_MACROS or
HAVE_GCC_VARARGS_MACROS to pass file name and line number to
xsnprintf/xvsnprintf.

* libamu/strutil.c (xsnprintf, xvsnprintf): if debugging is on,
then also print the source file name and line number that called
xsnprintf/xvsnprintf with a buffer that wasn't large enough (most
likely an am-utils bug).

* Makefile.am (EXTRA_DIST_M4): distribute new
check_varargs_macros.m4 file.

* configure.in: execute new AMU_VARARGS_MACROS test.

* m4/macros/check_varargs_macros.m4: new test to check what style
of variable-length argument macros, if any, does the
compiler/pre-processor supports.

19 years ago* conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req)
Erez Zadok [Fri, 7 Oct 2005 00:20:13 +0000 (00:20 +0000)]
* conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req)
conf/autofs/autofs_solaris_v1.c (autofs_mount_1_req), amd/opts.c,
amd/nfs_subr.c (nfsproc_lookup_2_svc), amd/nfs_start.c
(mount_automounter), amd/get_args.c (get_args), amd/amfs_toplvl.c,
amd/amfs_auto.c (amfs_auto_mount), amd/amd.h, amd/amd.c (main):
use sizeof() instead of fixed SIZEOF_* macros.

19 years ago* libamu/strutil.c (xstrlcat, xstrlcpy), include/am_utils.h
Erez Zadok [Thu, 6 Oct 2005 21:11:54 +0000 (21:11 +0000)]
* libamu/strutil.c (xstrlcat, xstrlcpy), include/am_utils.h
(DEBUG): if debugging is on, then also print the source file name
and line number that called xstrl* with a buffer that wasn't large
enough (most likely an am-utils bug)

19 years agotypo that hpux-cc caught
Erez Zadok [Thu, 6 Oct 2005 20:33:42 +0000 (20:33 +0000)]
typo that hpux-cc caught

19 years ago* include/am_compat.h (INADDR_NONE): define in a common location,
Erez Zadok [Thu, 6 Oct 2005 20:18:15 +0000 (20:18 +0000)]
* include/am_compat.h (INADDR_NONE): define in a common location,
if OS doesn't have it, use 0xffffffffU which should work with any
ANSI compiler.

* fixmount/fixmount.c, libamu/wire.c: remove local definition of
INADDR_NONE.

* amd/amfs_toplvl.c (amfs_toplvl_mount), amd/amfs_auto.c
(amfs_auto_mount): use common SIZEOF_OPTS in definition and call
to autofs_get_opts.

* amd/amd.h (SIZEOF_OPTS): moved #define to common header.

* amd/opts.c (expand_op): Need to check BUFSPACE for env for
vlen+1.  Likewise for cp and strlen(cp)+1.

* amd/amfs_toplvl.c (amfs_toplvl_mount) [HAVE_FS_AUTOFS]: Pass new
size argument to autofs_get_opts.

19 years ago* amq/pawd.c (transform_dir): use TCP first, else UDP. Destroy
Erez Zadok [Thu, 6 Oct 2005 01:06:51 +0000 (01:06 +0000)]
* amq/pawd.c (transform_dir): use TCP first, else UDP.  Destroy
client after use to avoid leftover TCP sockets in the kernel.

19 years ago* libamu/hasmntopt.c (amu_hasmntopt): increase size of MNTMAXSTR
Erez Zadok [Wed, 5 Oct 2005 23:33:01 +0000 (23:33 +0000)]
* libamu/hasmntopt.c (amu_hasmntopt): increase size of MNTMAXSTR
from 128 to to 256, because some users have really long option
strings.  Suggestion from jon+amd-at-spock.org.

19 years ago* amd/opts.c (expand_op): should check BUFSPACE for vlen+1, not
Erez Zadok [Wed, 5 Oct 2005 07:52:25 +0000 (07:52 +0000)]
* amd/opts.c (expand_op): should check BUFSPACE for vlen+1, not
just vlen.  Bug discovered when started using xstrlcpy().

* ALL: convert from using strcat to the safer xstrlcat, and from
strcpy to safer xstrlcpy.

* hlfsd/hlfsd.h: remove old fatalerror() and ERRM macros.

* hlfsd/hlfsd.c (fatalerror): new function instead of macro.
Easier to use xstrlcat in this new function.

* amd/amd.h, include/am_utils.h, amd/amd.c: moved 'hostd' extern
from am_utils.h to amd.h, and define its size as a macro that
could be passed to xstrl*().

19 years ago* ALL: convert from using sprintf to the safer xsnprintf.
Erez Zadok [Wed, 5 Oct 2005 01:13:45 +0000 (01:13 +0000)]
* ALL: convert from using sprintf to the safer xsnprintf.

* mk-amd-map/Makefile.am (LDADD): link with libamu to get
xsnprintf().

* amd/amd.h, amd/amd.c, include/am_utils.h: moved pid_fsname
extern from am_utils.h to amd.h, and define its size as a macro
that could be passed to xsnprintf().

19 years ago* libamu/Makefile.am: use strutil.c, not util.c. before-xstr
Erez Zadok [Mon, 3 Oct 2005 01:01:10 +0000 (01:01 +0000)]
* libamu/Makefile.am: use strutil.c, not util.c.

* libamu/strutil.c: rename from util.c to explain better purpose
of file.  Move xvsnprintf and xsnprintf from xutil.c to this file.

* libamu/xutil.c: explain purpose of file.  Move mkdirs/rmdirs
code from old util.c.

19 years ago* m4/macros/header_templates.m4: templates for FFS.
Erez Zadok [Sat, 1 Oct 2005 06:48:08 +0000 (06:48 +0000)]
* m4/macros/header_templates.m4: templates for FFS.

* m4/macros/check_mnttab_type.m4: on BSD44 systems, check for file
system mount table name via the MOUNT_* mount(2) macros (because
BSD44 keeps the mount table in the kernel).

* configure.in: synchronise order of searching for mnttab entries
and mount names.  The new order is "ext3 ext2 ffs ufs 4.2 4.3 4.4
efs xfs jfs ultrix" (which would prefer ffs on BSD44 instead of
ufs, and ext3 instead of ext2 on Linux).

19 years ago* fsinfo/fsi_util.c (set_ether_if): use INADDR_NONE instead of
Erez Zadok [Sat, 1 Oct 2005 05:43:38 +0000 (05:43 +0000)]
* fsinfo/fsi_util.c (set_ether_if): use INADDR_NONE instead of
hard-coded value of -1.

* include/amq_defs.h (AMQ_STRLEN): increase default size from 2KB
to 16KB.  We can afford it these days.

* libamu/strcasecmp.c (strcasecmp): use unsigned chars in
tolower() to avoid sign/size promotion bugs.

* libamu/xutil.c (switch_to_logfile): don't output to LOG_CONS by
default (it's unfriendly).  If user really wants to, they can set
it in /etc/syslog.conf.

19 years ago* include/am_defs.h: include <sys/statvfs.h> if it exists.
Erez Zadok [Sat, 1 Oct 2005 05:26:55 +0000 (05:26 +0000)]
* include/am_defs.h: include <sys/statvfs.h> if it exists.

* conf/nfs_prot/nfs_prot_netbsd1_4.h: NetBSD 3 has both statfs()
and statvfs(), but the latter is preferred, so #define to use
statvfs.

* configure.in: check for statfs(), statvfs(), and
<sys/statvfs.h>.

* config.guess.long: strip trailing '.' on "netbsdelf3.0."
(Beta).  Workaround for bug in config.guess.

* config.{guess,sub}: update to latest versions.

19 years agoupdates from latest GNU versions
Erez Zadok [Sat, 1 Oct 2005 05:17:00 +0000 (05:17 +0000)]
updates from latest GNU versions

19 years ago* amq/pawd.c (find_mt): if the auto mount type is used, pawd could
Erez Zadok [Fri, 30 Sep 2005 03:41:54 +0000 (03:41 +0000)]
* amq/pawd.c (find_mt): if the auto mount type is used, pawd could
go into an infinite loop since the mt_directory and mt_mountpoint
fields are the same for auto mounts.  Solution: ignore type auto
mounts, similar to toplvl.  Bug fix from Jonathan Chen
<jon+amd@spock.org>.

19 years ago* README.attrcache: document test-attrcache script.
Erez Zadok [Fri, 30 Sep 2005 02:50:26 +0000 (02:50 +0000)]
* README.attrcache: document test-attrcache script.

* scripts/Makefile.am (noinst_SCRIPTS): build test-attrcache
script.

* configure.in: build scripts/test-attrcache script and chmod it
so it can be executed in place.

* scripts/test-attrcache.in: script to test the NFS attribute
cache using Amd.

19 years agocomment space
Erez Zadok [Mon, 26 Sep 2005 06:02:56 +0000 (06:02 +0000)]
comment space

19 years ago* hlfsd/stubs.c (nfsproc_getattr_2_svc, nfsproc_lookup_2_svc,
Erez Zadok [Mon, 26 Sep 2005 05:17:11 +0000 (05:17 +0000)]
* hlfsd/stubs.c (nfsproc_getattr_2_svc, nfsproc_lookup_2_svc,
nfsproc_readlink_2_svc, nfsproc_readdir_2_svc), hlfsd/hlfsd.c
(hlfsd_init): use new clocktime() function.

19 years agoNEWS update
Erez Zadok [Mon, 19 Sep 2005 04:46:14 +0000 (04:46 +0000)]
NEWS update

19 years ago* README.attrcache: document netbsd's patchs to support noac.
Erez Zadok [Mon, 19 Sep 2005 04:00:57 +0000 (04:00 +0000)]
* README.attrcache: document netbsd's patchs to support noac.

19 years ago* README.attrcache: document netbsd's patch to support noac.
Erez Zadok [Mon, 19 Sep 2005 03:36:21 +0000 (03:36 +0000)]
* README.attrcache: document netbsd's patch to support noac.

19 years ago* libamu/mount_fs.c (compute_nfs_attrcache_flags): cleanup the
Erez Zadok [Mon, 19 Sep 2005 02:53:30 +0000 (02:53 +0000)]
* libamu/mount_fs.c (compute_nfs_attrcache_flags): cleanup the
code that sets the ac{reg,dir}{min,max} fields so it also sets the
appropriate nfs_args->flags such as MNT2_NFS_OPT_ACREGMIN.

* configure.in: check for nfs_args fields acregmax and acdirmax.

Update status of freebsd and openbsd.

19 years agofreebsd version typo
Erez Zadok [Sun, 18 Sep 2005 23:22:44 +0000 (23:22 +0000)]
freebsd version typo

19 years agotypos
Erez Zadok [Sun, 18 Sep 2005 22:51:47 +0000 (22:51 +0000)]
typos

19 years agotypos
Erez Zadok [Sun, 18 Sep 2005 22:44:12 +0000 (22:44 +0000)]
typos

19 years ago* README.attrcache: new file documenting in detail OS bugs
Erez Zadok [Sun, 18 Sep 2005 21:56:55 +0000 (21:56 +0000)]
* README.attrcache: new file documenting in detail OS bugs
relating to attribute caching, which can affect Amd's reliability
under heavy load.

* doc/Makefile.am: install README.attrcache file as attrache.txt
file on am-utils Web site.

* Makefile.am (EXTRA_DIST): include README.attrcache in distro.

* BUGS, NEWS, doc/am-utils.texi (auto_attrcache Parameter),
scripts/amd.conf.5, scripts/amd.conf-sample: document attribute
cache bugs on some OSs.

19 years ago* libamu/xutil.c (clocktime): newly implemented routine. Uses after-clocktime-fixes
Erez Zadok [Sat, 17 Sep 2005 22:16:36 +0000 (22:16 +0000)]
* libamu/xutil.c (clocktime): newly implemented routine.  Uses
gettimeofday() each time to return a high-resolution clock time,
and does not "cache" the last time.  Returns time in seconds, just
like the old implementation.  If passed a non-null argument, will
fill it in with the current time in seconds+microseconds.

* libamu/xutil.c: remove actual declaration of clock_valid, and
another never-used declaration for xclock_valid.

* include/am_utils.h: remove defunct definition of clocktime()
macro and clock_valid variable.  Add extern for new definition.

* libamu/mount_fs.c (mount_fs), hlfsd/homedir.c (homedir,
hlfsd_diskspace, hlfsd_getpwent, plt_reset, table_add),
hlfsd/hlfsd.c (main, hlfsd_init, reload, cleanup),
conf/mtab/mtab_mach3.c (open_locked_mtab), conf/mtab/mtab_file.c
(open_locked_mtab), amd/nfs_start.c (do_select, run_rpc),
amd/autil.c (host_normalize): remove defunct clock_valid.

* amd/nfs_subr.c (nfsproc_getattr_2_svc): Print microseconds for
node's mtime.
(fh_to_mp3): use new clocktime() to update mtime and get a better
time resolution.

* amd/mapc.c (mapc_reload_map): change prototype from returning
void to returning an int.  If reloading was needed and succeeded,
return 1; else return 0.
(mapc_sync): update mtime of parent node if needed.  This is a
CRITICAL FIX, to ensure that the kernel flushes its DNLC/dcache
when we run "amq -f" manually or when a map is reloaded.

* amd/map.c (new_ttl): update am_ttl and na_atime in one shot.
(init_map): use new clocktime().
(unmount_mp): if the OS doesn't support a "symttl" option, then
update the mtime of the parent node using the clocktime(); but if
the time hasn't gotten changed because of rapid Amd accesses on
systems that don't have a micro-second NFS-client resolution, then
increment mtime by one arbitrarily (this could, on some systems
and under pathological cases, result in mtime's that are in the
future).

* amd/autil.c (forcibly_timeout_mp): MAJOR BUG FIX: force mtime
update of parent dir, to prevent DNLC/dcache from caching the old
entry, which could result in ESTALE errors, bad symlinks, and
more.
(am_mounted): record mount time, and update am_stats at the same
time, using the double-action redone clocktime() routine.
(am_mounted): update parent's mtime from that of the child.
(am_unmounted): when unmounting an entry, update mtime of parent
node.

* amd/amfs_generic.c (amfs_bgmount): now that clocktime() doesn't
remember it's last non-zero value, save it in a temporary variable
to avoid a TOCTOU problem (between an "if" and a "dlog").

* libamu/xutil.c (show_time_host_and_name),
conf/autofs/autofs_linux.c (autofs_mounted, autofs_timeout_mp),
amd/srvr_nfs.c (nfs_keepalive_callback, nfs_keepalive_timeout)
(find_nfs_srvr), amd/rpc_fwd.c (fwd_alloc), amd/nfs_subr.c
(nfsproc_getattr_2_svc), amd/nfs_start.c (do_select, run_rpc),
amd/mapc.c (root_init), amd/map.c(map_flush_srvr, timeout_mp),
amd/info_ndbm.c (ndbm_init), amd/info_ldap.c (amu_ldap_rebind),
amd/info_file.c (file_open), amd/info_exec.c (fgets_timed,
exec_search), amd/clock.c (timeout, softclock), amd/autil.c
(forcibly_timeout_mp), amd/amfs_generic.c (amfs_retry,
amfs_bgmount, amfs_generic_mount_child), amd/amd.c (main): pass
NULL to clocktime().

19 years ago* amd/nfs_subr.c (nfsproc_getattr_2_svc): initialize 'retry', just before-clocktime-fixes
Erez Zadok [Thu, 15 Sep 2005 23:12:56 +0000 (23:12 +0000)]
* amd/nfs_subr.c (nfsproc_getattr_2_svc): initialize 'retry', just
in case.
(fh_to_mp3): increment amd_stats.d_stale counter only if we are
actually returning ESTALE.

* amd/info_exec.c (exec_parse_qanswer), amd/info_file.c
(file_search_or_reload), amd/info_hesiod.c (hesiod_search),
amd/info_ldap.c (amu_ldap_search), amd/info_ndbm.c (search_ndbm),
amd/info_nis.c (nis_search), amd/info_nisplus.c (nisplus_search,
nisplus_search): don't dereference mnt_map->cfm which may be null
if we're not using an amd.conf file.

* libamu/xutil.c (unregister_amq): if failed to de-register Amd
from portmapper, report it under dlog (debugging), not as an
annoying plog that always shows up.

19 years agocast fixes for isFOO
Erez Zadok [Wed, 14 Sep 2005 14:14:37 +0000 (14:14 +0000)]
cast fixes for isFOO

19 years ago* mk-amd-map/mk-amd-map.c (read_file_file), libamu/util.c
Erez Zadok [Wed, 14 Sep 2005 02:53:09 +0000 (02:53 +0000)]
* mk-amd-map/mk-amd-map.c (read_file_file), libamu/util.c
(strsplit), libamu/hasmntopt.c (nextmntopt), amd/sun_map.c
(sun_entry2amd), amd/sun2amd.c (sun2amd_convert_convert),
amd/mapc.c (mapc_add_kv), amd/info_file.c (file_search_or_reload),
amd/info_exec.c (exec_parse_qanswer): cast isspace() arg to
unsigned char, which is safer as per Christos.

19 years agono trailing whitespaces
Erez Zadok [Wed, 14 Sep 2005 00:27:55 +0000 (00:27 +0000)]
no trailing whitespaces

19 years ago* amd/sun_map.c (sun_entry2amd): isspace takes an int, not a char.
Erez Zadok [Wed, 14 Sep 2005 00:26:42 +0000 (00:26 +0000)]
* amd/sun_map.c (sun_entry2amd): isspace takes an int, not a char.

* configure.in: keep a dummy unused AM_PROG_LEX, because old
Automake (1.6.3) looks for it if you refer to LEX in your
Makefile.am files.  Silly thing, fixed in newer versions of
Automake (1.9.2).

19 years ago* Makefile.am (EXTRA_DIST_M4): add prog_{lex,yacc}.m4 to distro.
Erez Zadok [Sun, 11 Sep 2005 19:06:40 +0000 (19:06 +0000)]
* Makefile.am (EXTRA_DIST_M4): add prog_{lex,yacc}.m4 to distro.

* configure.in: use new macros AMU_PROG_YACC and AMU_PROG_LEX.

* m4/macros/prog_yacc.m4: new macro to check if bison/yacc/byacc
exist, but exist with an error if none found.

* m4/macros/prog_lex.m4: new macro to check if f/lex exist, but
exit with an error if not found (am-utils requires f/lex).

19 years ago* minor new port: powerpc-apple-darwin8.2.0.
Erez Zadok [Thu, 8 Sep 2005 02:36:55 +0000 (02:36 +0000)]
* minor new port: powerpc-apple-darwin8.2.0.

* m4/macros/type_auth_create_gidlist.m4: Old macosx used "gid_t"
but all newer ones (10.4+) use int.

* m4/macros/type_recvfrom_fromlen.m4: Old macosx used "int" for
6th arg of recvfrom(), but all newer ones (10.4+) use socklen_t.

19 years ago* minor new port: i386-pc-linux-deb3.1.
Erez Zadok [Wed, 7 Sep 2005 23:39:30 +0000 (23:39 +0000)]
* minor new port: i386-pc-linux-deb3.1.

* conf/mount/mount_linux.c: If autoconf didn't find any disk-based
file system on this system (probably because /proc isn't mounted),
then provide some default definition for this file to compile.

20 years ago* amd/amd.h : oops, reverting bad changes
Daniel Ottavio [Mon, 29 Aug 2005 03:42:31 +0000 (03:42 +0000)]
* amd/amd.h : oops, reverting bad changes

* amd/info_file.c : oops, reverting bad changes

* amd/mapc.c : oops, reverting bad changes

* amd/sun_map_parse.y : oops, reverting bad changes

20 years ago* amd/sun_map.c (sun_entry2amd) : Wipe out any trailing white
Daniel Ottavio [Mon, 29 Aug 2005 03:24:25 +0000 (03:24 +0000)]
* amd/sun_map.c (sun_entry2amd) : Wipe out any trailing white
spaces or 'n' before passing strings to the parser.

20 years ago* libamu/xutil.c: amd_program_number is a u_long now.
Erez Zadok [Sun, 28 Aug 2005 00:37:17 +0000 (00:37 +0000)]
* libamu/xutil.c: amd_program_number is a u_long now.
(unregister_amq): if pmap_unset failed to de-register Amd from the
portmapper, print an error message.
(get_amd_program_number): returns a u_long now.
(set_amd_program_number): take a u_long now.

* include/am_utils.h: get_amd_program_number() returns u_long now.
set_amd_program_number() takes a u_long now.

* amq/amq.c: amd_program_number is a u_long, not int.

* amd/nfs_start.c (mount_automounter): when registering Amd with
the portmapper (for Amq service), don't fail if just one of TCP or
UDP failed to register, but only if both transports failed.  That
way Amq can still contact Amd using the transport that did
register correctly.  However, now, if both transports failed to
register, then set amd_state to "Done" so it would shutdown
cleanly.

* conf/transp/transp_{sockets,tli{}.c (amu_svc_register): better
comments.

20 years ago* libamu/xutil.c: debug_flags should always be initialized to
Erez Zadok [Sun, 28 Aug 2005 00:18:43 +0000 (00:18 +0000)]
* libamu/xutil.c: debug_flags should always be initialized to
D_CONTROL (amq,daemon,fork).
(debug_option): allow setting initial immutable debug_flags via
amd.conf; afterward, prevent it (i.e., one tries it via "amq -D").

20 years ago* Makefile.am (DISTCLEANFILES): also remove amu_autofs_prot.h,
Erez Zadok [Sun, 28 Aug 2005 00:15:44 +0000 (00:15 +0000)]
* Makefile.am (DISTCLEANFILES): also remove amu_autofs_prot.h,
config.cache.old, and dbgcf.h on "make distclean".
(CLEANFILES): remove dbgcf on plain "make clean".

* amd/Makefile.am (DISTCLEANFILES): also remove ops_autofs.c on
"make distclean".

20 years agono trailing spaces
Erez Zadok [Sun, 28 Aug 2005 00:06:28 +0000 (00:06 +0000)]
no trailing spaces

20 years ago* amd/info_file.c (file_search_or_reload): Changed the key
Daniel Ottavio [Sat, 27 Aug 2005 19:14:18 +0000 (19:14 +0000)]
* amd/info_file.c (file_search_or_reload): Changed the key
variable that is passed to the sun_entry2amd.

* amd/mapc.c (mapc_add_kv): Add support for multiple entries
packed into one line.  This is a workaround for handling Sun style
mounts that contains multiple entries on one line "multi-mount
entries".  The sun2amd conversion tools will convert such entries
into type:=auto and pack each of the auto-entries into one line
separated by 'n'.  The mapc_add_kv function will now recognize
such entries and add then.

* amd/sun2amd.c (sun2amd_convert): Add print statement that
includes the line number during a parser failure.

* sun_map.c: Fix the AMD_MAP_PREF_KW definition.  Fix spelling.
(sun_mountpts2amd): removed this function
(sun_hsfs2amd): added some more comments
(sun_nfs2amd): moved support for multi-mount entries from this
function to sun_multi2amd().
(sun_multi2amd): New function to handle multi-mount entries.  This
function will convert the Sun version to an Amd type:=auto.  Each
extra auto entry will be appended to the same line separated by a
'n'.
(sun_entry2amd): Fixed a bug if-statement.  This function now
checks for multi-mount entries.

* amd/sun_map.h: Add a fstype member to the sun_mountpt struct.

* amd/sun_map_parse.y: Parser now supports fstype for multi-mount
entries.

* amd/sun_map_tok.l: No longer print the line and column number
when parsing.  This is because the parser is handed strings not
files.  Therefore, the line number will always be 1.  It is now up
to the higher level tools to echo line information during error
when they feed the parser.

20 years ago* configure.in: wrap all LDAP and HESIOD tests in test whether
Erez Zadok [Thu, 25 Aug 2005 02:03:29 +0000 (02:03 +0000)]
* configure.in: wrap all LDAP and HESIOD tests in test whether
--with-OPT was used.

Clean up function calls.

20 years ago* amd/sun_map.c: Clean up #defines
Daniel Ottavio [Sat, 20 Aug 2005 19:20:29 +0000 (19:20 +0000)]
* amd/sun_map.c: Clean up #defines
(sun_entry2amd) : Verify that the key and entry values passed are
not NULL.  Free the Sun entry struct when done.

* amd/sun_map.h: Add some "not implemented yet" comments to the
map and mmap structures.

* amd/sun_map_parse.y: Removed automap include functionality, it
will need to be re-implemented using a pre-processor.
Clean up fucntion calls.