]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
nfs: verify open flags before allowing open
authorBenjamin Coddington <bcodding@redhat.com>
Thu, 25 Jun 2015 13:25:50 +0000 (09:25 -0400)
committerTrond Myklebust <trond.myklebust@primarydata.com>
Thu, 25 Jun 2015 23:38:00 +0000 (19:38 -0400)
commit18a600897212c1480eb635112baeab017babfc83
tree895c037a1c1c0cfd910085d0e112d810cd025322
parent0c8315dd56577445dd1afe6b9cfa06b7efdf2f82
nfs: verify open flags before allowing open

Commit 9597c13b forbade opens with O_APPEND|O_DIRECT for NFSv4:

    nfs: verify open flags before allowing an atomic open

    Currently, you can open a NFSv4 file with O_APPEND|O_DIRECT, but cannot
    fcntl(F_SETFL,...) with those flags. This flag combination is explicitly
    forbidden on NFSv3 opens, and it seems like it should also be on NFSv4.

However, you can still open a file with O_DIRECT|O_APPEND if there exists a
cached dentry for the file because nfs4_file_open() is used instead of
nfs_atomic_open() and the check is bypassed.  Add the check in
nfs4_file_open() as well.

Signed-off-by: Benjamin Coddington <bcodding@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
fs/nfs/nfs4file.c