diff options
-rwxr-xr-x | testsuite/mdev.tests | 16 | ||||
-rw-r--r-- | util-linux/mdev.c | 5 |
2 files changed, 19 insertions, 2 deletions
diff --git a/testsuite/mdev.tests b/testsuite/mdev.tests index 2285579..90379e6 100755 --- a/testsuite/mdev.tests +++ b/testsuite/mdev.tests @@ -111,6 +111,22 @@ brw-r--r-- 1 0 0 8,0 sda # continuing to use directory structure from prev test rm -rf mdev.testdir/dev/* +echo "sda 0:0 644 =block/ @echo @echo TEST" >mdev.testdir/etc/mdev.conf +testing "mdev move and command" \ + "env - PATH=$PATH ACTION=add DEVPATH=/block/sda chroot mdev.testdir /mdev 2>&1; + ls -lnR mdev.testdir/dev | $FILTER_LS2" \ +"\ +@echo TEST +mdev.testdir/dev: +drwxr-xr-x 2 0 0 block + +mdev.testdir/dev/block: +brw-r--r-- 1 0 0 sda +" \ + "" "" + +# continuing to use directory structure from prev test +rm -rf mdev.testdir/dev/* echo "@8,0 :1 644" >mdev.testdir/etc/mdev.conf testing "mdev #maj,min and no explicit uid" \ "env - PATH=$PATH ACTION=add DEVPATH=/block/sda chroot mdev.testdir /mdev 2>&1; diff --git a/util-linux/mdev.c b/util-linux/mdev.c index 9ad1a6f..0460aa7 100644 --- a/util-linux/mdev.c +++ b/util-linux/mdev.c @@ -179,8 +179,9 @@ static void make_device(char *path, int delete) unsigned i, n; #endif char *a = val; - s = strchr(val, ' '); - val = (s && s[1]) ? s+1 : NULL; + s = strchrnul(val, ' '); + val = (s[0] && s[1]) ? s+1 : NULL; + s[0] = '\0'; #if ENABLE_FEATURE_MDEV_RENAME_REGEXP /* substitute %1..9 with off[1..9], if any */ n = 0; |