lkml.org 
[lkml]   [2002]   [Aug]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subjectpatch 24/38: SERVER: change ->rq_vers==3 to ->rq_vers>2

    In a few places on the server, I had to change code that looked like:

    if (rqstp->rq_vers == 3)
    /* NFSv3 behavior */
    else
    /* NFSv2 behavior */

    to:

    if (rqstp->rq_vers > 2)
    /* NFSv3 behavior */
    else
    /* NFSv2 behavior */

    so that we would get the NFSv3 behavior, not the NFSv2 behavior,
    in NFSv4. This patch collects all changes of this type.

    --- old/fs/nfsd/nfsfh.c Tue Jul 30 22:12:36 2002
    +++ new/fs/nfsd/nfsfh.c Mon Jul 29 12:39:43 2002
    @@ -107,7 +107,7 @@ fh_verify(struct svc_rqst *rqstp, struct
    int fsid = 0;

    error = nfserr_stale;
    - if (rqstp->rq_vers == 3)
    + if (rqstp->rq_vers > 2)
    error = nfserr_badhandle;

    if (fh->fh_version == 1) {
    @@ -171,7 +171,7 @@ fh_verify(struct svc_rqst *rqstp, struct
    * Look up the dentry using the NFS file handle.
    */
    error = nfserr_stale;
    - if (rqstp->rq_vers == 3)
    + if (rqstp->rq_vers > 2)
    error = nfserr_badhandle;

    if (fh->fh_version != 1) {
    --- old/fs/nfsd/vfs.c Tue Jul 30 22:12:36 2002
    +++ new/fs/nfsd/vfs.c Mon Jul 29 12:39:43 2002
    @@ -1401,7 +1401,7 @@ nfsd_readdir(struct svc_rqst *rqstp, str
    eof = !cd.eob;

    if (cd.offset) {
    - if (rqstp->rq_vers == 3)
    + if (rqstp->rq_vers > 2)
    (void)xdr_encode_hyper(cd.offset, file.f_pos);
    else
    *cd.offset = htonl(file.f_pos);
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:22    [W:0.023 / U:3.044 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site