From: Mikulas Patocka Date: Mon, 22 Jun 2009 09:12:10 +0000 (+0100) Subject: dm mpath: validate hw_handler argument count X-Git-Tag: v2.6.29.6~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=85e05eaba5840385843fe61d8db191be84fe3ac6;p=thirdparty%2Fkernel%2Fstable.git dm mpath: validate hw_handler argument count commit e094f4f15f5169526c7200b9bde44b900548a81e upstream. Fix arg count parsing error in hw handlers. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c index 736f1d97ea2c3..774cc49239ffd 100644 --- a/drivers/md/dm-mpath.c +++ b/drivers/md/dm-mpath.c @@ -706,6 +706,11 @@ static int parse_hw_handler(struct arg_set *as, struct multipath *m) if (!hw_argc) return 0; + if (hw_argc > as->argc) { + ti->error = "not enough arguments for hardware handler"; + return -EINVAL; + } + m->hw_handler_name = kstrdup(shift(as), GFP_KERNEL); request_module("scsi_dh_%s", m->hw_handler_name); if (scsi_dh_handler_exist(m->hw_handler_name) == 0) {