ACK: [PATCH] lib: fwts_acpi_tables: fix parsing of empty data (LP: #1281197)

Keng-Yu Lin kengyu at canonical.com
Tue Feb 18 07:44:16 UTC 2014


On Tue, Feb 18, 2014 at 3:27 PM, Alex Hung <alex.hung at canonical.com> wrote:
> On 02/18/2014 01:26 AM, Colin King wrote:
>>
>> From: Colin Ian King <colin.king at canonical.com>
>>
>> Acpi data as generated by the acpidump tool or fwts --dump with zero
>> data on a line can cause the parser to segfault if the data offset
>> is legitimate and the data isn't and the data is the first entry in the
>> table.  This occurred on some test tables that had got corrupted. The
>> fix is to break when we find no legitimate data.
>>
>> Signed-off-by: Colin Ian King <colin.king at canonical.com>
>> ---
>>   src/lib/src/fwts_acpi_tables.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/src/lib/src/fwts_acpi_tables.c
>> b/src/lib/src/fwts_acpi_tables.c
>> index ca3b34a..0a656cd 100644
>> --- a/src/lib/src/fwts_acpi_tables.c
>> +++ b/src/lib/src/fwts_acpi_tables.c
>> @@ -423,6 +423,8 @@ static uint8_t
>> *fwts_acpi_load_table_from_acpidump(FILE *fp, char *name, uint64_
>>                         break;
>>
>>                 len += (n - 1);
>> +               if (len == 0)
>> +                       break;  /* No data, must be corrupt input */
>>                 if ((new_tmp = realloc(tmp, len)) == NULL) {
>>                         free(tmp);
>>                         return NULL;
>>
>
> Acked-by: Alex Hung <alex.hung at canonical.com>
>

Acked-by: Keng-Yu Lin <kengyu at canonical.com>



More information about the fwts-devel mailing list