diff options
author | Bob Moore <robert.moore@intel.com> | 2008-08-04 11:13:01 +0800 |
---|---|---|
committer | Andi Kleen <ak@linux.intel.com> | 2008-08-15 02:12:16 +0200 |
commit | 3c7db22a194d3b53584047425af82b4e1e03d9f7 (patch) | |
tree | 96462093e2826ca81641ccef7ae5718ce2b9c9bb /drivers/acpi/resources | |
parent | d3ff268a0149fce8835f6d48ab481d5e3321e0f7 (diff) |
ACPICA: Additional error checking for pathname utilities
Add error check after all calls to acpi_ns_get_pathname_length.
Add status return from acpi_ns_build_external_path and check after
all calls. Add parameter validation to acpi_ut_initialize_buffer.
Reported by and initial patch by Ingo Molnar.
http://lkml.org/lkml/2008/7/21/176
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Diffstat (limited to 'drivers/acpi/resources')
-rw-r--r-- | drivers/acpi/resources/rscalc.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/acpi/resources/rscalc.c b/drivers/acpi/resources/rscalc.c index f61ebc679e6..d9063ea414e 100644 --- a/drivers/acpi/resources/rscalc.c +++ b/drivers/acpi/resources/rscalc.c @@ -587,6 +587,9 @@ acpi_rs_get_pci_routing_table_length(union acpi_operand_object *package_object, } else { temp_size_needed += acpi_ns_get_pathname_length((*sub_object_list)->reference.node); + if (!temp_size_needed) { + return_ACPI_STATUS(AE_BAD_PARAMETER); + } } } else { /* |