nfs-utils/nfs-utils-1.2.2-statdpath.patch

51 lines
2.0 KiB
Diff
Raw Normal View History

diff -up nfs-utils-1.2.2/configure.ac.orig nfs-utils-1.2.2/configure.ac
--- nfs-utils-1.2.2/configure.ac.orig 2010-02-18 07:35:00.000000000 -0500
+++ nfs-utils-1.2.2/configure.ac 2010-02-18 09:15:24.710128679 -0500
@@ -22,6 +22,14 @@ AC_ARG_WITH(statedir,
statedir=$withval,
statedir=/var/lib/nfs)
AC_SUBST(statedir)
+AC_ARG_WITH(statdpath,
+ [AC_HELP_STRING([--with-statdpath=/foo],
+ [Causes statd put it's state file in /foo instead of statedir]
+ )],
+ statdpath=$withval,
+ statdpath=""
+ )
+ AC_SUBST(statdpath)
AC_ARG_WITH(statduser,
[AC_HELP_STRING([--with-statduser=rpcuser],
[statd to run under @<:@rpcuser or nobody@:>@]
@@ -364,6 +372,9 @@ dnl ************************************
dnl Export some path names to config.h
dnl *************************************************************
AC_DEFINE_UNQUOTED(NFS_STATEDIR, "$statedir", [This defines the location of the NFS state files. Warning: this must match definitions in config.mk!])
+if test "$statdpath" != ""; then
+ AC_DEFINE_UNQUOTED(NSM_STATD_PATH, "$statdpath", [Define this if you what statd file placed in somewhere other than NFS_STATEDIR])
+fi
if test "x$cross_compiling" = "xno"; then
CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-"$CFLAGS"}
diff -up nfs-utils-1.2.2/support/nsm/file.c.orig nfs-utils-1.2.2/support/nsm/file.c
--- nfs-utils-1.2.2/support/nsm/file.c.orig 2010-02-18 07:35:00.000000000 -0500
+++ nfs-utils-1.2.2/support/nsm/file.c 2010-02-18 09:15:24.711128045 -0500
@@ -93,12 +93,13 @@
#define NSM_KERNEL_STATE_FILE "/proc/sys/fs/nfs/nsm_local_state"
/*
- * Some distributions place statd's files in a subdirectory
+ * Allow different places for statd's files
*/
-#define NSM_PATH_EXTENSION
-/* #define NSM_PATH_EXTENSION "/statd" */
-
-#define NSM_DEFAULT_STATEDIR NFS_STATEDIR NSM_PATH_EXTENSION
+#ifdef NSM_STATD_PATH
+#define NSM_DEFAULT_STATEDIR NSM_STATD_PATH
+#else
+#define NSM_DEFAULT_STATEDIR NFS_STATEDIR
+#endif
static char nsm_base_dirname[PATH_MAX] = NSM_DEFAULT_STATEDIR;