-2000-07-04 H.J. Lu <hjl@lucon.org>
-
- * utils/statd/log.c: Include <stdlib.h> for exit ().
-
- * utils/statd/misc.c (xunlink): Add `{' and `}' to quiet the
- gcc warning.
-
-2000-07-04 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.9.1".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * README: Updated.
-
-2000-07-04 Neil Brown <neilb@cse.unsw.edu.au>
-
- * support/export/hostname.c (hostent_dup): Handle the NULL
- h_aliases field.
-
-2000-07-03 H.J. Lu <hjl@lucon.org>
-
- * README: Update the util-linux requirement.
-
-2000-07-03 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.9".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * README: Updated.
-
-2000-07-03 H.J. Lu <hjl@lucon.org>
-
- * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
- stop to ensure all clients can still access the server
- before it is shutdown.
-
-2000-06-30 Jeff Uphoff <juphoff@transmeta.com>
-
- * tools/rpcgen/rpc_svcout.c (write_msg_out): Generate syslog()
- calls with format string.
-
-2000-06-28 Chip Salzenberg <chip@valinux.com>
-
- * utils/statd/log.c (log): Call syslog with format string.
-
-2000-06-27 H.J. Lu <hjl@lucon.org>
-
- * utils/statd/statd.c (main): Use sysconf (_SC_OPEN_MAX)
- instead of OPEN_MAX.
-
-2000-06-27 H.J. Lu <hjl@lucon.org>
-
- * README: Updated.
-
-2000-06-27 H.J. Lu <hjl@lucon.org>
-
- * etc/redhat/nfs.init: Run /usr/sbin/exportfs last during
- startup to ensure all existing clients are exported.
-
- * configure.in (VERSION): Set to "0.1.8.2".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
-2000-06-06 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.8.1".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
-2000-06-06 H.J. Lu <hjl@lucon.org>
-
- * utils/mountd/mountd.c (mount_dump_1_svc): Cast svc_getcaller
- to "struct sockaddr_in *" for glibc 2.2.
- (mount_umnt_1_svc): Likewise.
- (mount_umntall_1_svc): Likewise.
- (mount_export_1_svc): Likewise.
- (mount_exportall_1_svc): Likewise.
- (mount_pathconf_2_svc): Likewise.
- (get_rootfh): Likewise.
-
-2000-06-04 H.J. Lu <hjl@lucon.org>
-
- * etc/redhat/nfs.init: Fix a typo in comment.
-
-2000-05-31 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.8".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * README: Updated.
-
-2000-05-31 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.7.5".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * support/include/nfslib.h (exportent): Add a new field,
- r_count, to count the number of mounts from a client.
- (getrmtabent): Take a new argument for position in file.
- (putrmtabent): Likewise.
- (fgetrmtabent): Likewise.
- (fputrmtabent): Likewise.
- * support/nfs/rmtab.c (getrmtabent): Handle the new argument
- for position in file.
- (fgetrmtabent): Likewise.
- (putrmtabent): Likewise.
- (fputrmtabent): Likewise.
-
- * support/nfs/rmtab.c (fgetrmtabent): Get value for the new
- field, r_count.
-
- * support/export/rmtab.c (rmtab_read): Pass NULL as the new
- argument to getrmtabent (), fgetrmtabent (), putrmtabent ()
- and fputrmtabent ().
- * utils/mountd/rmtab.c (mountlist_add): Likewise.
- (mountlist_del): Likewise.
- (mountlist_del_all): Likewise.
- (mountlist_list): Likewise.
-
- * utils/mountd/rmtab.c (mountlist_add): Increment "r_count"
- for the existing entry and initialize "r_count" to 1.
- (mountlist_del): Decrement "r_count".
-
-2000-05-18 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.7.4".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
-2000-05-18 H.J. Lu <hjl@lucon.org>
-
- * etc/redhat/nfs.init (restart): Just do stop and start.
-
-2000-05-09 Jay Weber <jweber@valinux.com>
-
- * utils/rquotad/hasquota.c: added support for ext3 recognition
- in rquotad.
- * utils/rquotad/mntent.h: Likewise.
-
-2000-05-01 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.7.3".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
-2000-05-01 H.J. Lu <hjl@lucon.org>
-
- * utils/rquotad/rquota_server.c (getquotainfo): Skip bad
- mounting poins in /etc/fstab.
-
-2000-05-01 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.7.2".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
-2000-05-01 H.J. Lu <hjl@lucon.org>
-
- * utils/rquotad/rquota_server.c (getquotainfo): Call stat ()
- to check for the mounting point.
-
-2000-04-29 Chip Salzenberg <chip@valinux.com>
- Neil Brown <neilb@cse.unsw.edu.au>
-
- * Really re-use RPC ports.
- (Fixes earlier patch. Sorry, Neil.)
-
-2000-04-26 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.7.1".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
-2000-04-26 H.J. Lu <hjl@lucon.org>
-
- * etc/redhat/nfslock.init: Check if lockd exits before killing
- it.
-
-2000-04-25 H.J. Lu <hjl@lucon.org>
-
- * README: Require util-linux-2.10f-mount-rpc.patch for mount.
-
-2000-03-21 Michael Weiser <michael@weiser.saale-net.de>
-
- * support/nfs/exports.c (parsesquash): Correctly set the
- return pointer.
-
-Tue Mar 21 11:38:48 EST 2000 NeilBrown <neilb@cse.unsw.edu.au>
-
- * support/include/nfs/nfs.h: Removed knowledge of internals of
- kernel filehandles (which can change) and defined nfs_fh_size
- which has variable size
-
- * support/nfs/getfh.c: defined getfh_size to use new syscall to
- get variable sized file handles, and change getfh{,old} to
- use nfs_fh_size
-
- * utils/mountd/mountd.c: use nfd_fh_size and call getfh_size for
- NFSv3 file handles
-
- * tools/Makefile, tools/nlmtest/nlmtest.c
- nlmtest.c depended on internel format of file handles, so now
- doesn't work.
-
-
-2000-03-12 Chip Salzenberg <chip@valinux.com>
- Neil Brown <neilb@cse.unsw.edu.au>
-
- * support/nfs/rpcmisc.c (rpc_init): Share transports.
-
-2000-03-13 H.J. Lu <hjl@lucon.org>
-
- * etc/redhat/nfsd.init: Updated.
-
- * etc/redhat/nfslock.init: Updated.
-
- * nfs-utils.spec.in: Updated.
-
- * configure.in (VERSION): Set to "0.1.7".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * README: Updated.
-
-Wed Mar 8 09:42:43 2000 Neil Brown <neilb@cse.unsw.edu.au>
-
- * utils/exportfs/exportfs.c (dump): Included printing of
- nohide, no_subtree_check, and insecure_locks
-
-2000-02-26 Chip Salzenberg <chip@valinux.com>
-
- * config.mk.in (INSTALLSUID): Strip ("-s").
- (INSTALLSCRIPT): Define.
- * utils/nhfsstone/Makefile: Use it.
-
-2000-02-26 Chip Salzenberg <chip@valinux.com>
-
- * utils/lockd/lockd.man: Create.
- * utils/lockd/Makefile: Install it.
- * utils/nhfsstone/nhfs{run,nums,graph}.man: Create.
- * utils/nhfsstone/nhfsstone.man: Change suffix from ".1".
- * utils/nhfsstone/Makefile: Install the helper scripts and
- all four man pages.
- * utils/exportfs/exports.man: Fix typo.
-
-2000-02-26 Chip Salzenberg <chip@valinux.com>
-
- * support/nfs/xio.c (xungetc): Decrement line number when
- character to unget is newline. Make first parameter int, so
- it can distinguish EOF from \377.
- * support/include/xio.h (xungetc): Adjust prototype.
-
-Fri Feb 4 23:42:23 2000 Neil Brown <neilb@cse.unsw.edu.au>
-
- * support/include/nfs/export.h: added NFSEXP_NOAUTHNLM
- * support/nfs/exports.c: added handling for NFSEXP_NOAUTHNLM
- * utils/exportfs/exports.man: added documentation for no_auth_nlm.
-
- This is for supporting a new option introduced in 2.3.42
-
-Thu Feb 3 14:55:48 2000 H.J. Lu <hjl@lucon.org>
-
- * COPYING: Added. GPL.
-
-Thu Feb 03 14:40:40 2000 Cristian Gafton <gafton@redhat.com>
-
- * utils/rquotad/rquota_server.c (getquotainfo): Call statfs ()
- to get the block size.
-
-Tue Jan 25 11:04:17 2000 H.J. Lu <hjl@lucon.org>
-
- * nfs-utils.spec.in: Update ftp site.
-
-Mon Jan 17 11:48:18 2000 H.J. Lu <hjl@lucon.org>
-
- * README: Update hostnames.
-
-Tue Jan 11 10:06:22 2000 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.6".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * README: Updated.
-
-Mon Jan 10 14:26:33 2000 H.J. Lu <hjl@lucon.org>
-
- * utils/mountd/auth.c (auth_authenticate_internal): Call
- xstrdup for hostname before passing it to gethostbyname.
-
- * utils/mountd/mountd.c (get_exportlist): Use xstrdup instead
- of strdup.
-
-Sun Dec 19 09:35:01 1999 H.J. Lu <hjl@lucon.org>
-
- * README: Update the mailing list address.
-
-Sun Dec 19 09:22:28 1999 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.5".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * README: Updated.
-
-Mon Dec 13 13:40:20 1999 H.J. Lu <hjl@lucon.org>
-
- * utils/rquotad/hasquota.c (hasquota): Malloc one more char
- for '/'.
-
-Mon Dec 6 09:42:45 1999 H.J. Lu <hjl@lucon.org>
-
- * configure.in (VERSION): Set to "0.1.4".
- * configure: Regenerated.
- * nfs-utils.spec: Updated.
-
- * README: Updated.
-
-Mon Dec 6 09:28:07 1999 H.J. Lu <hjl@lucon.org>
-
- * nfs-utils.spec.in: New file.
-
- * config.mk.in (VERSION): Changed to "nfs-utils @VERSION@".
-
- * configure.in (nfs-utils.spec): Added to AC_OUTPUT.
-
-1999-12-04 Chip Salzenberg <chip@valinux.com>
-
- * config.mk.in: Use $(CC) as set by configure.
-
-1999-12-04 Chip Salzenberg <chip@valinux.com>
-
- * rules.mk: Call $(MAKE) with $(MFLAGS).
-
-Mon Nov 29 11:17:35 1999 H.J. Lu <hjl@lucon.org>
-
- * tools/rpcgen/rpc_main.c (h_output): Generate IXDR_GET_INT32,
- IXDR_PUT_INT32, IXDR_GET_U_INT32 and IXDR_PUT_U_INT32.
-
-Mon Nov 29 11:17:35 1999 H.J. Lu <hjl@lucon.org>
-
- * nfs-utils.spec (Version): Set to 0.1.3.
-
- * configure.in (VERSION): Set to "nfs-utils 0.1.3".
- * configure: Regenerated.
-
- * README: Updated.
-
-Mon Nov 29 11:15:47 1999 H.J. Lu <hjl@lucon.org>
-
- * utils/rquotad/rquota_server.c (nfsmount_to_devname): Removed.
- (_PATH_DEV_DSK): Likewise.
- (getquotainfo): Match the mounting point from /etc/mtab
- instead of calling nfsmount_to_devname ().
-
-1999-11-24 Chip Salzenberg <chip@valinux.com>
-
- * utils/statd/monitor.c (sm_mon_1_svc): Accept lockd callbacks
- to the new port 24 as well as the historical port 100021.
-
-Tue Nov 23 10:21:34 1999 Neil Brown <neilb@cse.unsw.edu.au>
-
- * etc/redhat/nfsd.init (stop): moved exportfs -ua after
- stopping nfsd to stop spurious ESTALE on server shutdown.
-
-Tue Nov 23 10:13:39 1999 Neil Brown <neilb@cse.unsw.edu.au>
-
- * support/nfs/exports.c (parseopts): make copy of opt string
- before 'nul'ing out commas so that
-
- # exportfs -o option1,option2 hosta:/fs hostb:/fs
-
- applies both options to both exports.
-
-Thu Oct 28 12:55:42 1999 H.J. Lu <hjl@lucon.org>
-
- * README: Fix a few typos.
-
- * tools/rpcgen/rpc_cout.c (print_header): Use int32_t instead
- of long.
- * tools/rpcgen/rpc_hout.c (pdefine): Likewise.
- * tools/rpcgen/rpc_main.c (c_initialize): Likewise.
- * tools/rpcgen/rpc_parse.c (get_type): Likewise.
- (unsigned_dec): Likewise.
- * tools/rpcgen/rpc_scan.c (symbols): Likewise.
- * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
-
- * tools/rpcgen/rpc_cout.c (emit_single_in_line): Use INT32
- instead of LONG.
- * tools/rpcgen/rpc_parse.c (get_type): Likewise.
- (unsigned_dec): Likewise.
- * tools/rpcgen/rpc_scan.c (symbols): Likewise.
- * tools/rpcgen/rpc_scan.h (tok_kind): Likewise.
- * tools/rpcgen/rpc_util.c (tokstrings): Likewise.
-
-Thu Oct 28 11:27:51 1999 Neil Brown <neilb@cse.unsw.edu.au>
-
- * support/include/nfs/export.h addedd NFSEXP_NOSUBTREECHECK
- * support/nfs/exports.c: added {no_,}subtree_check and changed
- crossmnt to nohide
- * utils/exportfs/exports.man: added no_subtree_check and nohide
- and removed irrelevant stuff from unfsd.
- * support/export/rmtab.c: rmtab_read didn't quite do the right
- thing if a pathname from rmtab was a subdirectory of an export-point
-
-Tue Oct 26 17:22:40 1999 H.J. Lu <hjl@lucon.org>
-
- * README: Updated ftp site.
-
-Mon Oct 25 18:12:45 1999 H.J. Lu <hjl@lucon.org>
-
- * nfs-utils.spec (Version): Set to 0.1.2.
-
- * configure.in (VERSION): Set to "nfs-utils 0.1.2".
- * configure: Regenerated.
-
- * README: Updated.
-
-Mon Oct 25 18:11:21 1999 H.J. Lu <hjl@lucon.org>
-
- * utils/mountd/auth.c (auth_error): Add "no_forward_dns".
- (auth_authenticate_internal): Check for NULL return on forward
- DNS lookup.
- (auth_authenticate): Handle "no_forward_dns".
-
-Thu Oct 21 16:22:06 1999 H.J. Lu <hjl@lucon.org>
-
- * Version 0.1.1 released.
-
- * nfs-utils.spec (Version): Set to 0.1.1.
-
- * configure.in (VERSION): Set to "nfs-utils 0.1.1".
- * configure: Regenerated.
-
- * README: Updated.
-
-Mon Oct 18 17:43:29 1999 H.J. Lu <hjl@lucon.org>
-
- * nfs-utils.spec (Obsoletes): Fixed a typo, change knfsd-client
- to knfsd-clients.
- (Provides): Likewise.
-
-Mon Oct 18 14:56:22 1999 H.J. Lu <hjl@lucon.org>
-
- * Initial version 0.1 released.
-
- * configure.in (VERSION): Set to "nfs-utils 0.1".
- * configure: Regenerated.
-
-Mon Oct 18 14:54:57 1999 H.J. Lu <hjl@lucon.org>
-
- * utils/mountd/mountd.c (get_exportlist): Cleanup.
-
- * utils/exportfs/exportfs.c (unexport_all): Unexport from
- kernel only if the entry is exported to kernel.
- (unexportfs): Likewise.
-
-Wed Sep 08 16:49:32 1999 Neil Brown <neilb@cse.unsw.edu.au>
-
-1/ utils/mountd/rmtab.c::mountlist_list
-
- This routine stats the rmtab file to see if it has changed. It
- if has, it cleans up it's old copy of the data. But it still
- always re-read the file, thus returning multiple copies of the
- data on consecutive calls without intervening changes.
- "Showmount -a" didn't show this as it appears to sort/unique the
- data, but 'strace showmount -a' showed that the size of the
- datagram that it received grew.
-
- I moved the getrmtabent loop inside the mtime test.
-
-2/ utils/exportfs/exportfs.c
-
- Many routines used the m_path field of m_export instead of
- e_path.
- According to the comment in nfslib.h, m_path should only
- be used when processing a mount request (i.e. in mountd)
- where the mountpoint may be a subdirectory of the export point.
-
- I changed all occurances of m_path to e_path
-
-
-3/ utils/exportfs/exportfs.c:main
-
- extra arguments are not meaningful with -a or -r, but
- exportfs accepted them and then ignored the -a/-r, expect that
- -r would still unexport everything first.
-
- I generate an error if there are extra args and f_all
-
-4/ utils/exportfs/exportfs.c:main
- extract dump out as a special case.
-
-5/ utils/exportfs/exportfs.c
- made f_reexport a local variable.
-
-
-6/ utils/exportfs/exportfs.c:main,exportall
-
- support/export/rmtab.c
- only mayexport on newly created entries, don't set xtabent at all
-
-7/ support/include/nfslib.h
-
- add #define _PATH_PROC_EXPORTS to be /proc/fs/nds/exports
-
-8/ support/export/xtab.c
-
- xtab_mount_read loads data from _PATH_PROC_EXPORTS if it exists,
- else from xtab
-
-
-9/ support/export/xtab.c
-
- xtab_mount_read now sets m_exported, and NOT
- xtabent and mayexport
-
- removed the append arguement from xtab_write as it was
- never used.
-
- added is_export flag to xtab_write similar to xtab_read
- if is_export, only write entries with m_xtabent or m_addxtab
- if !is_export, only write entries with m_exported
-
-10/ support/export/export.c::export_allowed_internal
-
- added test for exp->m_mayexport, as the export tree
- may have entries that are no longer allowed to be exported,
- and so shouldn't caused deduced exported by rmtab_read
-
-11/ utils/exportfs/exportfs.c::main
- error checking of flags.
-
-12/ utils/exportfs/exportfs.c
-
- total rewrite of export and unexport logic.
- We now:
- - build an exportslist of valid exports, based on
- current etab file and arguments,
- - read rmtab to instantiate relevant wild card entries
- - read etab to find out what is currently exported
- - synchronise intention with reality
- - write out etab and xtab
-
-13/ various
- discard the m_addxtab flag
- add m_changed flag so we know what to report in exportfs
-
-14/ utils/mountd/auth.c:auth_authenticate
-
- the value returned by gethostbyaddr was trusted.
-
- It now follows this with a call to gethostbyname
- and checks that the address is in the list.
-
-15/ support/export/nfsctl.c::cltsetup,expsetup
-
- force client names to lowercase as kernel is
- sensitive to case
-
-16/ quietened a few compiler warnings
-
-17/ support/export/client:client_lookup
-
- look for pre-existing client with same name before creating
- a new one.
-
-18/ support/include/exportfs.h
-
- The ordering of the MCL_* enum was:
- ANONYMOUS, FQDN, SUBNETWORK, WILDCARD, NETGROUP
-
- I moved ANONYMOUS to the end.
-
- The ordering is significant when an export entry is being searched for to
- match a given address. There are two problems with ANONYMOUS being first.
-
- 1/ if a directory is exported rw to a couple of hosts and ro to everyone else,
- then the ro case will always be found first and the privileged hosts won't get
- their privilege
- 2/ When mountd gets a request to mount an ANONYMOUSly exported tree, it creates a FQDN
- export entry for the specific host, and writes it to xtab.
- When another request comes from the same host, the ANONYMOUS entry is found again,
- before the new FQDN entry, so it creates another FQDN entry and writes it to xtab
- again. If causes bloat in xtab.
-
- Putting ANONYMOUS at the end reflects it's nature as a catch-all
-
-19/ utils/exportfs/exportfs.man
- many updates to the man page to reflect changes to the code
-
------------------------
-
-
-
-TODO:
-
-- allow exportfs to modify rmtab file
-- make sure kernel never gets two clients with same IP address
- - possible kernel should reject
- - needs to be some way to lookup client in kernel by IP address
-- maybe get kernel to do case-insensitive comparisons on client names
-- remove unused clients from kernel
-
-- change etab to xtab and xtab to xtab.active
-
-- timestamp and/or statd-stamp in rmtab for removing old entries.
-
-Mon Oct 18 11:48:07 1999 H.J. Lu <hjl@lucon.org>
-
- * linux-nfs: New directory.
- * linux-nfs/ChangeLog: Moved from ..
- * linux-nfs/INSTALL: Likewise.
- * linux-nfs/KNOWNBUGS: Likewise.
- * linux-nfs/NEW: Likewise.
- * linux-nfs/README: Likewise.
- * linux-nfs/THANKS: Likewise.
- * linux-nfs/TODO: Likewise.
-
- * Starting from knfsd 1.4.7.
+commit 3030aded70e616cdeac4223785754b86a33b587d
+Author: Eberhard Kuemmerle <e.kuemmerle@fz-juelich.de>
+Date: Mon Sep 27 13:24:48 2010 -0400
+
+ Added the -p <principal> flag to the svcgssd manpage
+
+ Signed-off-by: Eberhard Kuemmerle <E.Kuemmerle@fz-juelich.de>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6cc96cada639a823961d5d8a136cbcdc8b8952b8
+Author: Eberhard Kuemmerle <e.kuemmerle@fz-juelich.de>
+Date: Mon Sep 27 13:16:23 2010 -0400
+
+ svcgssd: Adding a <-p principal> flag
+
+ Allow the principal that is used to get the machines creds definable
+ on the command like with the new '-p <principal>'. This is useful
+ in cluster environments.
+
+ Signed-off-by: Eberhard Kuemmerle <E.Kuemmerle@fz-juelich.de>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 837796686ad8f9178c7b6855ada728a53ae511e3
+Author: David Lecorfe <dlecorfec@gmail.com>
+Date: Mon Sep 27 13:29:31 2010 -0400
+
+ nfs-iostat.py: don't wait for an extra interval when given a count
+
+ If I invoke the tool with an interval of 10 and a count of 2, it will:
+ - show the summary
+ - sleep 10s
+ - show the stats for the last 10s
+ - sleep 10s
+ - exit
+
+ Signed-off-by: David Lecorfe <dlecorfec@gmail.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit eaa588a137b0b2f38aa9e9c542635a222e51ee48
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 10:16:34 2010 -0400
+
+ nfsd: Enable IPv6 support in rpc.nfsd again.
+
+ Revert commit b2a3cd59 so that rpc.nfsd can create IPv6 listener
+ sockets for the kernel.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit c18e9a780f376b868e62b75abe64b0fd9915ada5
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 10:14:34 2010 -0400
+
+ mountd: Update mountd/exportfs man pages to reflect IPv6 changes
+
+ Document IPv6 support in rpc.mountd and exportfs, and clarify existing
+ language in the man page.
+
+ Clean up: Use bold consistently for program names, and italics
+ consistently for file names. Use "rpc.mountd" consistently as the
+ name of the mountd daemon.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 7e454e03131f56872639fe7b62b726479b22c087
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 10:13:39 2010 -0400
+
+ mountd: Use MNT status values instead of NFSERR
+
+ Clean up: The MNT protocol has its own enum type defining error
+ status values. While the values can be the same as the NFSERR enum
+ type on some systems, it's not guaranteed to be true everywhere.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit ef32b76ae37926faacaf4b8121eba638567c4692
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 10:11:18 2010 -0400
+
+ mountd: Fix up version and usage messages
+
+ Clean up: rpc.mountd is no longer known as kmountd. Use the program's
+ basename rather than the full pathname for the usage message. Display
+ a version message at start up similar to statd's.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 2c15cf2963367dee7106964c38ab7b1e30ba347d
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 10:09:49 2010 -0400
+
+ mountd: Unregister mountd if my_svc_run() returns
+
+ Fix a long standing bug: when my_svc_run() returns, mountd should
+ unregister itself with the local rpcbind so that it can subsequently
+ start cleanly.
+
+ Log a more helpful error message in this case.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit b551b1fd0052de9b8c674b30c39d9f2a1e9d79cc
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 10:09:10 2010 -0400
+
+ mountd: Support TI-RPC mountd listener
+
+ If TI-RPC is available, use it to create mountd's svc listener. If
+ not, use the old function, rpc_init(), to create mountd's listener.
+
+ IPv6 can be supported if TI-RPC is available. In this case,
+ /etc/netconfig is searched to determine which transports to advertise.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit c5571da8e92f87fc9ec6e8aa8075c69497361c87
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 10:06:35 2010 -0400
+
+ mountd: Make NFS version checks more strict
+
+ Ensure users and programmers specify NFS version numbers correctly.
+ This also makes the next patch more clean.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 05f93b531d59df6e976d9b40c97b51546524040a
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Sep 27 09:50:11 2010 -0400
+
+ nfs-utils: Fix source code character encoding
+
+ Minor clean up.
+
+ Most modern Linux distributions set UTF-8 locales. Standardize the
+ character encoding of source files on UTF-8, to squelch vim com-
+ plaints.
+
+ I probably missed a few spots.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 5341111d4b34bcd1b1263d5ed215cbe375aa9314
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Sep 27 09:35:26 2010 -0400
+
+ libnfs.a: Remove support/nfs/fstab.c
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 72ae199db4be7bf0092e15adaa8a43ce2434bf9f
+Author: Jeff Layton <jlayton@redhat.com>
+Date: Thu Sep 16 14:34:39 2010 -0400
+
+ rpc.nfsd: mount up nfsdfs is it doesn't appear to be mounted yet
+
+ There's a bit of a chicken and egg problem when nfsd is run the first
+ time. On Fedora/RHEL at least, /proc/fs/nfsd is mounted up whenever nfsd
+ is plugged in via a modprobe.conf "install" directive.
+
+ If someone runs rpc.nfsd without plugging in nfsd.ko first,
+ /proc/fs/nfsd won't be mounted and rpc.nfsd will end up using the legacy
+ nfsctl interface. After that, nfsd will be plugged in and subsequent
+ rpc.nfsd invocations will use that instead.
+
+ This is a problem as some nfsd command-line options are ignored when the
+ legacy interface is used. It'll also be a problem for people who want
+ IPv6 enabled servers. The upshot is that we really don't want to use the
+ legacy interface unless there is no other option.
+
+ To avoid this situation, have rpc.nfsd check to see if the "threads"
+ file is already present. If it's not, then make an attempt to mount
+ /proc/fs/nfsd. This is a "best-effort" sort of thing, however so we
+ just ignore the return code from the mount attempt and fall back to
+ using nfsctl() if it fails.
+
+ Signed-off-by: Jeff Layton <jlayton@redhat.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 63afb96b9d36e72782ad25ca496896029a9d9061
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 14:25:52 2010 -0400
+
+ libexport.a: Enable IPv6 support in hostname.c
+
+ If --enable-ipv6 is specified when building nfs-utils, libexport's
+ host_foo() helpers can now return both IPv4 and IPv6 addresses.
+
+ This means IPv6 presentation addresses and IPv6 DNS resolution
+ results are handled properly in the mountd cache and /etc/exports,
+ but does not yet enable IPv6 mountd listeners.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit d901e329e380a2adc22783b1b241e414aa24cf51
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 14:21:48 2010 -0400
+
+ mountd: Ensure cache downcall can handle IPv6 addresses
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 1ba28ec59f39de0bc4953b42556d847efbb508eb
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 14:21:08 2010 -0400
+
+ mountd: Handle IPv6 addresses in kernel auth_unix_ip upcalls
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit ffe8c9a084fec4fdd3acfcf4b36fbe434d297b82
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 14:19:19 2010 -0400
+
+ mountd: clean up cache API
+
+ Clean up: Squelch compiler warnings and document public parts of
+ cache API.
+
+ cache.c: At top level:
+ cache.c:67: warning: no previous prototype for auth_unix_ip
+ cache.c:123: warning: no previous prototype for auth_unix_gid
+ cache.c:217: warning: no previous prototype for get_uuid
+ cache.c:247: warning: no previous prototype for uuid_by_path
+ cache.c:326: warning: no previous prototype for nfsd_fh
+ cache.c:745: warning: no previous prototype for nfsd_export
+ cache.c:820: warning: no previous prototype for cache_open
+ cache.c:832: warning: no previous prototype for cache_set_fd
+ cache.c:841: warning: no previous prototype for
+ cache_process_req
+ cache.c:921: warning: no previous prototype for cache_export
+ cache.c:953: warning: no previous prototype for
+ cache_get_filehandle
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6f189dae5eb38800c8ae3e2d5c098d11fb44d7d5
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 14:17:08 2010 -0400
+
+ exportfs: Enable IPv6 support in matchhostname()
+
+ To gain IPv6 support in matchhostname(), simply replace the socket
+ address comparison helpers with the generic versions that can handle
+ IPv4 and IPv6.
+
+ host_addrinfo() (called by matchhostname()) returns IPv6 addresses
+ only if IPv6 support is enabled.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 10a6b17d3588647ab5e1ee81ba40f1ce12a5184d
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 13:54:21 2010 -0400
+
+ mountd: Support IPv6 in mountlist_list()
+
+ Replace inet_aton(3) and gethostbyaddr(3) calls in mountlist_list()
+ with calls to the new host_foo() DNS helpers.
+
+ The new functions will support IPv6 without additional changes, once
+ IPv6 is enabled in the generic hostname helpers.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 76209cdbe989ee4cdfbf489f2695ac779457e763
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 13:51:51 2010 -0400
+
+ mountd: Handle memory exhaustion in mountlist_list()
+
+ I'm about to replace inet_aton(3)/gethostbyaddr(3) with
+ host_pton()/host_canonname() in mountlist_list().
+
+ Since host_canonname() returns a string allocated with strdup(3)
+ instead of xstrdup(), mountlist_list() must now deal with memory
+ exhaustion properly.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit a8348c2c48d45f991995707fa22a2fa441aaa907
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 13:48:38 2010 -0400
+
+ mountd: Add mountlist_freeall()
+
+ I'm about to add a second bit of logic that needs to free all
+ mountlist records, so introduce a helper for freeing them.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 454aea5dad83ca75f3154ff12ecff39169703e69
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 13:46:26 2010 -0400
+
+ mountd: support IPv6 in mountlist_del_all()
+
+ Replace IPv4-specific code in the mountlist_del_all() path with code
+ that is address family agnostic.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 4210d6f0c9cad57907877bf1e5d32ebe4a27bf17
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 13:44:02 2010 -0400
+
+ mountd: Support IPv6 in mountd's svc routines
+
+ Replace IPv4-specific code with use of our generic hostname helpers
+ in the routines that handle incoming MNT RPC requests.
+
+ These functions will support IPv6 without additional changes, once
+ IPv6 is enabled in the generic hostname helpers.
+
+ As part of this update, I've modified all of mountd's _svc routines
+ to use a debug message format that is consistent with statd. It may
+ be overkill for some of these; if so we can pull them out later.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit f35762f959cc5f29ad7817f8b7968e3792132651
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 13:39:39 2010 -0400
+
+ mountd: add IPv6 support in auth_authenticate()
+
+ Make the entire auth_authenticate() code path address-family agnostic.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 29b8a7700129d9768e3e2d94c81eec9f84ba8691
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 09:32:52 2010 -0400
+
+ libnfs.a: Fix API for getfh() & friends
+
+ This is more of a clean-up than a behavioral change.
+
+ POSIX requires that a "struct sockaddr" is the same size as a "struct
+ sockaddr_in". Therefore, a variable or field of type "struct sockaddr"
+ cannot contain an AF_INET6 address. However, "struct sockaddr *" is
+ often used to reference a generic (ie non-address family specific)
+ socket address, generating some confusion about this.
+
+ The nfsctl_arg struct uses a struct sockaddr (not a pointer) to pass
+ the client's IP address to the kernel. This means the legacy nfsctl()
+ kernel API can never support IPv6. Fortunately for us, this legacy
+ interface was replaced by a text-based cache interface a few years
+ back. We don't need to support non-AF_INET addresses here.
+
+ The getfh() functions in nfs-utils provide a handy C API for the
+ kernel's nfsctl interface. The getfh() functions still take a struct
+ sockaddr *, though, and that can imply that a non-IPv4 address can be
+ passed via this API. To make it abundantly clear that only IPv4
+ addresses can be used with this interface, change the synopses of
+ getfh() and friends to take a struct sockaddr_in * instead of a struct
+ sockaddr * .
+
+ This makes these functions conform with other places in mountd and
+ exportfs that already grok the difference between a struct sockaddr
+ and a struct sockaddr_in.
+
+ While we're here...
+
+ Introduce some nice documenting comments for the get_fh() functions,
+ and...
+
+ Since mountd will support IPv6 in the near future, assert that the
+ family of client addresses passed to this API is indeed AF_INET, in
+ order to prevent non-AF_INET addresses from ever being passed to the
+ legacy nfsctl() interface.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit a88c279992f4b63e3dcaac9930e300fd4bb03dd7
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 07:28:18 2010 -0400
+
+ mount.nfs: Don't do anything fancy if this is a remount
+
+ We don't want to append "vers=4" or perform any negotiation if the
+ "remount" mount option was specified. It will just end in tears.
+
+ This attempts to address
+
+ https://qa.mandriva.com/show_bug.cgi?id=60311
+
+ and
+
+ https://bugzilla.linux-nfs.org/show_bug.cgi?id=187
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6f73daf5a5711dc0620f7d43c61c4fd57c0d3f80
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 16 07:26:07 2010 -0400
+
+ mount.nfs: Refactor mount version and protocol autonegotiation
+
+ Clean up.
+
+ I'm beginning to agree with Bruce and Steve's assessment that the
+ fallthrough switch case in nfs_try_mount() is more difficult to read
+ and understand than it needs to be. The logic that manages
+ negotiating NFS version and protocol settings is getting more complex
+ over time anyway.
+
+ So let's split the autonegotiation piece out of nfs_try_mount().
+
+ We can reduce indenting, and use cleaner switch-based logic. Also,
+ adding more comments can only help.
+
+ Neil also suggested replacing the pre-call "errno = 0" trick. The
+ lower-level functions may try to mount several times (given a list of
+ addresses to try). errno could be set by any of those. The mount
+ request will succeed at some point, and "success" is returned, but
+ errno is still set to some non-zero value.
+
+ The kernel version check in nfs_try_mount() is more or less loop
+ invariant: it's impossible for the result of that test to change
+ between retries. So we should be able to safely move it to the logic
+ that sets the initial value of mi->version.
+
+ This patch is not supposed to cause a behavioral change.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 64bf8db367fd43e80dd135b460afc157808647fa
+Author: Bian Naimeng <biannm@cn.fujitsu.com>
+Date: Thu Sep 16 07:12:47 2010 -0400
+
+ rpc.idmapd: Type of idmap client should be defined by ic_id not ic_clid.
+
+ The type of idmap_client is defined by idmap_client.ic_id for nfs,
+ so nfsd should have the same style.
+
+ Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 7f77ef90ad52eced1552efc2242e063aa4501ddc
+Author: Benny Halevy <bhalevy@panasas.com>
+Date: Tue Jul 20 08:40:34 2010 +0300
+
+ nfsstat: add release_lockowner to client stats
+
+ Signed-off-by: Benny Halevy <bhalevy@panasas.com>
+
+commit bf6da0a22d971364dae25ec2f62c01fbd2960f07
+Author: Steve Dickson <steved@redhat.com>
+Date: Thu Sep 9 10:47:32 2010 -0400
+
+ Cleaned up a warning from commit 44f09b7
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 911630538580cdaaee1c37cdf1a8b35b8ed6b23f
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed Sep 8 13:28:24 2010 -0400
+
+ mount.nfs: Prepare way for "vers=4,rdma" mounts
+
+ At some point, when the kernel starts to support "vers=4,rdma" mounts,
+ we will want the mount.nfs command to pass "vers=4,rdma" mounts
+ instead of rejecting them.
+
+ Assuming that the kernel will reject these today with EPROTONOSUPPORT,
+ that would cause the version fallback logic to go to "vers=3,rdma"
+ automatically. So the extra check we have now is not needed anyway.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit f99d1b8e8768ab96b51bed52f21a626ac9a4797f
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed Sep 8 13:27:31 2010 -0400
+
+ mount.nfs: Support an "rdma" mount option
+
+ The kernel NFS client's mount option parser recognizes a stand-alone
+ "rdma" mount option, similar to the legacy "udp" and "tcp" options.
+
+ The mount.nfs command text-based mount option parser used to pass
+ "rdma" straight to the kernel, but since we've started handling MNT in
+ the kernel instead of in user space, "rdma" on the command line has
+ not worked.
+
+ Until now, no-one has noticed, especially since an "rdma" mount option
+ isn't documented in nfs(5).
+
+ Support "rdma" in mount.nfs command, and document it in nfs(5).
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 44f09b7c4c79ca184a29138078c68a4db7aeb85a
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed Sep 8 13:26:34 2010 -0400
+
+ mount.nfs: Use nfs_nfs_protocol() for checking for proto=rdma
+
+ Clean up: Now that nfs_get_proto() can recognize "rdma" we can re-use
+ nfs_nfs_protocol() instead of ad hoc checks for "proto=rdma".
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit a77ca5c6a79486dc8c5a4c327fe5310f5d497766
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed Sep 8 13:25:56 2010 -0400
+
+ getport: Recognize "rdma" and "rdma6" netid
+
+ The mount.nfs command must recognize the values of "rdma" and "rdma6"
+ with the "proto=" mount option. Typically the mount.nfs command
+ relies on libtirpc or getprotobyname(3) to recognize netids and
+ translate them to protocol numbers.
+
+ RFCs 5665 and 5666 define the "rdma" and "rdma6" netids. IANA defines
+ a specific port number for NFS over RDMA (20049), but has not provided
+ a protocol name and number for RDMA transports, and is not expected
+ to. The best we can do is translate these by hand, as needed, to get
+ RDMA mount requests to the kernel without erroring out.
+
+ Only the forward translation is needed until such time that "rdma" and
+ "rdma6" start to appear in rpcbind registries. For now, the version
+ and transport negotiation logic is skipped, avoiding rpcbind queries
+ for RDMA mounts.
+
+ Note: As of kernel 2.6.36, the kernel's NFS over RDMA transport
+ capability does not support IPv6.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 57f36cd692c56b3b62705b5fafef4c25561a39ff
+Author: Guillaume Rousse <Guillaume.Rousse@inria.fr>
+Date: Thu Sep 9 10:33:47 2010 -0400
+
+ Clarification about options supported by different versions
+
+ Signed-off-by: Guillaume Rousse <Guillaume.Rousse@inria.fr>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit b7df3370555877598d9f2ef49fae2ad4458e9f72
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Sep 9 10:27:17 2010 -0400
+
+ libexport.a: Refactor init_netmask()
+
+ Instead of a single function that can handle both AF_INET and AF_INET6
+ addresses, two separate functions might be cleaner.
+
+ The original plan was to keep code redundancy at a minimum, but the
+ resulting code was cumbersome at best. I think I've traded a little
+ extra code for something that will be much easier to read, understand,
+ and maintain.
+
+ I've also eliminated the "#if / #endif" instances inside the functions.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 60abb9889cea52022adf9c8bb946e9d19d79f9ed
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 31 15:31:57 2010 -0400
+
+ libexport.a: IPv6 support in client_check()
+
+ Introduce support for IPv6 in client_check()'s helpers. The local
+ addrs_match() twins are no longer needed since we can use
+ nfs_compare_addrs() now.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 965b15b855c0c621462256b0ab687fc32644255a
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 31 15:30:14 2010 -0400
+
+ libexport.a: IPv6 support for client_init_subnet()
+
+ To parse and store an IPv6 host or subnet address, init_netmask()
+ needs to handle 128 bit subnet masks.
+
+ Unfortunately what once was a pretty simple little function has grown
+ much larger. This logic must now not only parse IPv6 addresses
+ correctly, but must also distinguish between IPv4 and IPv6.
+
+ To avoid code duplication, I'm "bending" the cardinal rule of not
+ using "#ifdef" inside functions.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 2824097496f6b154befbf3b3d15dacf237b07f83
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 31 15:29:02 2010 -0400
+
+ libexport.a: Prepare init_subnetwork() for IPv6 support
+
+ Retire the slash32 logic in inet_netmask() in favor of a more generic
+ netmask parser that can support IPv6 addresses.
+
+ If an invalid IP address string is given to inet_addr(3), it returns
+ INADDR_NONE, which is actually a "valid" address (255.255.255.255).
+ We're none the wiser to the substitution until something breaks later.
+
+ This patch provides better sanity checking of the parsed address, now
+ that such an error can be reported to client_init()'s callers.
+ We can also check the prefixlen value a little more carefully as well.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 03fc34b23c2bff48f54c2d889d7851a31fb64a3d
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 31 15:27:19 2010 -0400
+
+ libexport.a: Use host helper to parse address in client_init()
+
+ Take the first step towards making it possible to parse either IPv4 or
+ IPv6 addresses in client_init(). It won't handle IPv6 until
+ host_pton() has IPv6 support enabled, and it still doesn't deal with
+ IPv6 netmasks yet.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 502edf1df5e727cf88b19b634f60392652f35ddc
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 31 15:25:35 2010 -0400
+
+ libexport.a: Prepare to recognize IPv6 addresses in client_gettype()
+
+ The current open-coded parsing logic in client_gettype() will be hard
+ to modify to recognize IPv6 addresses. Use a more generic mechanism
+ for detecting IP presentation addresses.
+
+ IPv6 will be enabled automatically in client_gettype() when host_pton()
+ is changed to support IPv6 addresses.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 26fd34002585e6a5aa09204b0b01d836fa83dcf3
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 24 07:19:34 2010 -0400
+
+ exportfs: Use xlog() for error reporting
+
+ exportfs already invokes xlog_open() because libexport.a uses xlog()
+ exclusively for error reporting and debugging messages. If we can
+ use xlog() throughout exportfs itself, that enables xlog debugging
+ messages everywhere in the code path.
+
+ In addition, use xlog() instead of fprintf(stderr) for reporting
+ errors in exportfs.c, to be consistent with libexport.a and other
+ components of nfs-utils.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6d7babe6afae068e8a1054f785785d374788f5ee
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 24 07:18:04 2010 -0400
+
+ exportfs: exportfs.c no longer needs #include "xmalloc.h"
+
+ Clean up: No calls to xmalloc() or xstrdup() here. No need for the
+ double #include of xmalloc.h.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit e22f5a9c8e53a2373e8a939771e964ad315cdc5f
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 24 07:16:10 2010 -0400
+
+ statd: statd fails to monitor if no reverse mapping of mon_name exists
+
+ Commit 8ce130c4 switched in the new statd_canonical_name() function
+ that constructs a "unique" name statd can use to uniquely identify a
+ monitor record.
+
+ The legacy statd would monitor a client that sent an IP address with
+ no reverse map as its caller_name. To remain bug-for-bug compatible,
+ allow this case in the new statd.
+
+ This shouldn't be a problem: statd_canonical_name() needs to create
+ a unique name for the monitored host so it can keep track of monitor
+ requests from the same remote. The IP address itself should work as
+ well as the host's canonical name, in case there is no reverse
+ mapping.
+
+ We still enforce the requirement that a mon_name that is a DNS name
+ must have a forward map to an IP address.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 1bb84a09ff58d1314826945db2f3f1f63015e263
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 24 07:13:54 2010 -0400
+
+ libexport: Fix IP address check in check_netgroup()
+
+ Neil Brown reports that recent changes to replace
+ gethostby{addr,name}(3) with get{addr,info}name(3) may have
+ inadvertently broken netgroup support.
+
+ There used to be a gethostbyaddr(3) call in the third paragraph in
+ check_netgroup(). The reason for that gethostbyaddr(3) call was that
+ the first innetgr(3) call has already confirmed that hname is not a
+ member of the netgroup. We also need to confirm that, if hname
+ happens to be an IP address, the hostname bound to that IP address is
+ not a member of the netgroup, either.
+
+ Fix this by restoring appropriate address to hostname mapping of hname
+ before retrying the innetgr(3) call.
+
+ See http://marc.info/?l=linux-nfs&m=128084830214653&w=2 .
+
+ Introduced by commit 0509d3428f523776ddd9d6e9fa318587d3ec7d84.
+
+ Reviewed-by: Neil Brown <neilb@suse.de>
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit abdc32b6af6f38a741a481aeefb5623916152498
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Aug 24 07:06:14 2010 -0400
+
+ bexport: Add a common exit label to check_netgroup()
+
+ check_netgroup() is going to be changed to free dynamically
+ allocated resources before it returns, so a common
+ exit point is needed.
+
+ Reviewed-by: Neil Brown <neilb@suse.de>
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 396aac50f5addea2f4d62c25600ca68788a56d97
+Author: Guillaume Rousse <Guillaume.Rousse@inria.fr>
+Date: Tue Aug 17 17:47:38 2010 -0400
+
+ Fix the description of nfsversion mount option in the man nfs page
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit e2003650c68cf47806fb24f7d88fae5524b70aab
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 12:12:52 2010 -0400
+
+ Remove warnings from nfsctl.c
+
+ nfsctl.c: In function 'expsetup':
+ nfsctl.c:112: warning: signed and unsigned type in conditional expression
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 1e472b3476cc6d7b95573b7d630d0fc51bebadf3
+Author: Steve Dickson <steved@redhat.com>
+Date: Wed Aug 4 10:48:17 2010 -0400
+
+ Removed warnings from mountd.c
+
+ mountd.c: In function 'mount_null_1_svc':
+ mountd.c:195: warning: unused parameter 'rqstp'
+ mountd.c:195: warning: unused parameter 'argp'
+ mountd.c:195: warning: unused parameter 'resp'
+ mountd.c: In function 'mount_dump_1_svc':
+ mountd.c:213: warning: unused parameter 'argp'
+ mountd.c: In function 'mount_umnt_1_svc':
+ mountd.c:224: warning: unused parameter 'resp'
+ mountd.c: In function 'mount_umntall_1_svc':
+ mountd.c:248: warning: unused parameter 'argp'
+ mountd.c:248: warning: unused parameter 'resp'
+ mountd.c: In function 'mount_export_1_svc':
+ mountd.c:258: warning: unused parameter 'argp'
+ mountd.c: In function 'mount_exportall_1_svc':
+ mountd.c:269: warning: unused parameter 'argp'
+ mountd.c: In function 'mount_dump_1_svc':
+ mountd.c:216: warning: unused parameter 'argp'
+ mountd.c: In function 'mount_umnt_1_svc':
+ mountd.c:227: warning: unused parameter 'resp'
+ mountd.c: In function 'mount_umntall_1_svc':
+ mountd.c:251: warning: unused parameter 'argp'
+ mountd.c:251: warning: unused parameter 'resp'
+ mountd.c: In function 'mount_export_1_svc':
+ mountd.c:261: warning: unused parameter 'argp'
+ mountd.c: In function 'mount_exportall_1_svc':
+ mountd.c:272: warning: unused parameter 'argp'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 14e6ec262e58e962c2d7e9161ca9c56529de3170
+Author: Steve Dickson <steved@redhat.com>
+Date: Wed Aug 4 10:41:18 2010 -0400
+
+ Removed warnings from idmapd.c
+
+ idmapd.c:120: warning: missing initializer
+ idmapd.c:120: warning: (near initialization for 'nfsd_ic[0].ic_event')
+ idmapd.c:121: warning: missing initializer
+ idmapd.c:121: warning: (near initialization for 'nfsd_ic[1].ic_event')
+ idmapd.c: In function 'flush_nfsd_cache':
+ idmapd.c:173: warning: comparison between signed and unsigned integer expressions
+ idmapd.c: In function 'dirscancb':
+ idmapd.c:384: warning: unused parameter 'fd'
+ idmapd.c:384: warning: unused parameter 'which'
+ idmapd.c: In function 'svrreopen':
+ idmapd.c:468: warning: unused parameter 'fd'
+ idmapd.c:468: warning: unused parameter 'which'
+ idmapd.c:468: warning: unused parameter 'data'
+ idmapd.c: In function 'clntscancb':
+ idmapd.c:474: warning: unused parameter 'fd'
+ idmapd.c:474: warning: unused parameter 'which'
+ idmapd.c: In function 'nfsdcb':
+ idmapd.c:488: warning: unused parameter 'fd'
+ idmapd.c: In function 'nfscb':
+ idmapd.c:663: warning: unused parameter 'fd'
+ idmapd.c: In function 'validateascii':
+ idmapd.c:850: warning: comparison between signed and unsigned integer expressions
+ idmapd.c:858: warning: comparison between signed and unsigned integer expressions
+ idmapd.c: In function 'getfield':
+ idmapd.c:916: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 2ccfd2d5f390bcac7a44f8887cd3f15df1966e0f
+Author: Steve Dickson <steved@redhat.com>
+Date: Wed Aug 4 10:29:28 2010 -0400
+
+ Removed warnings from configfile.c
+
+ configfile.c:195: warning: 'inline' is not at beginning of declaration
+ configfile.c:232: warning: 'inline' is not at beginning of declaration
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit bc8fdd5ebcabe57cacd382673ca9e4a79ff7b18e
+Author: Steve Dickson <steved@redhat.com>
+Date: Wed Aug 4 10:26:13 2010 -0400
+
+ Removed warnings from svcgssd_proc.c
+
+ svcgssd_proc.c: In function 'send_response':
+ svcgssd_proc.c:135: warning: unused parameter 'f'
+ svcgssd_proc.c: In function 'handle_nullreq':
+ svcgssd_proc.c:434: warning: comparison of unsigned expression < 0 is always false
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit be5b2ed57b0e0a3da91f4ec785718302d0351199
+Author: Steve Dickson <steved@redhat.com>
+Date: Wed Aug 4 10:22:13 2010 -0400
+
+ Removed warnings from network.c
+
+ network.c: In function 'nfs_verify_family':
+ network.c:1366: warning: unused parameter 'family'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6b8d7c05fe738a4c7295754b4be552c703024f58
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 18:43:46 2010 -0400
+
+ Removed warnings from nfs4mount.c
+
+ nfs4mount.c: In function 'fill_ipv4_sockaddr':
+ nfs4mount.c:149: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit cf2fd4869fdb77741bca9e3f713af49b889661b3
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 18:40:31 2010 -0400
+
+ Removed warnings from nfsmount.c
+
+ nfsmount.c: In function 'nfsmount':
+ nfsmount.c:513: warning: missing initializer
+ nfsmount.c:513: warning: (near initialization for 'mnt_server.saddr')
+ nfsmount.c:514: warning: missing initializer
+ nfsmount.c:514: warning: (near initialization for 'nfs_server.saddr')
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 45a73911fff657942ec67317d000badb8e2c5282
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 18:22:32 2010 -0400
+
+ Removed warnings from svcgssd.c
+
+ svcgssd.c: In function 'sig_hup':
+ svcgssd.c:160: warning: unused parameter 'signal'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit b8ba21cedc6aac3b2847217caf55885bb1a74805
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 18:13:45 2010 -0400
+
+ Removed warnings from gssd_proc.c
+
+ gssd_proc.c: In function 'create_auth_rpc_client':
+ gssd_proc.c:939: warning: comparison between signed and unsigned integer expressions
+ gssd_proc.c:939: warning: comparison between signed and unsigned integer expressions
+ gssd_proc.c: In function 'handle_krb5_upcall':
+ gssd_proc.c:1164: warning: comparison between signed and unsigned integer expressions
+ gssd_proc.c: In function 'handle_spkm3_upcall':
+ gssd_proc.c:1178: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit f4321ac3466aa9d4c4e11ba232f1ff9bea561288
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 18:08:13 2010 -0400
+
+ Removed warnings from krb5_util.c
+
+ krb5_util.c: In function 'realm_and_service_match':
+ krb5_util.c:617: warning: unused parameter 'context'
+ krb5_util.c: In function 'limit_krb5_enctypes':
+ krb5_util.c:1275: warning: unused parameter 'uid'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit f89b109c04a8eab81bfa8b8fcdc7692673e13e49
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 17:53:47 2010 -0400
+
+ Removed warnings from gssd_main_loop.c
+
+ gssd_main_loop.c: In function 'dir_notify_handler':
+ gssd_main_loop.c:64: warning: unused parameter 'sig'
+ gssd_main_loop.c:64: warning: unused parameter 'si'
+ gssd_main_loop.c:64: warning: unused parameter 'data'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit d2c329ba4b7ccdea76bcc857a73206eab68428f8
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 17:45:17 2010 -0400
+
+ Removed warnings from gssd.c
+
+ gssd.c: In function 'sig_hup':
+ gssd.c:78: warning: unused parameter 'signal'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 8a72ac3280ce8f9d0f48383d47dd06c80567bc09
+Author: Steve Dickson <steved@redhat.com>
+Date: Tue Jul 20 17:19:20 2010 -0400
+
+ Removed warnings from atomicio.c
+
+ atomicio.c: In function 'atomicio':
+ atomicio.c:48: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 14becdb7bc23f075f786325f7e953c2f928fe385
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 14:54:51 2010 -0400
+
+ Removed warnings from nfsstat.c
+
+ nfsstat.c: In function 'print_callstats':
+ nfsstat.c:797: warning: comparison between signed and unsigned integer
+ expressions
+ nfsstat.c:801: warning: comparison between signed and unsigned integer
+ expressions
+ nfsstat.c:802: warning: comparison between signed and unsigned integer
+ expressions
+ nfsstat.c:805: warning: comparison between signed and unsigned integer
+ expressions
+
+ nfsstat.c: In function 'print_callstats_list':
+ nfsstat.c:821: warning: comparison between signed and unsigned integer
+ expressions
+ nfsstat.c:828: warning: comparison between signed and unsigned integer
+ expressions
+
+ nfsstat.c: In function 'unpause':
+ nfsstat.c:1111: warning: unused parameter 'sig'
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit b594ee2b2a1b9c0c5823a7af279488f113f91be4
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 14:48:37 2010 -0400
+
+ Removed warnings from nfssvc.c
+
+ nfssvc.c:184: warning: comparison between signed and unsigned integer expressions
+ nfssvc.c: In function 'nfssvc_setvers':
+ nfssvc.c:254: warning: comparison between signed and unsigned integer expressions
+ nfssvc.c: In function 'nfssvc_threads':
+ nfssvc.c:280: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 7b331fb9d24a71242a6c0a45a06c49174b552c64
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 14:43:26 2010 -0400
+
+ Removed warnings from cache.c
+
+ cache.c:812: warning: missing initializer
+ cache.c:812: warning: (near initialization for 'cachelist[0].f')
+ cache.c:813: warning: missing initializer
+ cache.c:813: warning: (near initialization for 'cachelist[1].f')
+ cache.c:814: warning: missing initializer
+ cache.c:814: warning: (near initialization for 'cachelist[2].f')
+ cache.c:815: warning: missing initializer
+ cache.c:815: warning: (near initialization for 'cachelist[3].f')
+ cache.c:816: warning: missing initializer
+ cache.c:816: warning: (near initialization for 'cachelist[4].f')
+ cache.c: In function 'cache_export_ent':
+ cache.c:887: warning: comparison between signed and unsigned integer expressions
+ cache.c:907: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9d5eaa2e939723c47649f0f112b43cc8ff414740
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 13:07:00 2010 -0400
+
+ Removed warnings from fsloc.c
+
+ fsloc.c: In function 'replicas_lookup':
+ fsloc.c:149: warning: unused parameter 'key'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit e10000740fc4c323dbc8d501d7c0caeae12c19b5
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 12:39:52 2010 -0400
+
+ Removed warnings from conffile.c
+
+ conffile.c: In function 'conf_parse_line':
+ conffile.c:301: warning: comparison between signed and unsigned integer expressions
+
+ conffile.c: In function 'conf_load_defaults':
+ conffile.c:356: warning: unused parameter 'tr'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 8810c9dd5b66a097a235e6eabd399739a44df63e
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 12:34:14 2010 -0400
+
+ Remove warnings from nfs_mntent.c
+
+ nfs_mntent.c: In function 'mangle':
+ nfs_mntent.c:36: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 1ca569633e14c844e32d8e5e3a1c54be01a8b633
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 12:31:48 2010 -0400
+
+ emove warnings from cacheio.c
+
+ cacheio.c: In function 'cache_flush':
+ cacheio.c:352: warning: comparison between signed and unsigned integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 0cdfd35cecc17eb1927f15d33205e43ec66675f2
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 12:28:09 2010 -0400
+
+ Remove warnings from svc_socket.c
+
+ svc_socket.c: In function 'svcudp_socket':
+ svc_socket.c:160: warning: unused parameter 'reuse'
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9c99b4633b185452614eb6c5630a30b30626a838
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 12:17:24 2010 -0400
+
+ Removed warnings from rpcdispatch.c
+
+ rpcdispatch.c: In function 'rpc_dispatch':
+ rpcdispatch.c:30: warning: comparison between signed and unsigned
+ integer expressions
+ rpcdispatch.c:35: warning: comparison between signed and unsigned
+ integer expressions
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit b6e0ddd7bb3843bb8bb5ff56816b31bcf17adacd
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Jul 19 12:05:51 2010 -0400
+
+ Enable extra compile warnings (-Wextra) by default.
+
+ Added -Wextra to the CFLAGS which enables more checking
+ during compilation, which in turn, will hopefully flag
+ potential problems before they occur.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 12af21aca517dfbaec465447d8336bcc4769f71d
+Author: Doug Nazar <nazard.michi@gmail.com>
+Date: Mon Jul 19 11:08:46 2010 -0400
+
+ gssd: picking wrong creds
+
+ When not using machine credentials for root, if the machine
+ credential cache file is newer than the root credential file
+ the wrong file will get picked. Ignore the machine file in
+ this case.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit e2aa2c8c4cc21eb312a301855c2e211dedf93146
+Author: Doug Nazar <nazard.michi@gmail.com>
+Date: Mon Jul 19 10:58:47 2010 -0400
+
+ mountd: Fix memcmp result comparison error for uuid match.
+
+ Fixed Small typo in the new fs uuid comparison code
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit eafc5a8873b09482c71313f425080cce2031010a
+Author: Doug Nazar <nazard.michi@gmail.com>
+Date: Mon Jul 19 10:48:34 2010 -0400
+
+ gssd: Fix endtime issue
+
+ Commit 4c5ff6d4 removed the setting of endtime for a few contexts by
+ accident.
+
+ Now to figure out why I get stale handles on submounts.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 0bd7e91cea26bcfc5581290e4cdd87870da29b9e
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Jul 19 10:09:12 2010 -0400
+
+ nfs-utils: Fix C aliasing rules violation in nfs_getrpccaller()
+
+ Squelch compiler warnings reported with -Wextra:
+
+ In file included from statd.c:24:
+ ../../support/include/rpcmisc.h: In function nfs_getrpccaller_in:
+ ../../support/include/rpcmisc.h:58: warning: dereferencing type-punned
+ pointer might break strict-aliasing rules
+ ../../support/include/rpcmisc.h: In function nfs_getrpccaller:
+ ../../support/include/rpcmisc.h:63: warning: dereferencing type-punned
+ pointer might break strict-aliasing rules
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit a8715bec8bd671135f20fc0422d2a9fc0993758a
+Author: Kevin Constantine <kevin.constantine@disneyanimation.com>
+Date: Tue Jun 22 17:43:19 2010 -0400
+
+ nfs-iostat.py: divide by zero with fresh mount
+
+ When an export is freshly mounted, /proc/self/mountstats displays age = 0.
+ This causes nfs-iostat.py to divide by zero throwing an error. When we
+ have age = 0, other stats are greater than 0, so we'll set age = 1 and
+ print the relevant stats.
+
+ Signed-off-by: Kevin Constantine <kevin.constantine@disneyanimation.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9c3f7a220b4812c5d560db5fcacad790fc8b17af
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 13:31:38 2010 -0400
+
+ libexport.a: Remove unused hostent-based DNS helper functions
+
+ Clean up: Get rid of hostent-based DNS helper functions in
+ libexport.a that have been replaced by addrinfo-based DNS helpers.
+
+ None of the original code remains, so replace the copyright notice as
+ well.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 21015ace7d0a356b24a57540ccfeb41d941e78ed
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 13:06:40 2010 -0400
+
+ libexport.a: Replace matchhostname()
+
+ So that exportfs can eventually support IPv6 addresses, copy statd's
+ getaddrinfo(3)-based matchhostname to exportfs, with adjustments for
+ dealing with export wildcards and netgroups. Until exportfs has full
+ IPv6 support, however, we want to ensure that IPv6 addresses continue
+ to remain blocked in the address comparison code used by exportfs. At
+ a later point we'll replace much of this with the generic functions
+ in sockaddr.h.
+
+ Since it contains special logic for handling wildcard and netgroups,
+ this function is specialized for exportfs, and does not belong in
+ one of the shared libraries.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 22d6566d473f71e241c791a02435d414648c99e8
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 12:51:42 2010 -0400
+
+ libexport.a: Add documenting comments
+
+ Clean up. Add a few additional documenting comments for globally
+ visible functions.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 53928c0166dcc0acceaa995edb8551b48968b5dd
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 12:44:44 2010 -0400
+
+ libexport.a: Make export_add() static
+
+ Clean up: export_add() is not called from outside of export.c, so make
+ it a static helper.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 8940675a20967145b37a596334c25a54804435cc
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 12:43:55 2010 -0400
+
+ libexport.a: Make export_read() return void
+
+ Clean up: export_read()'s return value is always zero, and its only
+ caller never checks it.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 0509d3428f523776ddd9d6e9fa318587d3ec7d84
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 12:43:01 2010 -0400
+
+ mountd: Replace "struct hostent" with "struct addrinfo"
+
+ struct hostent can store either IPv4 or IPv6 addresses, but it can't
+ store both address families concurrently for the same host. Neither
+ can hostent deal with parts of socket addresses that are outside of
+ the sin{,6}_addr field.
+
+ Replace the use of "struct hostent" everywhere in libexport.a, mountd,
+ and exportfs with "struct addrinfo". This is a large change, but
+ there are so many strong dependencies on struct hostent that this
+ can't easily be broken into smaller pieces.
+
+ One benefit of this change is that hostent_dup() is no longer
+ required, since the results of getaddrinfo(3) are already dynamically
+ allocated.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 3ca5879be32c4c11750e12230ff588195fff0738
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 12:40:27 2010 -0400
+
+ exportfs: Add a common exit label in exportfs()
+
+ Clean up: Reduce code duplication by introducing a goto label for
+ freeing hp and exiting. This will make replacing "struct hostent *"
+ with "struct addrinfo *" more straightforward in this code.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 94ce1eb94babb4c587b2826452fb053cba745098
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Tue Jun 22 10:41:03 2010 -0400
+
+ libexport.a: Add helpers to manage DNS lookups
+
+ Introduce DNS query helpers based on getaddrinfo(3) and
+ getnameinfo(3). These will eventually replace the existing
+ hostent-based functions in support/export/hostname.c.
+
+ Put some of these new helpers to immediate use, where convenient.
+
+ As they are part of libexport.a, I've added the forward declarations
+ for these new functions in exportfs.h rather than misc.h, where the
+ hostent-based forward declarations are currently.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 8d61f2518bebe11c5fd0624857f83de1dceca991
+Author: NeilBrown <neilb@suse.de>
+Date: Tue Jun 22 10:37:25 2010 -0400
+
+ Improve support for exporting btrfs subvolumes
+
+ If you export two subvolumes of a btrfs filesystem, they will both be
+ given the same uuid so lookups will be confused.
+ blkid cannot differentiate the two, so we must use the fsid from
+ statfs64 to identify the filesystem.
+
+ We cannot tell if blkid or statfs is best without knowing internal
+ details of the filesystem in question, so we need to encode specific
+ knowledge of btrfs in mountd. This is unfortunate.
+
+ To ensure smooth handling of this and possible future changes in uuid
+ generation, we add infrastructure for multiple different uuids to be
+ recognised on old filehandles, but only the preferred on is used on
+ new filehandles.
+
+ Signed-off-by: NeilBrown <neilb@suse.de>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9ac7a15017b876d4d8d3a4502ebaf954f36f7f54
+Author: Steve Dickson <steved@redhat.com>
+Date: Thu Jun 3 08:53:22 2010 -0400
+
+ mount.nfs: silently fails when the network protocol is not found
+
+ mount.nfs should display some type of error diagnostics when
+ the network protocol can not be determined.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 740171dea45a57e396a86fbda1579a465f101854
+Author: Steve Dickson <steved@redhat.com>
+Date: Thu Jun 3 08:32:56 2010 -0400
+
+ mount: silently fails when bad option values are given
+
+ mount.nfs should not only fail when an invalid option values
+ are supplied (as it does), it should also print a diagnostic
+ message identifying the problem
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 94c3d7c91de582cf29ff9100950ecd4a5fd1606b
+Author: Kevin Constantine <kevin.constantine@disneyanimation.com>
+Date: Wed Jun 2 08:34:14 2010 -0400
+
+ nfsiostat.man: Add linebreak before --version option
+
+ The nfsiostat man file was missing a linebreak before the --verbose option
+
+ Signed-off-by: Kevin Constantine <kevin.constantine@disneyanimation.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 291b329ad1f5a65270097f4ec3a8dd465df42669
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon May 24 06:02:22 2010 -0400
+
+ mountd: Convert colons in IPv6 presentation addresses tosemicolons
+
+ The /var/lib/nfs/rmtab file delineates fields in each of its lines
+ with a ":". The first field contains the IP address of a client, in
+ presentation format. IPv6 presentation format addresses contain
+ colons, which screws up the field delineation of rmtab.
+
+ Use a simple simple scheme to convert the colons in incoming client
+ names to some other character, and then convert them back when the
+ rmtab file is read.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9e398e49be79af62fca8efb21849d8a2714dc92a
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon May 24 06:01:22 2010 -0400
+
+ libexport.a: Refactor rmtab_read()
+
+ Clean up: Make it easier to add IPv6 support by refactoring part of
+ rmtab_read() into a helper function.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 2fd2dfd9ebb2de145d50039233bd2a53b7f03062
+Author: NeilBrown <neilb@suse.de>
+Date: Mon May 24 05:55:26 2010 -0400
+
+ Mountd listens on 2 different versions for NFSv2 (MOUNTv1 and MOUNTv2)
+ and one for NFSv3 (MOUNTv3)
+
+ When --no-nfs-version requests an NFS version to be disabled, the
+ code actually disabled the MOUNT version. This works is several cases,
+ but requires --no-nfs-version 1 to completely disable NFSv2, which
+ is wrong.
+
+ So if we do disable 1, 2, and 3. mountd complain and won't run, it
+ is not possible to run just v4 - i.e. not listening for MOUNT requests
+ at all (as v4 doesn't need them).
+
+ So change the handling of "--no-nfs-version 2" it disable MOUNTv1 as
+ well as
+ MOUNTv2, and allow mountd to continue running as long as one of
+ NFSv2 NFSv3 NFSv4 is enabled.
+
+ Signed-off-by: NeilBrown <neilb@suse.de>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6299a310d77e6495efdf7c50491f0b055fee2cfe
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed May 5 15:41:07 2010 -0400
+
+ mountd/exportfs: Make m_addrlist field a nfs_sockaddr
+
+ To store non-AF_INET addresses in the nfs_client structure, we need to
+ use more than in_addr for the m_addrlist field. Make m_addrlist
+ larger, then add a few helper functions to handle type casting and
+ array indexing cleanly.
+
+ We could treat the nfs_client address list as if all the addresses
+ in the list were the same family. This might work for MCL_SUBNETWORK
+ type nfs_clients. However, during the transition to IPv6, most hosts
+ will have at least one IPv4 and one IPv6 address. For MCL_FQDN, I
+ think we need to have the ability to store addresses from both
+ families in one nfs_client.
+
+ Additionally, IPv6 scope IDs are not part of struct sin6_addr. To
+ support link-local IPv6 addresses and the like, a scope ID must be
+ stored.
+
+ Thus, each slot in the address list needs to be capable of storing an
+ entire socket address, and not simply the network address part.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6ff1fd42db18c657fbc5f81169a566b41d53e731
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed May 5 14:42:01 2010 -0400
+
+ libexport.a: Clean up client_add()
+
+ Clean up: client_add()'s current callers never set unknown m_type
+ values, so the m_type check is unnecessary.
+
+ All of client_add()'s callers are in the same source file where it is
+ defined, so make it a static helper function.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9bb85c5e8d2285f82367c75df5530a71a9a5a5f2
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed May 5 14:37:13 2010 -0400
+
+ libexport.a: Refactor client_init()
+
+ Clean up: Move subnet hostname parsing logic out of client_init() to
+ make it simpler to introduce IPv6 support.
+
+ Make client_init() a helper, since it's already static.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 0a8bd742cc1412e2553f152ee0c3aab8c5570212
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Fri Apr 23 12:22:53 2010 -0400
+
+ Make capabilities support optional
+
+ The new code using libcap is quite minor, so rather than always reqiure
+ libcap support, make it a normal --enable type flag. Current default
+ behavior is retained -- if libcap is found, it is enabled, else it is
+ disabled like every nfs-utils version in the past.
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit fbc038b7a5c7f5f102bf2c4fb149030d0092eec8
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Fri Apr 23 12:18:27 2010 -0400
+
+ set +x on autogen.sh
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 08e1512e4a932f41867f0b515348b9402db50cbd
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Apr 23 12:09:35 2010 -0400
+
+ libexport.a: Allow malloc(3) failures in client_lookup() and friends
+
+ Clean up: Use malloc(3) instead of xmalloc() in client_lookup() and
+ client_dup(), ensuring that a failed memory allocation here doesn't
+ cause our process to exit suddenly.
+
+ Allocation of nfs_client records and the m_hostname string are now
+ consistently handled with malloc(3), calloc(3), strdup(3), and
+ free(3).
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit aa4b66b12b631885ed85f3ebe97e68b033407178
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Apr 23 12:08:49 2010 -0400
+
+ libexport.a: Allow m_hostname allocation to fail instead of exit
+
+ Clean up: Replace xstrdup() with strdup(3) in client_init(), to
+ prevent the process from exiting if the memory allocation fails.
+
+ Note that both of client_init()'s callers set m_hostname equal to NULL
+ before calling, thus the extra free(3) at the top of client_init() is
+ unneeded.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 5d954d871fb265af584faef5df6e2e7e6ada7c3b
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Apr 23 12:02:34 2010 -0400
+
+ libexport.a: Allow client_init() to fail instead of exit
+
+ client_init()'s current callers can now deal correctly with a failure.
+ Get rid of code that can cause our process to exit in client_init(),
+ if address mask parsing or memory allocation fails.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 75cbc8d3fc9e7c3750629bd72519770ab58b868f
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Apr 23 12:00:28 2010 -0400
+
+ libexport.a: Add client_free()
+
+ Clean up: Introduce a helper to free a nfs_client record.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 7fc6f6c6b68ba7fa1be6de05ce3b9e2d97b82ea4
+Author: Steve Dickson <steved@redhat.com>
+Date: Fri Apr 16 10:56:29 2010 -0400
+
+ Add in autoconf support for mountstats and nfsiostats
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit d8ff9ef2828059bb2ee115d22f3c9579421daf54
+Author: Steve Dickson <steved@redhat.com>
+Date: Fri Apr 16 10:49:10 2010 -0400
+
+ Introduce man page for the nfsiostats command
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit c03fe46d62bc78cb52d400fa5a52dc4ce9947945
+Author: Steve Dickson <steved@redhat.com>
+Date: Fri Apr 16 10:46:41 2010 -0400
+
+ Introduce man page for the mountstats command
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit c4b2281c6c748b768de7a49af89660c9c1a68b11
+Author: Steve Dickson <steved@redhat.com>
+Date: Fri Apr 16 13:31:57 2010 -0400
+
+ Removed some miscellaneous warnings in the new gssd code.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 4c5ff6d48021731128c4fc13d51610645a6fcf5c
+Author: Kevin Coffman <kwc@citi.umich.edu>
+Date: Mon Apr 12 17:13:25 2010 -0400
+
+ Add support for non-DES encryption types.
+
+ Sends a new format of context information to the kernel.
+ (Requires kernel support to do anything useful.)
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 76be349d5dd07f55797cb9920cc275667258f10f
+Author: Kevin Coffman <kwc@citi.umich.edu>
+Date: Thu Apr 15 08:32:20 2010 -0400
+
+ Try to use kernel function to determine supported Kerberos enctypes.
+
+ This patch replaces a hard-coded list with a function to obtain
+ the Kerberos encryption types that the kernel's rpcsec_gss code
+ can support. Defaults to old behavior if kernel does not supply
+ information.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 48d13033dcb27eb3d9ea78c39692ff7c54095950
+Author: Kevin Coffman <kwc@citi.umich.edu>
+Date: Mon Apr 12 17:06:30 2010 -0400
+
+ gssd: move function limit_krb5_enctypes into the exported functions area
+
+ cleanup: Move function limit_krb5_enctypes() from the section
+ containing static functions into the section containing
+ externally visible functions.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 470448e77bd673b206cf40820f966dcb8f029f27
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Apr 16 13:03:20 2010 -0400
+
+ libexport.a: export_find() should handle address parsing errors
+
+ An address mask parsing error can cause client_init(), and therefore
+ client_dup(), to make our process exit suddenly. Soon we want to add
+ more complex address parsing in client_init(), so we need this
+ interface to be a little more robust.
+
+ Since export_find() can return NULL in some cases, it can handle NULL
+ returns from its subroutines if an address parsing error occurs, or if
+ memory is exhausted. Allow for client_dup() to return NULL instead of
+ exiting sideways.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9b7cc679c70d00af3f44dc6a8b44a360a2423d64
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Apr 16 13:02:15 2010 -0400
+
+ libexport.a: Add export_free()
+
+ Clean up: Introduce a helper to free an nfs_export record.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 30eff9c26141746fb26efb1af60d5cbe7a16ebae
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 15 08:59:18 2010 -0400
+
+ libexport.a: Add helper for populating m_addrlist[]
+
+ Clean up: Move common code that populates an nfs_client record's
+ m_addrlist to a helper function. This eliminates a little code
+ duplication, and makes it simpler to add IPv6 support later.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit e1c93f691348392ee36b763bf57946540891ff16
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 15 08:57:29 2010 -0400
+
+ libexport.a: Reduce code duplication in client_init()
+
+ Clean up: Most cases in client_init() set clp->m_naddr to zero. Move
+ it to the common part of the function, and simplify the logic. This
+ will make adding IPv6 support here more straightforward.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 1fc99e6d5d6b9401e380ee756a4251c86a3b8d54
+Author: Mike Frysinger <vapier@gentoo.org>
+Date: Thu Apr 15 08:49:28 2010 -0400
+
+ set +x on t0001-statd-basic-mon-unmon.sh
+
+ The test framework tries to exec this script, but it fails because it
+ lacks the +x bit.
+
+ Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit bf867b09201abb155b52e81aeb08757b2f7c6937
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 8 11:01:14 2010 -0400
+
+ libexport.a: replace xlog(L_FATAL) in client_check()
+
+ Clean up: Prevent the process from exiting in client_check(). Report
+ bad m_type values, but return 0.
+
+ This removes another site where a mountd or exportfs process can exit
+ sideways.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit a39b43b81a8e7b70310f250c5ffd77816577cd6c
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 8 10:55:02 2010 -0400
+
+ libexport.a: Refactor wildcard checking in client_check()
+
+ Clean up: refactor wildcard logic out of client_check() to make it
+ easier to introduce IPv6 support.
+
+ Match the style used for client_check_{fqdn,subnetwork,netgroup}.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 346ca35298e45e55a58d0f566c3b32b69102c6de
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 8 10:54:01 2010 -0400
+
+ libexport.a: Refactor netgroup checking in client_check()
+
+ Clean up: refactor netgroup logic out of client_check() to make it
+ easier to introduce IPv6 support.
+
+ + Use preferred style of keeping #ifdef out of the middle of
+ function definitions. Squelch compiler warnings for "#ifndef
+ HAVE_INNETGR" by using __attribute__((unused)).
+
+ + Use preferred style of not using curly braces around switch cases.
+
+ + Match style used for check_{fqdn,subnetwork}.
+
+ + Clarify comment documenting use of h_aliases
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 3455138100064d0213b124c72453accde2276be5
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 8 10:52:33 2010 -0400
+
+ libexport.a: Remove unused function client_checkaddr()
+
+ Clean up.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit a4e3d5c53195c789ae26697a0b2ecdf05d76a85b
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 8 10:51:54 2010 -0400
+
+ libexport.a: Factor SUBNETWORK checking out of check_client()
+
+ Clean up: Factor the MCL_SUBNETWORK case out of check_client() and
+ client_checkaddr(). This will make it easier to add IPv6 support
+ eventually.
+
+ The logic in the new helper function will get a little more tangled
+ once IPv6 support is introduced. Each slot in the clp address list
+ eventually may contain an address from either address family.
+
+ Note that the switch statement in client_checkaddr() is redundant,
+ since clp->cl_mtype is loop invariant. This change makes SUBNETWORK
+ client checking more computationally efficient, at the cost of a few
+ extra lines of code.
+
+ This commit should not change code behavior in any way.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6abde64e6a605443dfc283ffb2642cb853f8b5b0
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Thu Apr 8 10:50:41 2010 -0400
+
+ libexport.a: Factor FQDN checking out of check_client()
+
+ Clean up: Factor the MCL_FQDN case out of check_client() and
+ client_checkaddr(). This will make it easier to add IPv6 support
+ eventually.
+
+ The logic in the new helper function will get a little more tangled
+ once IPv6 support is introduced. Each slot in the clp address list
+ eventually may contain an address from either address family.
+
+ Note that the switch statement in client_checkaddr() is redundant,
+ since clp->cl_mtype is loop invariant. This change makes FQDN client
+ checking more computationally efficient, at the cost of a few extra
+ lines of code.
+
+ This commit should not change code behavior in any way.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit e8a54a3d5e32c9de009f84d1ef3f26d2dffbf226
+Author: Steve Dickson <steved@redhat.com>
+Date: Thu Apr 8 10:43:49 2010 -0400
+
+ Remove some warnings that were introduced by commit 6ca440c
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 132744e9f8885254bcf213c90009d40adeb716bc
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Mar 22 10:18:00 2010 -0400
+
+ libexport.a: e_fslocdata should be freed with free(3)
+
+ Clean up: Since e_fslocdata is allocated with strdup(3), and not
+ xstrdup(), it should be freed with free(3), and not xfree().
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit e3b0046b4b12a6e05c0a7afd59ca5431ded51e96
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Mar 22 10:16:04 2010 -0400
+
+ libexport.a: Fix whitespace damage in support/export/export.c
+
+ Clean up whitespace damage introduced by commit 4cacc965.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 5f722d8855ebcb2d041e182c8c69c8cbee4bf408
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Mar 22 10:13:15 2010 -0400
+
+ libexport.a: Clean up client_compose() and client_member()
+
+ Clean up: Replace outdated comments, and fix some function
+ declarations. Use proper type for a couple of automatic variables.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit aa4c771fc359e097a3a6c3637f78c7bed7c450e9
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Mon Mar 22 10:10:59 2010 -0400
+
+ libexport.a: Remove dead code
+
+ Clean up: I can't find any call sites for client_find() or
+ client_match().
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 0935cebc1e130c6adfd870c88a6493277c84d47f
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Mar 19 16:14:26 2010 -0400
+
+ mount: Mount should retry unreachable hosts
+
+ Currently if a server is up but not responding (ie, it answers ARP
+ requests, but not NFS or RPC requests), mount retries or backgrounds
+ itself waiting for the server.
+
+ If the server is not responding on the network at all, mount fails
+ the mount request immediately.
+
+ Users might find it more useful if mount retried in both cases.
+
+ Note that this change means attempting to mount using a misspelled
+ server name will "hang" for the retry amount. I suppose the error
+ message isn't very helpful whether it fails immediately or waits
+ a couple of minutes, though I imagine that an unreachable server is a
+ much more common occurrence than a misspelling.
+
+ Reported-by: Daniel Goering <g_daniel@gmx.net>
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit baa41b2c78e796540c45692ea35214f7090a78cb
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Fri Mar 19 16:03:45 2010 -0400
+
+ sm-notify: Send fully-qualified and unqualified mon_names
+
+ During any file locking interaction between an NFS client and server,
+ the client tells the server what hostname it will use as the mon_name
+ argument of the SM_NOTIFY request sent by the client when it reboots.
+ This is the "caller_name" argument of an NLMPROC_LOCK request.
+
+ The server, however, never tells the client what mon_name argument
+ it will use when sending an SM_NOTIFY request. In order to recognize
+ the server, clients usually guess what mon_name the server might
+ send, by using the server hostname provided by the user on the mount
+ command line.
+
+ Frequently, the user provides an unqualified server name on the mount
+ command. The server might then call the client back with a fully
+ qualified domain name, which might not match in some cases.
+
+ Solaris, and perhaps other implementations, attempt to mitigate this
+ problem by sending two SM_NOTIFY requests to each peer: one with an
+ unqualified mon_name argument, and one with a fully qualified mon_name.
+
+ Implement such a scheme for sm-notify.
+
+ Since my_name is almost always the fully-qualified hostname associated
+ with the local system, just wiping the left-most '.' in the my_name
+ argument and sending another SM_NOTIFY is nearly always sufficient.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 900df0e7c0b9006d72d8459b30dc2cd69ce495a5
+Author: Chuck Lever <chuck.lever@oracle.com>
+Date: Wed Mar 17 06:15:08 2010 -0400
+
+ sm-notify: Use my_name when sending SM_NOTIFY requests
+
+ The mon_name argument of an SM_NOTIFY request is a string that
+ identifies the rebooting host.
+
+ sm-notify should send the my_name provided by the local lockd at the
+ time the remote was monitored, rather than cocking up a mon_name
+ argument based on the present return value of gethostname(3). If the
+ local system's hostname happened to change after the last reboot, then
+ the string returned by gethostname(3) will not be recognized by the
+ remote. Thus the remote will never initiate lock recovery for the
+ original named host, possibly leaving stale locks.
+
+ The existing behavior of using the -v command line option as the
+ mon_name argument is preserved, but we now prevent sending an IP
+ presentation address, as some non-Linux implementations don't
+ recognize addresses as valid mon_names.
+
+ Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
+ Reviewed-by: Jeff Layton <jlayton@redhat.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 70c59e231e7257ac93b68ba4b844f8d10a6af4a8
+Author: J. Bruce Fields <bfields@citi.umich.edu>
+Date: Mon Mar 8 15:02:26 2010 -0500
+
+ mountd: trivial: name parameters for clarity
+
+ Part of the reason for the previous bug was confusion between "subpath"
+ and "path"; which is the shorter path, and which the longer?
+
+ "child" and "parent" seem less ambiguous.
+
+ Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit a064fde8c2615333227de97d159bb338d4ac640d
+Author: J. Bruce Fields <bfields@citi.umich.edu>
+Date: Mon Mar 8 14:59:01 2010 -0500
+
+ mountd: fix path comparison for v4 crossmnt
+
+ This was obviously wrong, since path[strlen(path)] == '\0'
+ should always be true.
+
+ Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 6ca440c2661dccb05ae74ffb65817e9c30f05c8a
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Mar 8 11:22:46 2010 -0500
+
+ mountd: fix --manage-gids hang due to int/uint bug
+
+ A uid or gid should be represented as unsigned, not signed.
+
+ The conversion to signed here could cause a hang on access by an unknown
+ user to a server running mountd with --manage-gids; such a user is
+ likely to be mapped to 232-1, which may be converted to 231-1 when
+ represented as an int, resulting in a downcall for uid 231-1, hence the
+ original rpc hanging forever waiting for a cache downcall for 232-1.
+
+ Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 84346b7d7e69c113d6dbf03f2646a47b0e74a6b8
+Author: Steve Dickson <steved@redhat.com>
+Date: Mon Mar 8 10:24:44 2010 -0500
+
+ Use authunix_create() instead of authsys_create() to fix regression.
+
+ Commit 409b8 introduced a regression when the --disable-tirpc
+ configuration flag is set. The authsys_create() interface, which
+ was introduced, does not exist in the legacy glibc library.
+
+ Since the authsys_create() interface is a redefined of the
+ authunix_create() interface, which is defined in glibc, using
+ authunix_create() resolves the regression,
+
+ Acked-by: Jeff Layton <jlayton@redhat.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 409b89cc7106154780400c6b2bdce46bc9d5db4b
+Author: Jeff Layton <jlayton@redhat.com>
+Date: Mon Mar 1 08:07:34 2010 -0500
+
+ nfs-utils: add and use nfs_authsys_create
+
+ The current mount, umount and showmount code uses
+ authunix_create_default to get an auth handle. The one provided by glibc
+ returned a truncated list of groups when there were more than 16 groups.
+ libtirpc however currently does an abort() in this case, which causes
+ the program to crash and dump core.
+
+ nfs-utils just uses these auth handles for the MNT protocol, so the
+ group list doesn't make a lot of difference here. Add a new function
+ that creates an auth handle with a supplemental gids list that consists
+ only of the primary gid. Have nfs-utils use that function anywhere that
+ it currently uses authunix_create_default. Also, have the caller
+ properly check for a NULL return from that function.
+
+ Signed-off-by: Jeff Layton <jlayton@redhat.com>
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 9c8c2cd50d3cf0316c2a1bdf6cb9efc7e1a20be9
+Author: Trond Myklebust <Trond.Myklebust@netapp.com>
+Date: Mon Mar 1 07:37:49 2010 -0500
+
+ Fix a typo in commit 6d5ac3fa (nfsd: Disble NFS 4.1 functionality by
+ default).
+
+ We did not really intend to make NFSv4.0 support conditional on NFSv4.1
+ being enabled.
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>
+
+commit 639b63394c6dd66e06423bfe810366277955c570
+Author: Steve Dickson <steved@redhat.com>
+Date: Thu Feb 18 07:35:00 2010 -0500
+
+ Release 1.2.2
+
+ Signed-off-by: Steve Dickson <steved@redhat.com>