diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2017-08-01 20:02:47 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-08-11 15:49:28 (GMT) |
commit | f7d3e54fb40cfc6f829b8f8ad3aab026714f2ffc (patch) | |
tree | f82f5275203cf3a98c6ba25a774ceb46b6e3b266 /include/linux/nfs_xdr.h | |
parent | f5214eb4baf87b0134acf98c29150071fa3b815c (diff) | |
download | linux-f7d3e54fb40cfc6f829b8f8ad3aab026714f2ffc.tar.xz |
NFSv4: Fix EXCHANGE_ID corrupt verifier issue
commit fd40559c8657418385e42f797e0b04bfc0add748 upstream.
The verifier is allocated on the stack, but the EXCHANGE_ID RPC call was
changed to be asynchronous by commit 8d89bd70bc939. If we interrrupt
the call to rpc_wait_for_completion_task(), we can therefore end up
transmitting random stack contents in lieu of the verifier.
Fixes: 8d89bd70bc939 ("NFS setup async exchange_id")
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/nfs_xdr.h')
-rw-r--r-- | include/linux/nfs_xdr.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index beb1e10..3bf867a 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h @@ -1199,7 +1199,7 @@ struct nfs41_state_protection { struct nfs41_exchange_id_args { struct nfs_client *client; - nfs4_verifier *verifier; + nfs4_verifier verifier; u32 flags; struct nfs41_state_protection state_protect; }; |