]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
dm flakey: check for null arg_name in parse_features()
authorGoldwyn Rodrigues <rgoldwyn@suse.com>
Mon, 4 Dec 2017 03:14:12 +0000 (21:14 -0600)
committerBen Hutchings <ben@decadent.org.uk>
Tue, 28 Apr 2020 18:02:37 +0000 (19:02 +0100)
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@suse.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/md/dm-flakey.c

index 3087adb25ab7eed187900e09068177dbaa0238c3..8809c5e6f6ac3a737588421ee9245f8051cba170 100644 (file)
@@ -69,6 +69,11 @@ static int parse_features(struct dm_arg_set *as, struct flakey_c *fc,
                arg_name = dm_shift_arg(as);
                argc--;
 
+               if (!arg_name) {
+                       ti->error = "Insufficient feature arguments";
+                       return -EINVAL;
+               }
+
                /*
                 * drop_writes
                 */