Message ID | 20180309182202.31206-3-farosas@linux.vnet.ibm.com |
---|---|
State | New |
Headers | show |
Series | block: Ensure non-protocol drivers can only be selected explicitly | expand |
On 2018-03-09 19:21, Fabiano Rosas wrote: > The quorum driver is not a protocol so it should implement bdrv_open > instead of bdrv_file_open and not provide a protocol_name. > > Attempts to invoke this driver using protocol syntax > (i.e. quorum:<filename:options:...>) will now fail gracefully: > > $ qemu-img info quorum:foo > qemu-img: Could not open 'quorum:foo': Unknown protocol 'quorum' > > Signed-off-by: Fabiano Rosas <farosas@linux.vnet.ibm.com> > --- > block/quorum.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) Reviewed-by: Max Reitz <mreitz@redhat.com>
diff --git a/block/quorum.c b/block/quorum.c index 14333c18aa..cfe484a945 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -1098,11 +1098,10 @@ static void quorum_refresh_filename(BlockDriverState *bs, QDict *options) static BlockDriver bdrv_quorum = { .format_name = "quorum", - .protocol_name = "quorum", .instance_size = sizeof(BDRVQuorumState), - .bdrv_file_open = quorum_open, + .bdrv_open = quorum_open, .bdrv_close = quorum_close, .bdrv_refresh_filename = quorum_refresh_filename,
The quorum driver is not a protocol so it should implement bdrv_open instead of bdrv_file_open and not provide a protocol_name. Attempts to invoke this driver using protocol syntax (i.e. quorum:<filename:options:...>) will now fail gracefully: $ qemu-img info quorum:foo qemu-img: Could not open 'quorum:foo': Unknown protocol 'quorum' Signed-off-by: Fabiano Rosas <farosas@linux.vnet.ibm.com> --- block/quorum.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)