qemu/include/hw/display
Peter Maydell f8add62c0c hw/display/bcm2835_fb: Validate config settings
Validate the config settings that the guest tries to set.

The wiki page documentation is not really accurate here:
generally rather than failing requests to set bad parameters,
the hardware will just clip them to something sensible.

Validate the most important parameters: sizes and
the viewport offsets. This prevents the framebuffer
code from trying to read out-of-range memory.

In the property handling code, we validate the new parameters every
time we encounter a tag that sets them. This means we validate the
config multiple times if the request includes multiple config-setting
tags, but the code would require significant restructuring to do a
validation only once but still return the clipped settings for
get-parameter tags and the buffer allocation tag.

Validation of settings made via the older bcm2835_fb_mbox_push()
function will be done in the next commit.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20180814144436.679-8-peter.maydell@linaro.org
2018-08-24 13:17:50 +01:00
..
bcm2835_fb.h hw/display/bcm2835_fb: Validate config settings 2018-08-24 13:17:50 +01:00
bochs-vbe.h vga: move bochs vbe defines to header file 2018-05-24 10:42:13 +02:00
dpcd.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
ramfb.h hw/display: add standalone ramfb device 2018-06-18 11:22:15 +02:00
vga.h hw/display/vga: extract public API from i386/pc to "hw/display/vga.h" 2017-12-18 17:07:02 +03:00
xlnx_dp.h hw/display: Use the IEC binary prefix definitions 2018-07-02 15:41:13 +02:00