Messages in this thread | | | Date | Thu, 12 Jan 2023 23:31:47 -0700 | From | Jack Rosenthal <> | Subject | Re: [PATCH v3] firmware: coreboot: Check size of table entry and split memcpy |
| |
On 2023-01-12 at 15:03 -0800, Kees Cook wrote: > The memcpy() of the data following a coreboot_table_entry couldn't > be evaluated by the compiler under CONFIG_FORTIFY_SOURCE. To make it > easier to reason about, add an explicit flexible array member to struct > coreboot_device so the entire entry can be copied at once. Additionally, > validate the sizes before copying. Avoids this run-time false positive > warning: > > memcpy: detected field-spanning write (size 168) of single field "&device->entry" at drivers/firmware/google/coreboot_table.c:103 (size 8) > > Reported-by: Paul Menzel <pmenzel@molgen.mpg.de> > Link: https://lore.kernel.org/all/03ae2704-8c30-f9f0-215b-7cdf4ad35a9a@molgen.mpg.de/ > Cc: Jack Rosenthal <jrosenth@chromium.org> > Cc: Guenter Roeck <groeck@chromium.org> > Cc: Julius Werner <jwerner@chromium.org> > Cc: Brian Norris <briannorris@chromium.org> > Cc: Stephen Boyd <swboyd@chromium.org> > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > Signed-off-by: Kees Cook <keescook@chromium.org> > Reviewed-by: Julius Werner <jwerner@chromium.org> > Reviewed-by: Guenter Roeck <groeck@chromium.org> > Link: https://lore.kernel.org/r/20230107031406.gonna.761-kees@kernel.org > ---
Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
| |