cmd: ubi: don't allow to rename a volume to a name that already exist
authorPhilippe Reynes <philippe.reynes@softathome.com>
Wed, 23 Dec 2020 14:33:07 +0000 (15:33 +0100)
committerTom Rini <trini@konsulko.com>
Mon, 4 Jan 2021 14:10:17 +0000 (09:10 -0500)
This commits add a check on the command ubi rename. This check avoids
to rename a volume to with a name that is already used on another ubi
volume. If two volumes has the same name, then the ubi device can't be
mounted anymore.

Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
cmd/ubi.c

index 171377c..cb14e3e 100644 (file)
--- a/cmd/ubi.c
+++ b/cmd/ubi.c
@@ -264,6 +264,11 @@ static int ubi_rename_vol(char *oldname, char *newname)
                return ENODEV;
        }
 
+       if (!ubi_check(newname)) {
+               printf("%s: volume %s already exist\n", __func__, newname);
+               return EINVAL;
+       }
+
        printf("Rename UBI volume %s to %s\n", oldname, newname);
 
        if (ubi->ro_mode) {