On 18/01/2018 15:12, Daniel P. Berrange wrote: >> In addition to that, do we support a >= 2 GiB framebuffer at all? (Even >> with unsigned ints, Coverity would rightly complain about a truncated >> 32-bit multiplication being assigned to a 64-bit value). > client_width/client_height are values that are initialized from the > graphics card frontend config, and thus limited by amount of video > RAM QEMU allows. bytes_per_pixel is limited to 8/16/32. > > So I think we're safe from 2GB overflow in any normal case. > > That said, VGA RAM size is configurable, so I'm curious what would happen > if someone configured an insanely large VGA RAM and asked for a big frame > buffer in guest. > > VNC is protocol limited to uint16 for width/height size, and so is X11 > so I imagine some exploding behavour would follow :-)
Indeed, and even 2^16 x 2^16 * 32bpp is already 34 bits. So perhaps we should limit VNC to 16384 pixels on each axis (maximum frame buffer size 1 GiB). Paolo