diff options
author | Stefan Hajnoczi | 2020-11-18 10:16:44 +0100 |
---|---|---|
committer | Michael S. Tsirkin | 2020-12-09 19:04:17 +0100 |
commit | 552c2c4c101335e67ac8ae8ab022d88a8795f2ac (patch) | |
tree | 16667a711aa8c75d82232c884698e1ad2b745e9e /block | |
parent | contrib/vhost-user-input: avoid g_return_val_if() input validation (diff) | |
download | qemu-552c2c4c101335e67ac8ae8ab022d88a8795f2ac.tar.gz qemu-552c2c4c101335e67ac8ae8ab022d88a8795f2ac.tar.xz qemu-552c2c4c101335e67ac8ae8ab022d88a8795f2ac.zip |
block/export: avoid g_return_val_if() input validation
Do not validate input with g_return_val_if(). This API is intended for
checking programming errors and is compiled out with -DG_DISABLE_CHECKS.
Use an explicit if statement for input validation so it cannot
accidentally be compiled out.
Suggested-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20201118091644.199527-5-stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/export/vhost-user-blk-server.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/block/export/vhost-user-blk-server.c b/block/export/vhost-user-blk-server.c index a3d95ca012..ab2c4d44c4 100644 --- a/block/export/vhost-user-blk-server.c +++ b/block/export/vhost-user-blk-server.c @@ -267,7 +267,9 @@ vu_blk_get_config(VuDev *vu_dev, uint8_t *config, uint32_t len) VuServer *server = container_of(vu_dev, VuServer, vu_dev); VuBlkExport *vexp = container_of(server, VuBlkExport, vu_server); - g_return_val_if_fail(len <= sizeof(struct virtio_blk_config), -1); + if (len > sizeof(struct virtio_blk_config)) { + return -1; + } memcpy(config, &vexp->blkcfg, len); return 0; |