UBI: fix nameless volumes handling
authorRichard Weinberger <richard@nod.at>
Fri, 13 Jan 2012 14:07:40 +0000 (15:07 +0100)
committerArtem Bityutskiy <Artem.Bityutskiy@linux.intel.com>
Sun, 15 Jan 2012 13:06:08 +0000 (15:06 +0200)
Currently it's possible to create a volume without a name. E.g:
ubimkvol -n 32 -s 2MiB -t static /dev/ubi0 -N ""

After that vtbl_check() will always fail because it does not permit
empty strings.

Cc: stable@kernel.org
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@linux.intel.com>
drivers/mtd/ubi/cdev.c

index 3320a50..ad76592 100644 (file)
@@ -632,6 +632,9 @@ static int verify_mkvol_req(const struct ubi_device *ubi,
        if (req->alignment != 1 && n)
                goto bad;
 
+       if (!req->name[0] || !req->name_len)
+               goto bad;
+
        if (req->name_len > UBI_VOL_NAME_MAX) {
                err = -ENAMETOOLONG;
                goto bad;