dm crypt: fix free of bad values after tfm allocation failure
authorEric Biggers <ebiggers@google.com>
Tue, 30 Aug 2016 16:51:44 +0000 (09:51 -0700)
committerMike Snitzer <snitzer@redhat.com>
Tue, 30 Aug 2016 23:45:19 +0000 (19:45 -0400)
commit5d0be84ec0cacfc7a6d6ea548afdd07d481324cd
tree584bc09b15f3303a1d542392f911db6e3690cb7b
parent4e870e948fbabf62b78e8410f04c67703e7c816b
dm crypt: fix free of bad values after tfm allocation failure

If crypt_alloc_tfms() had to allocate multiple tfms and it failed before
the last allocation, then it would call crypt_free_tfms() and could free
pointers from uninitialized memory -- due to the crypt_free_tfms() check
for non-zero cc->tfms[i].  Fix by allocating zeroed memory.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Cc: stable@vger.kernel.org
drivers/md/dm-crypt.c