From ed80aab4f188863c6414d0c7a15daeba3ff243d2 Mon Sep 17 00:00:00 2001 From: Thanos Makatos Date: Mon, 25 Jan 2021 16:55:10 +0000 Subject: don't use uninitialized memory (#244) Signed-off-by: Thanos Makatos --- samples/client.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'samples/client.c') diff --git a/samples/client.c b/samples/client.c index dbff008..c026329 100644 --- a/samples/client.c +++ b/samples/client.c @@ -265,10 +265,12 @@ get_device_region_info(int sock, uint32_t index) struct vfio_region_info *region_info; size_t cap_sz; size_t size = sizeof(struct vfio_region_info); - size_t nr_fds = CLIENT_MAX_FDS; - int fds[nr_fds]; + int fds[CLIENT_MAX_FDS] = { 0 }; + size_t nr_fds = ARRAY_SIZE(fds); + region_info = alloca(size); + memset(region_info, 0, size); region_info->argsz = size; region_info->index = index; @@ -276,6 +278,7 @@ get_device_region_info(int sock, uint32_t index) if (region_info->argsz > size) { size = region_info->size; region_info = alloca(size); + memset(region_info, 0, size); region_info->argsz = size; region_info->index = index; do_get_device_region_info(sock, region_info, fds, &nr_fds); @@ -657,8 +660,8 @@ static void get_dirty_bitmaps(int sock, struct vfio_user_dma_region *dma_regions, UNUSED int nr_dma_regions) { - struct vfio_iommu_type1_dirty_bitmap dirty_bitmap = {0}; - struct vfio_iommu_type1_dirty_bitmap_get bitmaps[2]; + struct vfio_iommu_type1_dirty_bitmap dirty_bitmap = { 0 }; + struct vfio_iommu_type1_dirty_bitmap_get bitmaps[2] = { { 0 }, }; int ret; size_t i; struct iovec iovecs[4] = { -- cgit v1.1