From fef0063119b2e756cdf006d5c089552ca4d964ee Mon Sep 17 00:00:00 2001 From: Boris Egorov Date: Tue, 19 Jan 2016 11:42:26 +0600 Subject: libblkid,libmount: Do not use void* in calculations [cppcheck] [libblkid/src/superblocks/zfs.c:179]: (portability) 'label' is of type 'const void *'. When using void pointers in calculations, the behaviour is undefined. [libblkid/src/superblocks/zfs.c:237]: (portability) 'label' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [libblkid/src/topology/topology.c:221]: (portability) 'chn.data' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. [libmount/src/fs.c:153]: (portability) 'old' is of type 'const void *'. When using void pointers in calculations, the behaviour is undefined. [libmount/src/fs.c:154]: (portability) 'new' is of type 'void *'. When using void pointers in calculations, the behaviour is undefined. --- libblkid/src/superblocks/zfs.c | 4 ++-- libblkid/src/topology/topology.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'libblkid') diff --git a/libblkid/src/superblocks/zfs.c b/libblkid/src/superblocks/zfs.c index 2804b151d..c505a7204 100644 --- a/libblkid/src/superblocks/zfs.c +++ b/libblkid/src/superblocks/zfs.c @@ -176,7 +176,7 @@ static int find_uberblocks(const void *label, loff_t *ub_offset, int *swap_endia loff_t offset = VDEV_LABEL_UBERBLOCK; for (i = 0; i < UBERBLOCKS_COUNT; i++, offset += UBERBLOCK_SIZE) { - ub = (struct zfs_uberblock *)(label + offset); + ub = (struct zfs_uberblock *)((char *) label + offset); if (ub->ub_magic == UBERBLOCK_MAGIC) { *ub_offset = offset; @@ -234,7 +234,7 @@ static int probe_zfs(blkid_probe pr, const struct blkid_idmag *mag) if (found_in_label > 0) { found+= found_in_label; - ub = (struct zfs_uberblock *)(label + ub_offset); + ub = (struct zfs_uberblock *)((char *) label + ub_offset); ub_offset += offset; if (found >= ZFS_WANT) diff --git a/libblkid/src/topology/topology.c b/libblkid/src/topology/topology.c index 887472414..f434aebc6 100644 --- a/libblkid/src/topology/topology.c +++ b/libblkid/src/topology/topology.c @@ -218,7 +218,7 @@ static int topology_set_value(blkid_probe pr, const char *name, return 0; /* ignore zeros */ if (chn->binary) { - memcpy(chn->data + structoff, &data, sizeof(data)); + memcpy((char *) chn->data + structoff, &data, sizeof(data)); return 0; } return blkid_probe_sprintf_value(pr, name, "%lu", data); -- cgit v1.2.3-55-g7522