mirror of https://gitee.com/openkylin/qemu.git
vmdk: Support version=3 in VMDK descriptor files
Commit 509d39aa22
added support for read
only VMDKs of version 3.
This commit fixes the probe function to correctly handle descriptors of
version 3.
This commit has two effects:
1. We no longer need to supply '-f vmdk' when pointing to descriptor
files of version 3 in qemu/qemu-img command line arguments.
2. This fixes the scenario where a VMDK points to a parent version 3
descriptor file which is being probed as "raw" instead of "vmdk".
Reviewed-by: Arbel Moshe <arbel.moshe@oracle.com>
Reviewed-by: Mark Kanda <mark.kanda@oracle.com>
Signed-off-by: Shmuel Eiderman <shmuel.eiderman@oracle.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
1f46ab2e52
commit
b69864e5a8
|
@ -195,13 +195,15 @@ static int vmdk_probe(const uint8_t *buf, int buf_size, const char *filename)
|
|||
}
|
||||
if (end - p >= strlen("version=X\n")) {
|
||||
if (strncmp("version=1\n", p, strlen("version=1\n")) == 0 ||
|
||||
strncmp("version=2\n", p, strlen("version=2\n")) == 0) {
|
||||
strncmp("version=2\n", p, strlen("version=2\n")) == 0 ||
|
||||
strncmp("version=3\n", p, strlen("version=3\n")) == 0) {
|
||||
return 100;
|
||||
}
|
||||
}
|
||||
if (end - p >= strlen("version=X\r\n")) {
|
||||
if (strncmp("version=1\r\n", p, strlen("version=1\r\n")) == 0 ||
|
||||
strncmp("version=2\r\n", p, strlen("version=2\r\n")) == 0) {
|
||||
strncmp("version=2\r\n", p, strlen("version=2\r\n")) == 0 ||
|
||||
strncmp("version=3\r\n", p, strlen("version=3\r\n")) == 0) {
|
||||
return 100;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue