ACK: [PATCH] acpi: acpidump: fix overflow before widening bug

Alex Hung alex.hung at canonical.com
Fri May 10 01:19:14 UTC 2013


On 05/07/2013 08:56 AM, Colin King wrote:
> From: Colin Ian King <colin.king at canonical.com>
>
> Coverity CID#997275, Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)
>
> To avoid 32 bit overflow, cast info->bit_field_nbits to uint64_t before the
> shift.
>
> Signed-off-by: Colin Ian King <colin.king at canonical.com>
> ---
>   src/acpi/acpidump/acpidump.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/acpi/acpidump/acpidump.c b/src/acpi/acpidump/acpidump.c
> index 3bfbc2a..e509949 100644
> --- a/src/acpi/acpidump/acpidump.c
> +++ b/src/acpi/acpidump/acpidump.c
> @@ -101,7 +101,7 @@ static void acpi_dump_str(fwts_framework *fw, fwts_acpidump_field *info, void *d
>   static uint64_t apci_dump_get_uint64_t(fwts_acpidump_field *info, void *data)
>   {
>   	uint64_t	ret;
> -	uint64_t	mask = (1<<info->bit_field_nbits) - 1;
> +	uint64_t	mask = (1<<(uint64_t)info->bit_field_nbits) - 1;
>   	int i;
>
>   	switch (info->size) {
>
Acked-by: Alex Hung <alex.hung at canonical.com>



More information about the fwts-devel mailing list