• Niels Dossche's avatar
    media: hdpvr: fix error value returns in hdpvr_read · 359c27c6
    Niels Dossche authored
    Error return values are supposed to be negative in hdpvr_read. Most
    error returns are currently handled via an unsigned integer "ret". When
    setting a negative error value to "ret", the value actually becomes a
    large positive value, because "ret" is unsigned. Later on, the "ret"
    value is returned. But as ssize_t is a 64-bit signed number, the error
    return value stays a large positive integer instead of a negative
    integer. This can cause an error value to be interpreted as the read
    size, which can cause a buffer overread for applications relying on the
    returned size.
    
    Fixes: 9aba42ef ("V4L/DVB (11096): V4L2 Driver for the Hauppauge HD PVR usb capture device")
    Signed-off-by: default avatarNiels Dossche <dossche.niels@gmail.com>
    Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
    359c27c6
hdpvr-video.c 30.9 KB