ecryptfs: replace BUG_ON with error handling code
In crypt_scatterlist, if the crypt_stat argument is not set up
correctly, the kernel crashes. Instead, by returning an error code
upstream, the error is handled safely.
The issue is detected via a static analysis tool written by us.
Fixes: 237fead619
(ecryptfs: fs/Makefile and fs/Kconfig)
Signed-off-by: Aditya Pakki <pakki001@umn.edu>
Signed-off-by: Tyler Hicks <code@tyhicks.com>
This commit is contained in:
parent
f8e48a8408
commit
2c2a7552dd
@ -311,8 +311,10 @@ static int crypt_scatterlist(struct ecryptfs_crypt_stat *crypt_stat,
|
|||||||
struct extent_crypt_result ecr;
|
struct extent_crypt_result ecr;
|
||||||
int rc = 0;
|
int rc = 0;
|
||||||
|
|
||||||
BUG_ON(!crypt_stat || !crypt_stat->tfm
|
if (!crypt_stat || !crypt_stat->tfm
|
||||||
|| !(crypt_stat->flags & ECRYPTFS_STRUCT_INITIALIZED));
|
|| !(crypt_stat->flags & ECRYPTFS_STRUCT_INITIALIZED))
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
if (unlikely(ecryptfs_verbosity > 0)) {
|
if (unlikely(ecryptfs_verbosity > 0)) {
|
||||||
ecryptfs_printk(KERN_DEBUG, "Key size [%zd]; key:\n",
|
ecryptfs_printk(KERN_DEBUG, "Key size [%zd]; key:\n",
|
||||||
crypt_stat->key_size);
|
crypt_stat->key_size);
|
||||||
|
Loading…
Reference in New Issue
Block a user