support UBI blocks (volumes)
authorRafał Miłecki <zajec5@gmail.com>
Wed, 17 Dec 2014 17:47:04 +0000 (18:47 +0100)
committerFelix Fietkau <nbd@openwrt.org>
Tue, 6 Jan 2015 10:51:52 +0000 (11:51 +0100)
We already had ubifs idinfo, so only /dev/ubiN_M support was missing.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
block.c
libblkid-tiny/libblkid-tiny.c

diff --git a/block.c b/block.c
index bba68c2..68cfd5a 100644 (file)
--- a/block.c
+++ b/block.c
@@ -481,6 +481,7 @@ static void cache_load(int mtd)
        if (mtd) {
                _cache_load("/dev/mtdblock*");
                _cache_load("/dev/ubiblock*");
        if (mtd) {
                _cache_load("/dev/mtdblock*");
                _cache_load("/dev/ubiblock*");
+               _cache_load("/dev/ubi?*_?*");
        }
        _cache_load("/dev/mmcblk*");
        _cache_load("/dev/sd*");
        }
        _cache_load("/dev/mmcblk*");
        _cache_load("/dev/sd*");
index a01a43e..1e641f7 100644 (file)
@@ -174,7 +174,7 @@ int probe_block(char *block, struct blkid_struct_probe *pr)
        struct stat s;
        int i;
 
        struct stat s;
        int i;
 
-       if (stat(block, &s) || (!S_ISBLK(s.st_mode) && !S_ISREG(s.st_mode)))
+       if (stat(block, &s) || (!S_ISBLK(s.st_mode) && !S_ISREG(s.st_mode) && !strncmp(block, "ubi", 3)))
                return -1;
 
        pr->err = -1;
                return -1;
 
        pr->err = -1;