diff options
author | Trond Myklebust <trondmy@gmail.com> | 2019-04-09 19:13:37 +0300 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2019-04-24 16:46:35 +0300 |
commit | 4df493a260d4c1844437b28009013d5dc408d0df (patch) | |
tree | 82fe51b97a8743281bbf7d40cdbeef9af50614bf /include/linux/sunrpc/svcsock.h | |
parent | e333f3bbefe3e25e2bcff58063f920a2eaba224b (diff) | |
download | linux-4df493a260d4c1844437b28009013d5dc408d0df.tar.xz |
SUNRPC: Cache the process user cred in the RPC server listener
In order to be able to interpret uids and gids correctly in knfsd, we
should cache the user namespace of the process that created the RPC
server's listener. To do so, we refcount the credential of that process.
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'include/linux/sunrpc/svcsock.h')
-rw-r--r-- | include/linux/sunrpc/svcsock.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/sunrpc/svcsock.h b/include/linux/sunrpc/svcsock.h index 119718a922f2..771baadaee9d 100644 --- a/include/linux/sunrpc/svcsock.h +++ b/include/linux/sunrpc/svcsock.h @@ -59,7 +59,8 @@ void svc_drop(struct svc_rqst *); void svc_sock_update_bufs(struct svc_serv *serv); bool svc_alien_sock(struct net *net, int fd); int svc_addsock(struct svc_serv *serv, const int fd, - char *name_return, const size_t len); + char *name_return, const size_t len, + const struct cred *cred); void svc_init_xprt_sock(void); void svc_cleanup_xprt_sock(void); struct svc_xprt *svc_sock_create(struct svc_serv *serv, int prot); |