sunrpc: parse and return errors reported by gssd
authorJeff Layton <jlayton@redhat.com>
Thu, 7 Jan 2010 14:42:02 +0000 (09:42 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Wed, 10 Feb 2010 13:30:50 +0000 (08:30 -0500)
commitdc5ddce956660247e004a4b20a26b7d137ab1644
tree8e067bfb6f1fc84adf76a9370e35fbad77dd4636
parentac73fddfc523bf3c3525d16356b44527c44fae6d
sunrpc: parse and return errors reported by gssd

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: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
net/sunrpc/auth_gss/auth_gss.c