NFSv4.1: Fix a kfree() of uninitialised pointers in decode_cb_sequence_args
authorTrond Myklebust <trond.myklebust@primarydata.com>
Wed, 11 Feb 2015 22:27:55 +0000 (17:27 -0500)
committerBen Hutchings <ben@decadent.org.uk>
Sat, 9 May 2015 22:16:15 +0000 (23:16 +0100)
commit59195960edc4de55cfa89bdf7e46199ac3638589
treefac5f3d7740f57197fd5d4a0d1b0803d9d0ff6fa
parentf08ebcc0e53b33ea8c6fdfabfbd592ad84a457e5
NFSv4.1: Fix a kfree() of uninitialised pointers in decode_cb_sequence_args

commit d8ba1f971497c19cf80da1ea5391a46a5f9fbd41 upstream.

If the call to decode_rc_list() fails due to a memory allocation error,
then we need to truncate the array size to ensure that we only call
kfree() on those pointer that were allocated.

Reported-by: David Ramos <daramos@stanford.edu>
Fixes: 4aece6a19cf7f ("nfs41: cb_sequence xdr implementation")
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/nfs/callback_xdr.c