diff options
| author | Dan Carpenter <dan.carpenter@oracle.com> | 2016-12-13 07:27:04 -0500 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-01-12 05:39:30 -0500 |
| commit | 0e79a6b4567704970076a5b933bc1736234610ec (patch) | |
| tree | 22de69a3145e9d1642f6f902a8e40f842b3a2668 /drivers/target | |
| parent | 962a12f8e523b984d77cb5063a722a8d9536cffc (diff) | |
target/iscsi: Fix double free in lio_target_tiqn_addtpg()
commit a91918cd3ea11f91c68e08e1e8ce1b560447a80e upstream.
This iscsit_tpg_add_portal_group() function is only called from
lio_target_tiqn_addtpg(). Both functions free the "tpg" pointer on
error so it's a double free bug. The memory is allocated in the caller
so it should be freed in the caller and not here.
Fixes: e48354ce078c ("iscsi-target: Add iSCSI fabric support for target v4.1")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: David Disseldorp <ddiss@suse.de>
[ bvanassche: Added "Fix" at start of patch title ]
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/target')
| -rw-r--r-- | drivers/target/iscsi/iscsi_target_tpg.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/target/iscsi/iscsi_target_tpg.c b/drivers/target/iscsi/iscsi_target_tpg.c index 0814e5894a96..205a509b0dfb 100644 --- a/drivers/target/iscsi/iscsi_target_tpg.c +++ b/drivers/target/iscsi/iscsi_target_tpg.c | |||
| @@ -260,7 +260,6 @@ err_out: | |||
| 260 | iscsi_release_param_list(tpg->param_list); | 260 | iscsi_release_param_list(tpg->param_list); |
| 261 | tpg->param_list = NULL; | 261 | tpg->param_list = NULL; |
| 262 | } | 262 | } |
| 263 | kfree(tpg); | ||
| 264 | return -ENOMEM; | 263 | return -ENOMEM; |
| 265 | } | 264 | } |
| 266 | 265 | ||
