raid6check: Fix off-by-one in argument check
In repair mode, specifying a failed slot that is equal to the number of devices in the raid could cause a segfault. Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
1cc101f3f8
commit
b67e45b858
|
@ -416,12 +416,12 @@ int main(int argc, char *argv[])
|
|||
failed_disk1 = getnum(argv[4], &err);
|
||||
failed_disk2 = getnum(argv[5], &err);
|
||||
|
||||
if(failed_disk1 > info->array.raid_disks) {
|
||||
if(failed_disk1 >= info->array.raid_disks) {
|
||||
fprintf(stderr, "%s: failed_slot_1 index is higher than number of devices in raid\n", prg);
|
||||
exit_err = 4;
|
||||
goto exitHere;
|
||||
}
|
||||
if(failed_disk2 > info->array.raid_disks) {
|
||||
if(failed_disk2 >= info->array.raid_disks) {
|
||||
fprintf(stderr, "%s: failed_slot_2 index is higher than number of devices in raid\n", prg);
|
||||
exit_err = 4;
|
||||
goto exitHere;
|
||||
|
|
Loading…
Reference in New Issue