[PATCH 3.16 059/245] dm flakey: check for null arg_name in parse_features()

From: Ben Hutchings
Date: Thu Apr 23 2020 - 19:20:37 EST


3.16.83-rc1 review patch. If anyone has any objections, please let me know.

------------------

From: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>

commit 7690e25302dc7d0cd42b349e746fe44b44a94f2b upstream.

One can crash dm-flakey by specifying more feature arguments than the
number of features supplied. Checking for null in arg_name avoids
this.

dmsetup create flakey-test --table "0 66076080 flakey /dev/sdb9 0 0 180 2 drop_writes"

Signed-off-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>
Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
---
drivers/md/dm-flakey.c | 5 +++++
1 file changed, 5 insertions(+)

--- a/drivers/md/dm-flakey.c
+++ b/drivers/md/dm-flakey.c
@@ -69,6 +69,11 @@ static int parse_features(struct dm_arg_
arg_name = dm_shift_arg(as);
argc--;

+ if (!arg_name) {
+ ti->error = "Insufficient feature arguments";
+ return -EINVAL;
+ }
+
/*
* drop_writes
*/