be8827d700
- Added -o nordirplus mount option to disable READDIRPLUS (bz 240357) - Disabled the FSCache patch, for now...
46 lines
1.7 KiB
Diff
46 lines
1.7 KiB
Diff
--- nfs-utils-1.0.10/utils/mount/nfs_mount.h.orig 2007-05-15 09:54:09.293871000 -0400
|
|
+++ nfs-utils-1.0.10/utils/mount/nfs_mount.h 2007-05-15 09:55:02.842057000 -0400
|
|
@@ -63,6 +63,7 @@ struct nfs_mount_data {
|
|
#define NFS_MOUNT_BROKEN_SUID 0x0400 /* 4 */
|
|
#define NFS_MOUNT_NOACL 0x0800 /* 4 */
|
|
#define NFS_MOUNT_SECFLAVOUR 0x2000 /* 5 */
|
|
+#define NFS_MOUNT_NORDIRPLUS 0x4000 /* 5 */
|
|
|
|
/* security pseudoflavors */
|
|
|
|
--- nfs-utils-1.0.10/utils/mount/nfsmount.c.orig 2007-05-15 09:54:09.331833000 -0400
|
|
+++ nfs-utils-1.0.10/utils/mount/nfsmount.c 2007-05-15 09:55:02.852057000 -0400
|
|
@@ -762,6 +762,10 @@ parse_options(char *old_opts, struct nfs
|
|
data->flags &= ~NFS_MOUNT_NOACL;
|
|
if (!val)
|
|
data->flags |= NFS_MOUNT_NOACL;
|
|
+ } else if (!strcmp(opt, "rdirplus")) {
|
|
+ data->flags &= ~NFS_MOUNT_NORDIRPLUS;
|
|
+ if (!val)
|
|
+ data->flags |= NFS_MOUNT_NORDIRPLUS;
|
|
#endif
|
|
} else {
|
|
bad_option:
|
|
@@ -947,6 +951,7 @@ nfsmount(const char *spec, const char *n
|
|
#endif
|
|
#if NFS_MOUNT_VERSION >= 5
|
|
printf("sec = %u ", data.pseudoflavor);
|
|
+ printf("readdirplus = %d ", (data.flags & NFS_MOUNT_NORDIRPLUS) != 0);
|
|
#endif
|
|
printf("\n");
|
|
#endif
|
|
--- nfs-utils-1.0.10/utils/mount/nfs.man.orig 2007-05-15 09:54:09.210933000 -0400
|
|
+++ nfs-utils-1.0.10/utils/mount/nfs.man 2007-05-15 09:55:02.860057000 -0400
|
|
@@ -272,6 +272,11 @@ default UDP protocol. Many NFS servers
|
|
.I udp
|
|
Mount the NFS filesystem using the UDP protocol. This
|
|
is the default.
|
|
+.TP 1.5i
|
|
+.I nordirplus
|
|
+Disables NFSv3 READDIRPLUS RPCs. Use this options when
|
|
+mounting servers that don't support or have broken
|
|
+READDIRPLUS implementations.
|
|
.P
|
|
All of the non-value options have corresponding nooption forms.
|
|
For example, nointr means don't allow file operations to be
|