Date: Fri, 8 Jun 2012 16:16:04 +0000 (UTC) From: Rick Macklem <rmacklem@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r236758 - projects/nfsv4.1-client/sys/fs/nfsclient Message-ID: <201206081616.q58GG4Pv069856@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
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);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201206081616.q58GG4Pv069856>