svn commit: r236758 - projects/nfsv4.1-client/sys/fs/nfsclient
Rick Macklem
rmacklem at FreeBSD.org
Fri Jun 8 16:16:04 UTC 2012
Author: rmacklem
Date: Fri Jun 8 16:16:03 2012
New Revision: 236758
URL: http://svn.freebsd.org/changeset/base/236758
Log:
Fix the NFSv4.1 client so that it returns ENOENT instead of EIO
for the case where a server replies NFSERR_BADNAME or NFSERR_BADCHAR.
This works better for servers that reply NFSERR_BADNAME/NFSERR_BADCHAR
for "*.sh" when there is nothing for the shell to expand.
Modified:
projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clport.c
Modified: projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clport.c
==============================================================================
--- projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clport.c Fri Jun 8 16:12:58 2012 (r236757)
+++ projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clport.c Fri Jun 8 16:16:03 2012 (r236758)
@@ -1118,6 +1118,10 @@ nfscl_maperr(struct thread *td, int erro
"No name and/or group mapping for uid,gid:(%d,%d)\n",
uid, gid);
return (EPERM);
+ case NFSERR_BADNAME:
+ case NFSERR_BADCHAR:
+ printf("nfsv4 char/name not handled by server\n");
+ return (ENOENT);
case NFSERR_STALECLIENTID:
case NFSERR_STALESTATEID:
case NFSERR_EXPIRED:
@@ -1138,8 +1142,6 @@ nfscl_maperr(struct thread *td, int erro
case NFSERR_LEASEMOVED:
case NFSERR_RECLAIMBAD:
case NFSERR_BADXDR:
- case NFSERR_BADCHAR:
- case NFSERR_BADNAME:
case NFSERR_OPILLEGAL:
printf("nfsv4 client/server protocol prob err=%d\n",
error);
More information about the svn-src-projects
mailing list