[nfs-utils] Updated to latest upstream release: nfs-utils-1-2-4-rc5
Steve Dickson
steved at fedoraproject.org
Sat Jan 15 14:09:23 UTC 2011
commit 9b25dd3e91e910d8d41d2f22534ac7460e510810
Author: Steve Dickson <steved at redhat.com>
Date: Fri Jan 14 13:30:50 2011 -0500
Updated to latest upstream release: nfs-utils-1-2-4-rc5
Signed-off-by: Steve Dickson <steved at redhat.com>
...ls-1.2.4-rc3.patch => nfs-utils-1.2.4-rc5.patch | 379 +++++++++++++++++---
nfs-utils.spec | 7 +-
2 files changed, 329 insertions(+), 57 deletions(-)
---
diff --git a/nfs-utils-1.2.4-rc3.patch b/nfs-utils-1.2.4-rc5.patch
similarity index 84%
rename from nfs-utils-1.2.4-rc3.patch
rename to nfs-utils-1.2.4-rc5.patch
index 35046d7..4782bb7 100644
--- a/nfs-utils-1.2.4-rc3.patch
+++ b/nfs-utils-1.2.4-rc5.patch
@@ -1,6 +1,6 @@
diff -up nfs-utils-1.2.3/aclocal/keyutils.m4.orig nfs-utils-1.2.3/aclocal/keyutils.m4
---- nfs-utils-1.2.3/aclocal/keyutils.m4.orig 2010-11-29 11:18:44.168551958 -0500
-+++ nfs-utils-1.2.3/aclocal/keyutils.m4 2010-11-29 11:18:44.168551958 -0500
+--- nfs-utils-1.2.3/aclocal/keyutils.m4.orig 2011-01-14 13:27:17.497605500 -0500
++++ nfs-utils-1.2.3/aclocal/keyutils.m4 2011-01-14 13:27:17.497605500 -0500
@@ -0,0 +1,11 @@
+dnl Checks for keyutils library and headers
+dnl
@@ -15,7 +15,7 @@ diff -up nfs-utils-1.2.3/aclocal/keyutils.m4.orig nfs-utils-1.2.3/aclocal/keyuti
+])dnl
diff -up nfs-utils-1.2.3/aclocal/libnfsidmap.m4.orig nfs-utils-1.2.3/aclocal/libnfsidmap.m4
--- nfs-utils-1.2.3/aclocal/libnfsidmap.m4.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/aclocal/libnfsidmap.m4 2010-11-29 11:18:44.168551958 -0500
++++ nfs-utils-1.2.3/aclocal/libnfsidmap.m4 2011-01-14 13:27:17.498605703 -0500
@@ -14,4 +14,8 @@ AC_DEFUN([AC_LIBNFSIDMAP], [
[AC_DEFINE([HAVE_NFS4_SET_DEBUG], 1,
[Define to 1 if you have the `nfs4_set_debug' function.])])
@@ -26,8 +26,8 @@ diff -up nfs-utils-1.2.3/aclocal/libnfsidmap.m4.orig nfs-utils-1.2.3/aclocal/lib
+
])dnl
diff -up nfs-utils-1.2.3/configure.ac.orig nfs-utils-1.2.3/configure.ac
---- nfs-utils-1.2.3/configure.ac.orig 2010-11-29 11:17:26.902868938 -0500
-+++ nfs-utils-1.2.3/configure.ac 2010-11-29 11:18:44.169551941 -0500
+--- nfs-utils-1.2.3/configure.ac.orig 2011-01-14 13:22:07.094642705 -0500
++++ nfs-utils-1.2.3/configure.ac 2011-01-14 13:27:17.498605703 -0500
@@ -144,7 +144,7 @@ AC_ARG_ENABLE(tirpc,
[AC_HELP_STRING([--enable-tirpc],
[enable use of TI-RPC @<:@default=yes@:>@])],
@@ -60,7 +60,7 @@ diff -up nfs-utils-1.2.3/configure.ac.orig nfs-utils-1.2.3/configure.ac
tests/Makefile
diff -up nfs-utils-1.2.3/.gitignore.orig nfs-utils-1.2.3/.gitignore
--- nfs-utils-1.2.3/.gitignore.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/.gitignore 2010-11-29 11:18:44.168551958 -0500
++++ nfs-utils-1.2.3/.gitignore 2011-01-14 13:27:17.497605500 -0500
@@ -64,6 +64,7 @@ tests/nsm_client/nlm_sm_inter.h
tests/nsm_client/nlm_sm_inter_clnt.c
tests/nsm_client/nlm_sm_inter_svc.c
@@ -71,7 +71,7 @@ diff -up nfs-utils-1.2.3/.gitignore.orig nfs-utils-1.2.3/.gitignore
# generic editor backup et al
diff -up nfs-utils-1.2.3/support/export/client.c.orig nfs-utils-1.2.3/support/export/client.c
--- nfs-utils-1.2.3/support/export/client.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/support/export/client.c 2010-11-29 11:18:44.170551927 -0500
++++ nfs-utils-1.2.3/support/export/client.c 2011-01-14 13:27:17.499605906 -0500
@@ -178,6 +178,7 @@ out_badprefix:
static int
init_netmask6(nfs_client *UNUSED(clp), const char *UNUSED(slash))
@@ -82,7 +82,7 @@ diff -up nfs-utils-1.2.3/support/export/client.c.orig nfs-utils-1.2.3/support/ex
diff -up nfs-utils-1.2.3/support/export/export.c.orig nfs-utils-1.2.3/support/export/export.c
--- nfs-utils-1.2.3/support/export/export.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/support/export/export.c 2010-11-29 11:18:44.170551927 -0500
++++ nfs-utils-1.2.3/support/export/export.c 2011-01-14 13:27:17.500606109 -0500
@@ -38,6 +38,7 @@ export_free(nfs_export *exp)
xfree(exp->m_export.e_sqgids);
free(exp->m_export.e_mountpoint);
@@ -93,7 +93,7 @@ diff -up nfs-utils-1.2.3/support/export/export.c.orig nfs-utils-1.2.3/support/ex
xfree(exp);
diff -up nfs-utils-1.2.3/support/export/hostname.c.orig nfs-utils-1.2.3/support/export/hostname.c
--- nfs-utils-1.2.3/support/export/hostname.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/support/export/hostname.c 2010-11-29 11:18:44.171551914 -0500
++++ nfs-utils-1.2.3/support/export/hostname.c 2011-01-14 13:27:17.500606109 -0500
@@ -30,10 +30,6 @@
#include "sockaddr.h"
#include "exportfs.h"
@@ -116,7 +116,7 @@ diff -up nfs-utils-1.2.3/support/export/hostname.c.orig nfs-utils-1.2.3/support/
diff -up nfs-utils-1.2.3/support/include/nfslib.h.orig nfs-utils-1.2.3/support/include/nfslib.h
--- nfs-utils-1.2.3/support/include/nfslib.h.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/support/include/nfslib.h 2010-11-29 11:18:44.172551902 -0500
++++ nfs-utils-1.2.3/support/include/nfslib.h 2011-01-14 13:27:17.501606312 -0500
@@ -163,6 +163,12 @@ void closeall(int min);
int svctcp_socket (u_long __number, int __reuse);
int svcudp_socket (u_long __number);
@@ -131,8 +131,8 @@ diff -up nfs-utils-1.2.3/support/include/nfslib.h.orig nfs-utils-1.2.3/support/i
#define UNUSED(x) UNUSED_ ## x __attribute__((unused))
diff -up nfs-utils-1.2.3/support/nfs/atomicio.c.orig nfs-utils-1.2.3/support/nfs/atomicio.c
---- nfs-utils-1.2.3/support/nfs/atomicio.c.orig 2010-11-29 11:18:44.173551890 -0500
-+++ nfs-utils-1.2.3/support/nfs/atomicio.c 2010-11-29 11:18:44.173551890 -0500
+--- nfs-utils-1.2.3/support/nfs/atomicio.c.orig 2011-01-14 13:27:17.502606515 -0500
++++ nfs-utils-1.2.3/support/nfs/atomicio.c 2011-01-14 13:27:17.502606515 -0500
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2002 Marius Aamodt Eriksen <marius at monkey.org>
@@ -190,7 +190,7 @@ diff -up nfs-utils-1.2.3/support/nfs/atomicio.c.orig nfs-utils-1.2.3/support/nfs
+}
diff -up nfs-utils-1.2.3/support/nfs/conffile.c.orig nfs-utils-1.2.3/support/nfs/conffile.c
--- nfs-utils-1.2.3/support/nfs/conffile.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/support/nfs/conffile.c 2010-11-29 11:18:44.174551888 -0500
++++ nfs-utils-1.2.3/support/nfs/conffile.c 2011-01-14 13:27:17.502606516 -0500
@@ -271,9 +271,9 @@ conf_parse_line(int trans, char *line, s
if (ptr == NULL)
return;
@@ -204,8 +204,8 @@ diff -up nfs-utils-1.2.3/support/nfs/conffile.c.orig nfs-utils-1.2.3/support/nfs
"non-matched '\"', ignoring until next section", ln);
} else {
diff -up nfs-utils-1.2.3/support/nfs/exports.c.orig nfs-utils-1.2.3/support/nfs/exports.c
---- nfs-utils-1.2.3/support/nfs/exports.c.orig 2010-11-29 11:17:26.906868973 -0500
-+++ nfs-utils-1.2.3/support/nfs/exports.c 2010-11-29 11:18:44.174551888 -0500
+--- nfs-utils-1.2.3/support/nfs/exports.c.orig 2011-01-14 13:22:07.097643314 -0500
++++ nfs-utils-1.2.3/support/nfs/exports.c 2011-01-14 13:27:17.503606719 -0500
@@ -332,6 +332,8 @@ dupexportent(struct exportent *dst, stru
dst->e_mountpoint = strdup(src->e_mountpoint);
if (src->e_fslocdata)
@@ -217,7 +217,7 @@ diff -up nfs-utils-1.2.3/support/nfs/exports.c.orig nfs-utils-1.2.3/support/nfs/
diff -up nfs-utils-1.2.3/support/nfs/Makefile.am.orig nfs-utils-1.2.3/support/nfs/Makefile.am
--- nfs-utils-1.2.3/support/nfs/Makefile.am.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/support/nfs/Makefile.am 2010-11-29 11:18:44.172551902 -0500
++++ nfs-utils-1.2.3/support/nfs/Makefile.am 2011-01-14 13:27:17.502606515 -0500
@@ -5,7 +5,7 @@ libnfs_a_SOURCES = exports.c rmtab.c xio
xlog.c xcommon.c wildmat.c nfsclient.c \
nfsexport.c getfh.c nfsctl.c rpc_socket.c getport.c \
@@ -227,9 +227,24 @@ diff -up nfs-utils-1.2.3/support/nfs/Makefile.am.orig nfs-utils-1.2.3/support/nf
MAINTAINERCLEANFILES = Makefile.in
+diff -up nfs-utils-1.2.3/support/nfs/rpcdispatch.c.orig nfs-utils-1.2.3/support/nfs/rpcdispatch.c
+--- nfs-utils-1.2.3/support/nfs/rpcdispatch.c.orig 2010-09-28 08:24:16.000000000 -0400
++++ nfs-utils-1.2.3/support/nfs/rpcdispatch.c 2011-01-14 13:27:17.503606719 -0500
+@@ -37,6 +37,11 @@ rpc_dispatch(struct svc_req *rqstp, SVCX
+ return;
+ }
+
++ if (dtable->nproc <= rqstp->rq_proc) {
++ svcerr_noproc(transp);
++ return;
++ }
++
+ dent = dtable->entries + rqstp->rq_proc;
+
+ if (dent->func == NULL) {
diff -up nfs-utils-1.2.3/support/nfs/strlcat.c.orig nfs-utils-1.2.3/support/nfs/strlcat.c
---- nfs-utils-1.2.3/support/nfs/strlcat.c.orig 2010-11-29 11:18:44.175551873 -0500
-+++ nfs-utils-1.2.3/support/nfs/strlcat.c 2010-11-29 11:18:44.175551873 -0500
+--- nfs-utils-1.2.3/support/nfs/strlcat.c.orig 2011-01-14 13:27:17.505607123 -0500
++++ nfs-utils-1.2.3/support/nfs/strlcat.c 2011-01-14 13:27:17.505607123 -0500
@@ -0,0 +1,76 @@
+/* $OpenBSD: strlcat.c,v 1.8 2001/05/13 15:40:15 deraadt Exp $ */
+
@@ -308,8 +323,8 @@ diff -up nfs-utils-1.2.3/support/nfs/strlcat.c.orig nfs-utils-1.2.3/support/nfs/
+ return(dlen + (s - src)); /* count does not include NUL */
+}
diff -up nfs-utils-1.2.3/support/nfs/strlcpy.c.orig nfs-utils-1.2.3/support/nfs/strlcpy.c
---- nfs-utils-1.2.3/support/nfs/strlcpy.c.orig 2010-11-29 11:18:44.175551873 -0500
-+++ nfs-utils-1.2.3/support/nfs/strlcpy.c 2010-11-29 11:18:44.175551873 -0500
+--- nfs-utils-1.2.3/support/nfs/strlcpy.c.orig 2011-01-14 13:27:17.505607123 -0500
++++ nfs-utils-1.2.3/support/nfs/strlcpy.c 2011-01-14 13:27:17.506607326 -0500
@@ -0,0 +1,72 @@
+/* $OpenBSD: strlcpy.c,v 1.5 2001/05/13 15:40:16 deraadt Exp $ */
+
@@ -385,7 +400,7 @@ diff -up nfs-utils-1.2.3/support/nfs/strlcpy.c.orig nfs-utils-1.2.3/support/nfs/
+}
diff -up nfs-utils-1.2.3/support/nfs/svc_create.c.orig nfs-utils-1.2.3/support/nfs/svc_create.c
--- nfs-utils-1.2.3/support/nfs/svc_create.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/support/nfs/svc_create.c 2010-11-29 11:18:44.176551853 -0500
++++ nfs-utils-1.2.3/support/nfs/svc_create.c 2011-01-14 13:27:17.506607326 -0500
@@ -27,6 +27,7 @@
#include <memory.h>
#include <signal.h>
@@ -693,9 +708,133 @@ diff -up nfs-utils-1.2.3/support/nfs/svc_create.c.orig nfs-utils-1.2.3/support/n
void (*dispatch)(struct svc_req *, SVCXPRT *),
const uint16_t port)
{
+diff -up nfs-utils-1.2.3/support/nsm/file.c.orig nfs-utils-1.2.3/support/nsm/file.c
+--- nfs-utils-1.2.3/support/nsm/file.c.orig 2011-01-14 13:22:07.094642705 -0500
++++ nfs-utils-1.2.3/support/nsm/file.c 2011-01-14 13:27:17.507607529 -0500
+@@ -127,7 +127,7 @@ exact_error_check(const ssize_t len, con
+ * containing an appropriate pathname, or NULL if an error
+ * occurs. Caller must free the returned result with free(3).
+ */
+-__attribute_malloc__
++__attribute__((__malloc__))
+ static char *
+ nsm_make_record_pathname(const char *directory, const char *hostname)
+ {
+@@ -175,7 +175,7 @@ nsm_make_record_pathname(const char *dir
+ * containing an appropriate pathname, or NULL if an error
+ * occurs. Caller must free the returned result with free(3).
+ */
+-__attribute_malloc__
++__attribute__((__malloc__))
+ static char *
+ nsm_make_pathname(const char *directory)
+ {
+@@ -205,7 +205,7 @@ nsm_make_pathname(const char *directory)
+ * containing an appropriate pathname, or NULL if an error
+ * occurs. Caller must free the returned result with free(3).
+ */
+-__attribute_malloc__
++__attribute__((__malloc__))
+ static char *
+ nsm_make_temp_pathname(const char *pathname)
+ {
+@@ -422,7 +422,7 @@ nsm_drop_privileges(const int pidfd)
+ */
+ if (prctl(PR_SET_KEEPCAPS, 1, 0, 0, 0) == -1) {
+ xlog(L_ERROR, "prctl(PR_SET_KEEPCAPS) failed: %m");
+- return 0;
++ return false;
+ }
+
+ if (setgroups(0, NULL) == -1) {
+@@ -569,9 +569,8 @@ nsm_retire_monitored_hosts(void)
+
+ while ((de = readdir(dir)) != NULL) {
+ char *src, *dst;
++ struct stat stb;
+
+- if (de->d_type != (unsigned char)DT_REG)
+- continue;
+ if (de->d_name[0] == '.')
+ continue;
+
+@@ -581,6 +580,20 @@ nsm_retire_monitored_hosts(void)
+ continue;
+ }
+
++ /* NB: not all file systems fill in d_type correctly */
++ if (lstat(src, &stb) == -1) {
++ xlog_warn("Bad monitor file %s, skipping: %m",
++ de->d_name);
++ free(src);
++ continue;
++ }
++ if (!S_ISREG(stb.st_mode)) {
++ xlog(D_GENERAL, "Skipping non-regular file %s",
++ de->d_name);
++ free(src);
++ continue;
++ }
++
+ dst = nsm_make_record_pathname(NSM_NOTIFY_DIR, de->d_name);
+ if (dst == NULL) {
+ free(src);
+@@ -635,7 +648,7 @@ nsm_priv_to_hex(const char *priv, char *
+ /*
+ * Returns the length in bytes of the created record.
+ */
+-__attribute_noinline__
++__attribute__((__noinline__))
+ static size_t
+ nsm_create_monitor_record(char *buf, const size_t buflen,
+ const struct sockaddr *sap, const struct mon *m)
+@@ -785,7 +798,7 @@ out:
+ return result;
+ }
+
+-__attribute_noinline__
++__attribute__((__noinline__))
+ static _Bool
+ nsm_parse_line(char *line, struct sockaddr_in *sin, struct mon *m)
+ {
+@@ -847,7 +860,7 @@ nsm_read_line(const char *hostname, cons
+ }
+
+ /*
+- * Given a filename, reads data from a file under NSM_MONITOR_DIR
++ * Given a filename, reads data from a file under "directory"
+ * and invokes @func so caller can populate their in-core
+ * database with this data.
+ */
+@@ -864,10 +877,15 @@ nsm_load_host(const char *directory, con
+ if (path == NULL)
+ goto out_err;
+
+- if (stat(path, &stb) == -1) {
++ if (lstat(path, &stb) == -1) {
+ xlog(L_ERROR, "Failed to stat %s: %m", path);
+ goto out_freepath;
+ }
++ if (!S_ISREG(stb.st_mode)) {
++ xlog(D_GENERAL, "Skipping non-regular file %s",
++ path);
++ goto out_freepath;
++ }
+
+ f = fopen(path, "r");
+ if (f == NULL) {
+@@ -914,8 +932,6 @@ nsm_load_dir(const char *directory, nsm_
+ }
+
+ while ((de = readdir(dir)) != NULL) {
+- if (de->d_type != (unsigned char)DT_REG)
+- continue;
+ if (de->d_name[0] == '.')
+ continue;
+
diff -up nfs-utils-1.2.3/tests/nsm_client/nsm_client.c.orig nfs-utils-1.2.3/tests/nsm_client/nsm_client.c
--- nfs-utils-1.2.3/tests/nsm_client/nsm_client.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/tests/nsm_client/nsm_client.c 2010-11-29 11:18:44.177551833 -0500
++++ nfs-utils-1.2.3/tests/nsm_client/nsm_client.c 2011-01-14 13:27:17.508607732 -0500
@@ -205,7 +205,7 @@ nsm_client_get_rpcclient(const char *nod
{
unsigned short port;
@@ -707,7 +846,7 @@ diff -up nfs-utils-1.2.3/tests/nsm_client/nsm_client.c.orig nfs-utils-1.2.3/test
diff -up nfs-utils-1.2.3/utils/exportfs/exports.man.orig nfs-utils-1.2.3/utils/exportfs/exports.man
--- nfs-utils-1.2.3/utils/exportfs/exports.man.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/exportfs/exports.man 2010-11-29 11:18:48.351597145 -0500
++++ nfs-utils-1.2.3/utils/exportfs/exports.man 2011-01-14 13:27:17.509607935 -0500
@@ -145,7 +145,9 @@ storage (see
.IR async
above).
@@ -740,9 +879,130 @@ diff -up nfs-utils-1.2.3/utils/exportfs/exports.man.orig nfs-utils-1.2.3/utils/e
.SS User ID Mapping
.PP
.B nfsd
+diff -up nfs-utils-1.2.3/utils/gssd/gss_util.c.orig nfs-utils-1.2.3/utils/gssd/gss_util.c
+--- nfs-utils-1.2.3/utils/gssd/gss_util.c.orig 2010-09-28 08:24:16.000000000 -0400
++++ nfs-utils-1.2.3/utils/gssd/gss_util.c 2011-01-14 13:27:17.509607936 -0500
+@@ -138,6 +138,83 @@ display_status_1(char *m, u_int32_t code
+ }
+ }
+ #endif
++static char *
++gss_display_error(OM_uint32 status)
++{
++ char *error = NULL;
++
++ switch(status) {
++ case GSS_S_COMPLETE:
++ error = "GSS_S_COMPLETE";
++ break;
++ case GSS_S_CALL_INACCESSIBLE_READ:
++ error = "GSS_S_CALL_INACCESSIBLE_READ";
++ break;
++ case GSS_S_CALL_INACCESSIBLE_WRITE:
++ error = "GSS_S_CALL_INACCESSIBLE_WRITE";
++ break;
++ case GSS_S_CALL_BAD_STRUCTURE:
++ error = "GSS_S_CALL_BAD_STRUCTURE";
++ break;
++ case GSS_S_BAD_MECH:
++ error = "GSS_S_BAD_MECH";
++ break;
++ case GSS_S_BAD_NAME:
++ error = "GSS_S_BAD_NAME";
++ break;
++ case GSS_S_BAD_NAMETYPE:
++ error = "GSS_S_BAD_NAMETYPE";
++ break;
++ case GSS_S_BAD_BINDINGS:
++ error = "GSS_S_BAD_BINDINGS";
++ break;
++ case GSS_S_BAD_STATUS:
++ error = "GSS_S_BAD_STATUS";
++ break;
++ case GSS_S_BAD_SIG:
++ error = "GSS_S_BAD_SIG";
++ break;
++ case GSS_S_NO_CRED:
++ error = "GSS_S_NO_CRED";
++ break;
++ case GSS_S_NO_CONTEXT:
++ error = "GSS_S_NO_CONTEXT";
++ break;
++ case GSS_S_DEFECTIVE_TOKEN:
++ error = "GSS_S_DEFECTIVE_TOKEN";
++ break;
++ case GSS_S_DEFECTIVE_CREDENTIAL:
++ error = "GSS_S_DEFECTIVE_CREDENTIAL";
++ break;
++ case GSS_S_CREDENTIALS_EXPIRED:
++ error = "GSS_S_CREDENTIALS_EXPIRED";
++ break;
++ case GSS_S_CONTEXT_EXPIRED:
++ error = "GSS_S_CONTEXT_EXPIRED";
++ break;
++ case GSS_S_FAILURE:
++ error = "GSS_S_FAILURE";
++ break;
++ case GSS_S_BAD_QOP:
++ error = "GSS_S_BAD_QOP";
++ break;
++ case GSS_S_UNAUTHORIZED:
++ error = "GSS_S_UNAUTHORIZED";
++ break;
++ case GSS_S_UNAVAILABLE:
++ error = "GSS_S_UNAVAILABLE";
++ break;
++ case GSS_S_DUPLICATE_ELEMENT:
++ error = "GSS_S_DUPLICATE_ELEMENT";
++ break;
++ case GSS_S_NAME_NOT_MN:
++ error = "GSS_S_NAME_NOT_MN";
++ break;
++ default:
++ error = "Not defined";
++ }
++ return error;
++}
+
+ static void
+ display_status_2(char *m, u_int32_t major, u_int32_t minor, const gss_OID mech)
+@@ -175,8 +252,8 @@ display_status_2(char *m, u_int32_t majo
+
+ if (major == GSS_S_CREDENTIALS_EXPIRED)
+ msg_verbosity = 1;
+- printerr(msg_verbosity, "ERROR: GSS-API: error in %s(): %s - %s\n",
+- m, maj, min);
++ printerr(msg_verbosity, "ERROR: GSS-API: error in %s(): %s (%s) - %s(%s)\n",
++ m, gss_display_error(major), maj, min);
+
+ if (maj_gss_buf.length != 0)
+ (void) gss_release_buffer(&min_stat1, &maj_gss_buf);
+diff -up nfs-utils-1.2.3/utils/gssd/svcgssd.c.orig nfs-utils-1.2.3/utils/gssd/svcgssd.c
+--- nfs-utils-1.2.3/utils/gssd/svcgssd.c.orig 2010-09-28 08:24:16.000000000 -0400
++++ nfs-utils-1.2.3/utils/gssd/svcgssd.c 2011-01-14 13:27:17.509607936 -0500
+@@ -267,6 +267,7 @@ main(int argc, char *argv[])
+ if (!fg)
+ release_parent();
+
++ nfs4_init_name_mapping(NULL); /* XXX: should only do this once */
+ gssd_run();
+ printerr(0, "gssd_run returned!\n");
+ abort();
+diff -up nfs-utils-1.2.3/utils/gssd/svcgssd_proc.c.orig nfs-utils-1.2.3/utils/gssd/svcgssd_proc.c
+--- nfs-utils-1.2.3/utils/gssd/svcgssd_proc.c.orig 2010-09-28 08:24:16.000000000 -0400
++++ nfs-utils-1.2.3/utils/gssd/svcgssd_proc.c 2011-01-14 13:27:17.510608139 -0500
+@@ -241,7 +241,7 @@ get_ids(gss_name_t client_name, gss_OID
+ "file for name '%s'\n", sname);
+ goto out_free;
+ }
+- nfs4_init_name_mapping(NULL); /* XXX: should only do this once */
++
+ res = nfs4_gss_princ_to_ids(secname, sname, &uid, &gid);
+ if (res < 0) {
+ /*
diff -up nfs-utils-1.2.3/utils/idmapd/idmapd.c.orig nfs-utils-1.2.3/utils/idmapd/idmapd.c
--- nfs-utils-1.2.3/utils/idmapd/idmapd.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/idmapd/idmapd.c 2010-11-29 11:18:48.353596932 -0500
++++ nfs-utils-1.2.3/utils/idmapd/idmapd.c 2011-01-14 13:27:17.513608747 -0500
@@ -158,10 +158,6 @@ static int nfsdopenone(struct idmap_clie
static void nfsdreopen_one(struct idmap_client *);
static void nfsdreopen(void);
@@ -756,7 +1016,7 @@ diff -up nfs-utils-1.2.3/utils/idmapd/idmapd.c.orig nfs-utils-1.2.3/utils/idmapd
diff -up nfs-utils-1.2.3/utils/idmapd/Makefile.am.orig nfs-utils-1.2.3/utils/idmapd/Makefile.am
--- nfs-utils-1.2.3/utils/idmapd/Makefile.am.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/idmapd/Makefile.am 2010-11-29 11:18:48.352597045 -0500
++++ nfs-utils-1.2.3/utils/idmapd/Makefile.am 2011-01-14 13:27:17.512608544 -0500
@@ -11,12 +11,8 @@ EXTRA_DIST = \
idmapd.conf
@@ -772,7 +1032,7 @@ diff -up nfs-utils-1.2.3/utils/idmapd/Makefile.am.orig nfs-utils-1.2.3/utils/idm
diff -up nfs-utils-1.2.3/utils/Makefile.am.orig nfs-utils-1.2.3/utils/Makefile.am
--- nfs-utils-1.2.3/utils/Makefile.am.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/Makefile.am 2010-11-29 11:18:48.351597145 -0500
++++ nfs-utils-1.2.3/utils/Makefile.am 2011-01-14 13:27:17.509607935 -0500
@@ -4,6 +4,9 @@ OPTDIRS =
if CONFIG_NFSV4
@@ -785,7 +1045,7 @@ diff -up nfs-utils-1.2.3/utils/Makefile.am.orig nfs-utils-1.2.3/utils/Makefile.a
if CONFIG_GSS
diff -up nfs-utils-1.2.3/utils/mountd/mountd.c.orig nfs-utils-1.2.3/utils/mountd/mountd.c
--- nfs-utils-1.2.3/utils/mountd/mountd.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mountd/mountd.c 2010-11-29 11:18:48.362595959 -0500
++++ nfs-utils-1.2.3/utils/mountd/mountd.c 2011-01-14 13:27:17.521610371 -0500
@@ -99,12 +99,9 @@ static int version_any(void)
static void
unregister_services (void)
@@ -812,7 +1072,7 @@ diff -up nfs-utils-1.2.3/utils/mountd/mountd.c.orig nfs-utils-1.2.3/utils/mountd
MOUNTVERS, mount_dispatch, port);
diff -up nfs-utils-1.2.3/utils/mountd/mountd.man.orig nfs-utils-1.2.3/utils/mountd/mountd.man
--- nfs-utils-1.2.3/utils/mountd/mountd.man.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mountd/mountd.man 2010-11-29 11:18:48.362595959 -0500
++++ nfs-utils-1.2.3/utils/mountd/mountd.man 2011-01-14 13:27:17.522610574 -0500
@@ -106,11 +106,11 @@ This option can be used to request that
.B rpc.mountd
do not offer certain versions of NFS. The current version of
@@ -830,7 +1090,7 @@ diff -up nfs-utils-1.2.3/utils/mountd/mountd.man.orig nfs-utils-1.2.3/utils/moun
Don't advertise TCP for mount.
diff -up nfs-utils-1.2.3/utils/mount/fstab.c.orig nfs-utils-1.2.3/utils/mount/fstab.c
--- nfs-utils-1.2.3/utils/mount/fstab.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/fstab.c 2010-11-29 11:18:48.354596817 -0500
++++ nfs-utils-1.2.3/utils/mount/fstab.c 2011-01-14 13:27:17.513608747 -0500
@@ -364,19 +364,22 @@ lock_mtab (void) {
/* Repeat until it was us who made the link */
while (!we_created_lockfile) {
@@ -888,7 +1148,7 @@ diff -up nfs-utils-1.2.3/utils/mount/fstab.c.orig nfs-utils-1.2.3/utils/mount/fs
die (EX_FILEIO, _("Cannot create link %s\n"
diff -up nfs-utils-1.2.3/utils/mount/mount_config.h.orig nfs-utils-1.2.3/utils/mount/mount_config.h
--- nfs-utils-1.2.3/utils/mount/mount_config.h.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/mount_config.h 2010-11-29 11:18:48.355596703 -0500
++++ nfs-utils-1.2.3/utils/mount/mount_config.h 2011-01-14 13:27:17.514608950 -0500
@@ -1,7 +1,7 @@
-#ifndef _LINUX_MOUNT__CONFIG_H
-#define _LINUX_MOUNT_CONFIG__H
@@ -946,7 +1206,7 @@ diff -up nfs-utils-1.2.3/utils/mount/mount_config.h.orig nfs-utils-1.2.3/utils/m
+#endif /* _LINUX_MOUNT_CONFIG_H */
diff -up nfs-utils-1.2.3/utils/mount/mount_constants.h.orig nfs-utils-1.2.3/utils/mount/mount_constants.h
--- nfs-utils-1.2.3/utils/mount/mount_constants.h.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/mount_constants.h 2010-11-29 11:18:48.355596703 -0500
++++ nfs-utils-1.2.3/utils/mount/mount_constants.h 2011-01-14 13:27:17.515609153 -0500
@@ -64,4 +64,8 @@ if we have a stack or plain mount - moun
#define MS_MGC_MSK 0xffff0000 /* magic flag number mask */
#endif
@@ -958,7 +1218,7 @@ diff -up nfs-utils-1.2.3/utils/mount/mount_constants.h.orig nfs-utils-1.2.3/util
#endif /* _NFS_UTILS_MOUNT_CONSTANTS_H */
diff -up nfs-utils-1.2.3/utils/mount/mount.c.orig nfs-utils-1.2.3/utils/mount/mount.c
--- nfs-utils-1.2.3/utils/mount/mount.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/mount.c 2010-11-29 11:18:48.354596817 -0500
++++ nfs-utils-1.2.3/utils/mount/mount.c 2011-01-14 13:27:17.514608950 -0500
@@ -209,7 +209,7 @@ static char *fix_opts_string(int flags,
}
if (flags & MS_USERS)
@@ -1063,7 +1323,7 @@ diff -up nfs-utils-1.2.3/utils/mount/mount.c.orig nfs-utils-1.2.3/utils/mount/mo
int main(int argc, char *argv[])
diff -up nfs-utils-1.2.3/utils/mount/network.c.orig nfs-utils-1.2.3/utils/mount/network.c
--- nfs-utils-1.2.3/utils/mount/network.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/network.c 2010-11-29 11:18:48.357596482 -0500
++++ nfs-utils-1.2.3/utils/mount/network.c 2011-01-14 13:27:17.516609356 -0500
@@ -59,6 +59,8 @@
#define CONNECT_TIMEOUT (20)
#define MOUNT_TIMEOUT (30)
@@ -1201,7 +1461,7 @@ diff -up nfs-utils-1.2.3/utils/mount/network.c.orig nfs-utils-1.2.3/utils/mount/
/*
diff -up nfs-utils-1.2.3/utils/mount/nfs.man.orig nfs-utils-1.2.3/utils/mount/nfs.man
--- nfs-utils-1.2.3/utils/mount/nfs.man.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/nfs.man 2010-11-29 11:18:48.358596373 -0500
++++ nfs-utils-1.2.3/utils/mount/nfs.man 2011-01-14 13:27:17.518609762 -0500
@@ -69,10 +69,9 @@ for details on specifying raw IPv6 addre
.P
The
@@ -1366,7 +1626,7 @@ diff -up nfs-utils-1.2.3/utils/mount/nfs.man.orig nfs-utils-1.2.3/utils/mount/nf
Before 2.4.20, the Linux NFS client used a heuristic
diff -up nfs-utils-1.2.3/utils/mount/nfsumount.c.orig nfs-utils-1.2.3/utils/mount/nfsumount.c
--- nfs-utils-1.2.3/utils/mount/nfsumount.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/nfsumount.c 2010-11-29 11:18:48.359596267 -0500
++++ nfs-utils-1.2.3/utils/mount/nfsumount.c 2011-01-14 13:27:17.518609762 -0500
@@ -31,12 +31,16 @@
#include "nls.h"
@@ -1531,7 +1791,7 @@ diff -up nfs-utils-1.2.3/utils/mount/nfsumount.c.orig nfs-utils-1.2.3/utils/moun
ret = nfs_umount23(spec, "tcp,v3");
diff -up nfs-utils-1.2.3/utils/mount/parse_opt.c.orig nfs-utils-1.2.3/utils/mount/parse_opt.c
--- nfs-utils-1.2.3/utils/mount/parse_opt.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/parse_opt.c 2010-11-29 11:18:48.359596267 -0500
++++ nfs-utils-1.2.3/utils/mount/parse_opt.c 2011-01-14 13:27:17.519609965 -0500
@@ -508,7 +508,7 @@ po_found_t po_get_numeric(struct mount_o
int po_rightmost(struct mount_options *options, const char *keys[])
{
@@ -1543,7 +1803,7 @@ diff -up nfs-utils-1.2.3/utils/mount/parse_opt.c.orig nfs-utils-1.2.3/utils/moun
for (option = options->tail; option; option = option->prev) {
diff -up nfs-utils-1.2.3/utils/mount/stropts.c.orig nfs-utils-1.2.3/utils/mount/stropts.c
--- nfs-utils-1.2.3/utils/mount/stropts.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/stropts.c 2010-11-29 11:18:48.360596162 -0500
++++ nfs-utils-1.2.3/utils/mount/stropts.c 2011-01-14 13:27:17.520610168 -0500
@@ -49,10 +49,6 @@
#include "parse_dev.h"
#include "conffile.h"
@@ -1636,7 +1896,7 @@ diff -up nfs-utils-1.2.3/utils/mount/stropts.c.orig nfs-utils-1.2.3/utils/mount/
ret = nfs_do_mount_v4(mi, ai->ai_addr, ai->ai_addrlen);
diff -up nfs-utils-1.2.3/utils/mount/version.h.orig nfs-utils-1.2.3/utils/mount/version.h
--- nfs-utils-1.2.3/utils/mount/version.h.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/mount/version.h 2010-11-29 11:18:48.361596059 -0500
++++ nfs-utils-1.2.3/utils/mount/version.h 2011-01-14 13:27:17.521610371 -0500
@@ -42,9 +42,9 @@ static inline unsigned int linux_version
if (uname(&my_utsname))
return 0;
@@ -1651,8 +1911,8 @@ diff -up nfs-utils-1.2.3/utils/mount/version.h.orig nfs-utils-1.2.3/utils/mount/
}
diff -up nfs-utils-1.2.3/utils/nfsidmap/Makefile.am.orig nfs-utils-1.2.3/utils/nfsidmap/Makefile.am
---- nfs-utils-1.2.3/utils/nfsidmap/Makefile.am.orig 2010-11-29 11:18:48.363595859 -0500
-+++ nfs-utils-1.2.3/utils/nfsidmap/Makefile.am 2010-11-29 11:18:48.363595859 -0500
+--- nfs-utils-1.2.3/utils/nfsidmap/Makefile.am.orig 2011-01-14 13:27:17.523610776 -0500
++++ nfs-utils-1.2.3/utils/nfsidmap/Makefile.am 2011-01-14 13:27:17.523610776 -0500
@@ -0,0 +1,9 @@
+## Process this file with automake to produce Makefile.in
+
@@ -1664,8 +1924,8 @@ diff -up nfs-utils-1.2.3/utils/nfsidmap/Makefile.am.orig nfs-utils-1.2.3/utils/n
+
+MAINTAINERCLEANFILES = Makefile.in
diff -up nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.c.orig nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.c
---- nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.c.orig 2010-11-29 11:18:48.363595859 -0500
-+++ nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.c 2010-11-29 11:18:48.363595859 -0500
+--- nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.c.orig 2011-01-14 13:27:17.523610776 -0500
++++ nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.c 2011-01-14 13:27:17.523610776 -0500
@@ -0,0 +1,118 @@
+
+#include <stdarg.h>
@@ -1786,8 +2046,8 @@ diff -up nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.c.orig nfs-utils-1.2.3/utils/nf
+ return rc;
+}
diff -up nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.man.orig nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.man
---- nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.man.orig 2010-11-29 11:18:48.364595762 -0500
-+++ nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.man 2010-11-29 11:18:48.364595762 -0500
+--- nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.man.orig 2011-01-14 13:27:17.523610777 -0500
++++ nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.man 2011-01-14 13:27:17.532612603 -0500
@@ -0,0 +1,60 @@
+.\"
+.\"@(#)nfsidmap(8) - The NFS idmapper upcall program
@@ -1851,7 +2111,7 @@ diff -up nfs-utils-1.2.3/utils/nfsidmap/nfsidmap.man.orig nfs-utils-1.2.3/utils/
+Bryan Schumaker, <bjschuma at netapp.com>
diff -up nfs-utils-1.2.3/utils/nfsstat/nfsstat.c.orig nfs-utils-1.2.3/utils/nfsstat/nfsstat.c
--- nfs-utils-1.2.3/utils/nfsstat/nfsstat.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/nfsstat/nfsstat.c 2010-11-29 11:18:48.365595665 -0500
++++ nfs-utils-1.2.3/utils/nfsstat/nfsstat.c 2011-01-14 13:27:17.532612603 -0500
@@ -46,7 +46,7 @@ static unsigned int cltproc3info[CLTPROC
static unsigned int srvproc4info[SRVPROC4_SZ+2],
srvproc4info_old[SRVPROC4_SZ+2]; /* NFSv4 call counts ([0] == 2) */
@@ -2113,7 +2373,7 @@ diff -up nfs-utils-1.2.3/utils/nfsstat/nfsstat.c.orig nfs-utils-1.2.3/utils/nfss
has_rpcstats(const unsigned int *info, int size)
diff -up nfs-utils-1.2.3/utils/nfsstat/nfsstat.man.orig nfs-utils-1.2.3/utils/nfsstat/nfsstat.man
--- nfs-utils-1.2.3/utils/nfsstat/nfsstat.man.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/nfsstat/nfsstat.man 2010-11-29 11:18:48.366595571 -0500
++++ nfs-utils-1.2.3/utils/nfsstat/nfsstat.man 2011-01-14 13:27:17.541614429 -0500
@@ -30,10 +30,12 @@ Print only NFS v2 statistics. The defaul
about the versions of \fBNFS\fR that have non-zero counts.
.TP
@@ -2131,7 +2391,7 @@ diff -up nfs-utils-1.2.3/utils/nfsstat/nfsstat.man.orig nfs-utils-1.2.3/utils/nf
Print information about each of the mounted \fBNFS\fR file systems.
diff -up nfs-utils-1.2.3/utils/statd/hostname.c.orig nfs-utils-1.2.3/utils/statd/hostname.c
--- nfs-utils-1.2.3/utils/statd/hostname.c.orig 2010-09-28 08:24:16.000000000 -0400
-+++ nfs-utils-1.2.3/utils/statd/hostname.c 2010-11-29 11:18:48.366595571 -0500
++++ nfs-utils-1.2.3/utils/statd/hostname.c 2011-01-14 13:27:17.541614430 -0500
@@ -39,10 +39,6 @@
#include "statd.h"
#include "xlog.h"
@@ -2144,20 +2404,21 @@ diff -up nfs-utils-1.2.3/utils/statd/hostname.c.orig nfs-utils-1.2.3/utils/statd
* statd_present_address - convert sockaddr to presentation address
* @sap: pointer to socket address to convert
diff -up nfs-utils-1.2.3/utils/statd/sm-notify.c.orig nfs-utils-1.2.3/utils/statd/sm-notify.c
---- nfs-utils-1.2.3/utils/statd/sm-notify.c.orig 2010-11-29 11:17:26.908868990 -0500
-+++ nfs-utils-1.2.3/utils/statd/sm-notify.c 2010-11-29 11:18:48.367595478 -0500
-@@ -37,10 +37,6 @@
+--- nfs-utils-1.2.3/utils/statd/sm-notify.c.orig 2011-01-14 13:22:07.100643922 -0500
++++ nfs-utils-1.2.3/utils/statd/sm-notify.c 2011-01-14 13:27:17.543614834 -0500
+@@ -37,8 +37,9 @@
#include "nsm.h"
#include "nfsrpc.h"
-#ifndef HAVE_DECL_AI_ADDRCONFIG
-#define AI_ADDRCONFIG 0
--#endif
--
- #define NSM_TIMEOUT 2
- #define NSM_MAX_TIMEOUT 120 /* don't make this too big */
++/* glibc before 2.3.4 */
++#ifndef AI_NUMERICSERV
++#define AI_NUMERICSERV 0
+ #endif
-@@ -81,7 +77,6 @@ smn_lookup(const char *name)
+ #define NSM_TIMEOUT 2
+@@ -81,7 +82,6 @@ smn_lookup(const char *name)
{
struct addrinfo *ai = NULL;
struct addrinfo hint = {
@@ -2165,3 +2426,11 @@ diff -up nfs-utils-1.2.3/utils/statd/sm-notify.c.orig nfs-utils-1.2.3/utils/stat
.ai_family = (nsm_family == AF_INET ? AF_INET: AF_UNSPEC),
.ai_protocol = (int)IPPROTO_UDP,
};
+@@ -257,6 +257,7 @@ smn_bind_address(const char *srcaddr, co
+ if (srcaddr == NULL)
+ hint.ai_flags |= AI_PASSIVE;
+
++ /* Do not allow "node" and "service" parameters both to be NULL */
+ if (srcport == NULL)
+ error = getaddrinfo(srcaddr, "", &hint, &ai);
+ else
diff --git a/nfs-utils.spec b/nfs-utils.spec
index ecddac1..41969a9 100644
--- a/nfs-utils.spec
+++ b/nfs-utils.spec
@@ -2,7 +2,7 @@ Summary: NFS utilities and supporting clients and daemons for the kernel NFS ser
Name: nfs-utils
URL: http://sourceforge.net/projects/nfs
Version: 1.2.3
-Release: 6%{?dist}
+Release: 7%{?dist}
Epoch: 1
# group all 32bit related archs
@@ -17,7 +17,7 @@ Source13: rpcgssd.init
Source14: rpcsvcgssd.init
Source15: nfs.sysconfig
-Patch001: nfs-utils-1.2.4-rc4.patch
+Patch001: nfs-utils-1.2.4-rc5.patch
Patch100: nfs-utils-1.2.1-statdpath-man.patch
Patch101: nfs-utils-1.2.2-statdpath.patch
@@ -253,6 +253,9 @@ fi
%attr(4755,root,root) /sbin/umount.nfs4
%changelog
+* Fri Jan 14 2011 Steve Dickson <steved at redhat.com> 1.2.3-7
+- Updated to latest upstream release: nfs-utils-1-2-4-rc5
+
* Mon Dec 13 2010 Steve Dickson <steved at redhat.com> 1.2.3-6
- Updated to latest upstream release: nfs-utils-1-2-4-rc4
More information about the scm-commits
mailing list