walters / rpms / nfs-utils

Forked from rpms/nfs-utils 6 years ago
Clone
500795b
commit 26a14b65991b79d317638f78dc6b4e5ac1ef712e
500795b
Author: Neil Brown <neilb@suse.de>
500795b
Date:   Mon Dec 7 17:23:48 2009 -0500
500795b
500795b
    mount.nfs: Retry v4 mounts with v3 on ENOENT errors
500795b
    
500795b
    Retry v4 mounts with a v3 mount when the version
500795b
    is not explicitly specified and the mount fails
500795b
    with ENOENT. The will help deal with Linux servers
500795b
    that do not automatically export a pseudo root
500795b
    
500795b
    Signed-off-by: Steve Dickson <steved@redhat.com>
500795b
500795b
diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c
500795b
index a0b9e7f..4007150 100644
500795b
--- a/utils/mount/stropts.c
500795b
+++ b/utils/mount/stropts.c
500795b
@@ -668,9 +668,10 @@ static int nfs_try_mount(struct nfsmount_info *mi)
500795b
 				/* 
500795b
 				 * To deal with legacy Linux servers that don't
500795b
 				 * automatically export a pseudo root, retry
500795b
-				 * ENOENT errors using version 3
500795b
+				 * ENOENT errors using version 3. And for
500795b
+				 * Linux servers prior to 2.6.25, retry EPERM
500795b
 				 */
500795b
-				if (errno != ENOENT)
500795b
+				if (errno != ENOENT && errno != EPERM)
500795b
 					break;
500795b
 			}
500795b
 		}