1. 21 8月, 2009 1 次提交
  2. 10 8月, 2009 3 次提交
  3. 29 7月, 2009 11 次提交
  4. 15 7月, 2009 2 次提交
  5. 13 7月, 2009 1 次提交
  6. 03 7月, 2009 1 次提交
    • D
      NFSD: Don't hold unrefcounted creds over call to nfsd_setuser() · 033a666c
      David Howells 提交于
      nfsd_open() gets an unrefcounted pointer to the current process's effective
      credentials at the top of the function, then calls nfsd_setuser() via
      fh_verify() - which may replace and destroy the current process's effective
      credentials - and then passes the unrefcounted pointer to dentry_open() - but
      the credentials may have been destroyed by this point.
      
      Instead, the value from current_cred() should be passed directly to
      dentry_open() as one of its arguments, rather than being cached in a variable.
      
      Possibly fh_verify() should return the creds to use.
      
      This is a regression introduced by
      745ca247 "CRED: Pass credentials through
      dentry_open()".
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Tested-and-Verified-By: NSteve Dickson <steved@redhat.com>
      Cc: stable@kernel.org
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      033a666c
  7. 19 6月, 2009 5 次提交
  8. 17 6月, 2009 2 次提交
  9. 16 6月, 2009 5 次提交
  10. 12 6月, 2009 6 次提交
  11. 02 6月, 2009 2 次提交
    • Y
      NFSv4: kill off complicated macro 'PROC' · 0a93a47f
      Yu Zhiguo 提交于
      J. Bruce Fields wrote:
      ...
      > (This is extremely confusing code to track down: note that
      > proc->pc_decode is set to nfs4svc_decode_compoundargs() by the PROC()
      > macro at the end of fs/nfsd/nfs4proc.c.  Which means, for example, that
      > grepping for nfs4svc_decode_compoundargs() gets you nowhere.  Patches to
      > kill off that macro would be welcomed....)
      
      the macro 'PROC' is complicated and obscure, it had better
      be killed off in order to make the code more clear.
      Signed-off-by: NYu Zhiguo <yuzg@cn.fujitsu.com>
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      0a93a47f
    • Y
      NFSv4: do exact check about attribute specified · 3c8e0316
      Yu Zhiguo 提交于
      Server should return NFS4ERR_ATTRNOTSUPP if an attribute specified is
      not supported in current environment.
      Operations CREATE, NVERIFY, OPEN, SETATTR and VERIFY should do this check.
      
      This bug is found when do newpynfs tests. The names of the tests that failed
      are following:
        CR12 NVF7a NVF7b NVF7c NVF7d NVF7f NVF7r NVF7s
        OPEN15 VF7a VF7b VF7c VF7d VF7f VF7r VF7s
      
      Add function do_check_fattr() to do exact check:
      1, Check attribute specified is supported by the NFSv4 server or not.
      2, Check FATTR4_WORD0_ACL & FATTR4_WORD0_FS_LOCATIONS are supported
         in current environment or not.
      3, Check attribute specified is writable or not.
      
      step 1 and 3 are done in function nfsd4_decode_fattr() but removed
      to this function now.
      Signed-off-by: NYu Zhiguo <yuzg@cn.fujitsu.com>
      Signed-off-by: NJ. Bruce Fields <bfields@citi.umich.edu>
      3c8e0316
  12. 28 5月, 2009 1 次提交
    • M
      integrity: nfsd imbalance bug fix · 14dba533
      Mimi Zohar 提交于
      An nfsd exported file is opened/closed by the kernel causing the
      integrity imbalance message.
      
      Before a file is opened, there normally is permission checking, which
      is done in inode_permission().  However, as integrity checking requires
      a dentry and mount point, which is not available in inode_permission(),
      the integrity (permission) checking must be called separately.
      
      In order to detect any missing integrity checking calls, we keep track
      of file open/closes.  ima_path_check() increments these counts and
      does the integrity (permission) checking. As a result, the number of
      calls to ima_path_check()/ima_file_free() should be balanced.  An extra
      call to fput(), indicates the file could have been accessed without first
      calling ima_path_check().
      
      In nfsv3 permission checking is done once, followed by multiple reads,
      which do an open/close for each read.  The integrity (permission) checking
      call should be in nfsd_permission() after the inode_permission() call, but
      as there is no correlation between the number of permission checking and
      open calls, the integrity checking call should not increment the counters,
      but defer it to when the file is actually opened.
      
      This patch adds:
      - integrity (permission) checking for nfsd exported files in nfsd_permission().
      - a call to increment counts for files opened by nfsd.
      
      This patch has been updated to return the nfs error types.
      Signed-off-by: NMimi Zohar <zohar@us.ibm.com>
      Signed-off-by: NJames Morris <jmorris@namei.org>
      14dba533