1. 13 12月, 2012 1 次提交
  2. 02 10月, 2012 1 次提交
  3. 17 7月, 2012 1 次提交
    • C
      SUNRPC: Add rpcauth_list_flavors() · 6a1a1e34
      Chuck Lever 提交于
      The gss_mech_list_pseudoflavors() function provides a list of
      currently registered GSS pseudoflavors.  This list does not include
      any non-GSS flavors that have been registered with the RPC client.
      nfs4_find_root_sec() currently adds these extra flavors by hand.
      
      Instead, nfs4_find_root_sec() should be looking at the set of flavors
      that have been explicitly registered via rpcauth_register().  And,
      other areas of code will soon need the same kind of list that
      contains all flavors the kernel currently knows about (see below).
      
      Rather than cloning the open-coded logic in nfs4_find_root_sec() to
      those new places, introduce a generic RPC function that generates a
      full list of registered auth flavors and pseudoflavors.
      
      A new rpc_authops method is added that lists a flavor's
      pseudoflavors, if it has any.  I encountered an interesting module
      loader loop when I tried to get the RPC client to invoke
      gss_mech_list_pseudoflavors() by name.
      
      This patch is a pre-requisite for server trunking discovery, and a
      pre-requisite for fixing up the in-kernel mount client to do better
      automatic security flavor selection.
      Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      6a1a1e34
  4. 03 3月, 2012 1 次提交
  5. 01 2月, 2012 9 次提交
  6. 13 1月, 2012 1 次提交
  7. 05 1月, 2012 1 次提交
  8. 19 10月, 2011 1 次提交
  9. 02 8月, 2011 1 次提交
  10. 02 7月, 2011 1 次提交
  11. 17 6月, 2011 1 次提交
  12. 14 4月, 2011 1 次提交
  13. 12 3月, 2011 1 次提交
  14. 08 3月, 2011 1 次提交
  15. 17 12月, 2010 2 次提交
  16. 24 9月, 2010 1 次提交
  17. 13 9月, 2010 1 次提交
    • T
      SUNRPC: Fix race corrupting rpc upcall · 5a67657a
      Trond Myklebust 提交于
      If rpc_queue_upcall() adds a new upcall to the rpci->pipe list just
      after rpc_pipe_release calls rpc_purge_list(), but before it calls
      gss_pipe_release (as rpci->ops->release_pipe(inode)), then the latter
      will free a message without deleting it from the rpci->pipe list.
      
      We will be left with a freed object on the rpc->pipe list.  Most
      frequent symptoms are kernel crashes in rpc.gssd system calls on the
      pipe in question.
      Reported-by: NJ. Bruce Fields <bfields@redhat.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      Cc: stable@kernel.org
      5a67657a
  18. 04 8月, 2010 2 次提交
  19. 15 5月, 2010 5 次提交
  20. 22 3月, 2010 1 次提交
  21. 10 2月, 2010 1 次提交
    • J
      sunrpc: parse and return errors reported by gssd · dc5ddce9
      Jeff Layton 提交于
      The kernel currently ignores any error code sent by gssd and always
      considers it to be -EACCES. In order to better handle the situation of
      an expired KRB5 TGT, the kernel needs to be able to parse and deal with
      the errors that gssd sends. Aside from -EACCES the only error we care
      about is -EKEYEXPIRED, which we're using to indicate that the upper
      layers should retry the call a little later.
      
      To maintain backward compatibility with older gssd's, any error other
      than -EKEYEXPIRED is interpreted as -EACCES.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      dc5ddce9
  22. 07 1月, 2010 1 次提交
  23. 19 12月, 2009 1 次提交
    • J
      sunrpc: on successful gss error pipe write, don't return error · 486bad2e
      Jeff Layton 提交于
      When handling the gssd downcall, the kernel should distinguish between a
      successful downcall that contains an error code and a failed downcall
      (i.e. where the parsing failed or some other sort of problem occurred).
      
      In the former case, gss_pipe_downcall should be returning the number of
      bytes written to the pipe instead of an error. In the event of other
      errors, we generally want the initiating task to retry the upcall so
      we set msg.errno to -EAGAIN. An unexpected error code here is a bug
      however, so BUG() in that case.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Cc: stable@kernel.org
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      486bad2e
  24. 10 12月, 2009 1 次提交
  25. 09 12月, 2009 1 次提交
  26. 10 8月, 2009 1 次提交