summaryrefslogtreecommitdiff
path: root/hw/xen_disk.c
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2009-10-27 18:41:44 +0100
committerAnthony Liguori <aliguori@us.ibm.com>2009-11-09 08:43:02 -0600
commiteb852011ab3c56bd1f8e9d2c7d0dfb3eb321430a (patch)
tree94af2a13cc119c6f43b3514373a2db2a81ed3f87 /hw/xen_disk.c
parent39a51dfda835a75c0ebbfd92705b96e4de77f795 (diff)
Configurable block format whitelist
We have code for a quite a few block formats. While I trust that all of these formats are useful at least for some people in some circumstances, some of them are of a kind that friends don't let friends use in production. This patch provides an optional block format whitelist, default off. If a whitelist is configured with --block-drv-whitelist, QEMU proper can use only whitelisted formats. Other programs, like qemu-img, are not affected. Drivers for formats off the whitelist still participate in format probing, to ensure all programs probe exactly the same. Without that, QEMU proper would be prone to treat images with a format off the whitelist as raw when the image's format is probed. Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'hw/xen_disk.c')
-rw-r--r--hw/xen_disk.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/xen_disk.c b/hw/xen_disk.c
index 74cde80691..5c55251320 100644
--- a/hw/xen_disk.c
+++ b/hw/xen_disk.c
@@ -630,7 +630,8 @@ static int blk_init(struct XenDevice *xendev)
blkdev->bs = bdrv_new(blkdev->dev);
if (blkdev->bs) {
if (bdrv_open2(blkdev->bs, blkdev->filename, qflags,
- bdrv_find_format(blkdev->fileproto)) != 0) {
+ bdrv_find_whitelisted_format(blkdev->fileproto))
+ != 0) {
bdrv_delete(blkdev->bs);
blkdev->bs = NULL;
}