From 2ace5196e5580810ea3aa53352a4a7331f442e58 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Tue, 28 Mar 2017 20:45:23 +0300 Subject: [PATCH] [iscsi] Do not install iBFT when no iSCSI targets exist Signed-off-by: Michael Brown --- src/drivers/block/ibft.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/drivers/block/ibft.c b/src/drivers/block/ibft.c index a9d21f9a..bb7812b3 100644 --- a/src/drivers/block/ibft.c +++ b/src/drivers/block/ibft.c @@ -591,6 +591,12 @@ static int ibft_install ( int ( * install ) ( struct acpi_header *acpi ) ) { strings.len = 0; len = offset; + /* Do nothing if no targets exist */ + if ( ! targets ) { + rc = 0; + goto no_targets; + } + /* Allocate table */ data = zalloc ( len ); if ( ! data ) { @@ -668,6 +674,7 @@ static int ibft_install ( int ( * install ) ( struct acpi_header *acpi ) ) { err_initiator: free ( data ); err_alloc: + no_targets: free ( strings.data ); return rc; }