Date: Thu, 31 Oct 2002 14:35:04 -0800 (PST) From: Jeff Roberson <jeff@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/nfsserver nfs_serv.c nfs_srvsubs.c nfsm_subs.h Message-ID: <200210312235.g9VMZ420024524@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jeff 2002/10/31 14:35:04 PST
Modified files:
sys/nfsserver nfs_serv.c nfs_srvsubs.c nfsm_subs.h
Log:
- Introduce a new macro, since that's what nfs loves, called
nfsm_srvpathsiz. This macro plucks a length out of an rpc request and
verifies that its size does not exceed NFS_MAXPATHLEN. If it does
it generates an ENAMETOOLONG response.
- Use this macro, and the existing nfsm_srvnamsiz macro in two places
where we deal with paths passed in by the client.
This fixes a linux interoperability bug. Linux was sending oversized path
components which would cause us to ignore the request all together. This
causes linux to hang indefinitly while it waits for a response. This
could still happen in other cases where we error out with EBADRPC.
Sponsored by: Isilon Systems, Inc.
Reviewed by: alfred, fabbri@isilon.com, neal@isilon.com
Revision Changes Path
1.125 +2 -2 src/sys/nfsserver/nfs_serv.c
1.118 +2 -2 src/sys/nfsserver/nfs_srvsubs.c
1.34 +12 -2 src/sys/nfsserver/nfsm_subs.h
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210312235.g9VMZ420024524>
