btrfs-progs: restore: check if specified root is fs/file tree firstly
Steps to reproduce: # mkfs.btrfs -f /dev/sda9 # mount /dev/sda9 /mnt # dd if=/dev/zero of=/mnt/data bs=1M count=1 # btrfs restore -r /dev/sda9 -r 2 -o /tmp If users don't input a valid fs/file root objectid, btrfs restore still continue and don't restore anything, this is unfriendly, we could check it firstly. Signed-off-by: Wang Shilong <wangsl.fnst@cn.fujitsu.com> Signed-off-by: David Sterba <dsterba@suse.cz>
This commit is contained in:
parent
6d6f2d097e
commit
d46111425a
|
@ -1186,6 +1186,11 @@ int cmd_restore(int argc, char **argv)
|
|||
break;
|
||||
case 'r':
|
||||
root_objectid = arg_strtou64(optarg);
|
||||
if (!is_fstree(root_objectid)) {
|
||||
fprintf(stderr, "objectid %llu is not a valid fs/file tree\n",
|
||||
root_objectid);
|
||||
exit(1);
|
||||
}
|
||||
break;
|
||||
case 'l':
|
||||
list_roots = 1;
|
||||
|
|
Loading…
Reference in New Issue