target/configfs: handle match_int() errors

As a follow up to ce31c1b0dc - there are
still a few LIO match_int() calls that don't check the return value.
Propagate errors rather than using the potentially uninitialised result.

Signed-off-by: David Disseldorp <ddiss@suse.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
David Disseldorp 2015-07-12 18:49:18 +02:00 committed by Nicholas Bellinger
parent 9105bfc038
commit c20910264c

View File

@ -1658,22 +1658,32 @@ static ssize_t target_core_dev_pr_store_attr_res_aptpl_metadata(
* PR APTPL Metadata for Reservation * PR APTPL Metadata for Reservation
*/ */
case Opt_res_holder: case Opt_res_holder:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
res_holder = arg; res_holder = arg;
break; break;
case Opt_res_type: case Opt_res_type:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
type = (u8)arg; type = (u8)arg;
break; break;
case Opt_res_scope: case Opt_res_scope:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
break; break;
case Opt_res_all_tg_pt: case Opt_res_all_tg_pt:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
all_tg_pt = (int)arg; all_tg_pt = (int)arg;
break; break;
case Opt_mapped_lun: case Opt_mapped_lun:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
mapped_lun = (u64)arg; mapped_lun = (u64)arg;
break; break;
/* /*
@ -1701,14 +1711,20 @@ static ssize_t target_core_dev_pr_store_attr_res_aptpl_metadata(
} }
break; break;
case Opt_tpgt: case Opt_tpgt:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
tpgt = (u16)arg; tpgt = (u16)arg;
break; break;
case Opt_port_rtpi: case Opt_port_rtpi:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
break; break;
case Opt_target_lun: case Opt_target_lun:
match_int(args, &arg); ret = match_int(args, &arg);
if (ret)
goto out;
target_lun = (u64)arg; target_lun = (u64)arg;
break; break;
default: default: