Re: [patch, libv4l]: fix integer overflow

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/09/2017 08:29 AM, Hans Verkuil wrote:
> On 05/09/2017 12:28 AM, Pavel Machek wrote:
>> Hi!
>>
>> This bit me while trying to use absolute exposure time on Nokia N900:
>>
>> Can someone apply it to libv4l2 tree? Could I get some feedback on the
>> other patches? Is this the way to submit patches to libv4l2?
> 
> Yes, it is. But I do need a Signed-off-by from you.

I saw other patches from you for libv4l without a Signed-off-by. Can you
check them and reply with the Signed-off-by line?

Thanks!

	Hans

> 
> Regards,
> 
> 	Hans
> 
>>
>> Thanks,
>> 								Pavel
>>
>> commit 0484e39ec05fdc644191e7c334a7ebfff9cb2ec5
>> Author: Pavel <pavel@xxxxxx>
>> Date:   Mon May 8 21:52:02 2017 +0200
>>
>>     Fix integer overflow with EXPOSURE_ABSOLUTE.
>>
>> diff --git a/lib/libv4l2/libv4l2.c b/lib/libv4l2/libv4l2.c
>> index e795aee..189fc06 100644
>> --- a/lib/libv4l2/libv4l2.c
>> +++ b/lib/libv4l2/libv4l2.c
>> @@ -1776,7 +1776,7 @@ int v4l2_set_control(int fd, int cid, int value)
>>  		if (qctrl.type == V4L2_CTRL_TYPE_BOOLEAN)
>>  			ctrl.value = value ? 1 : 0;
>>  		else
>> -			ctrl.value = (value * (qctrl.maximum - qctrl.minimum) + 32767) / 65535 +
>> +			ctrl.value = ((long long) value * (qctrl.maximum - qctrl.minimum) + 32767) / 65535 +
>>  				qctrl.minimum;
>>  
>>  		result = v4lconvert_vidioc_s_ctrl(devices[index].convert, &ctrl);
>> @@ -1812,7 +1812,7 @@ int v4l2_get_control(int fd, int cid)
>>  		if (v4l2_propagate_ioctl(index, VIDIOC_G_CTRL, &ctrl))
>>  			return -1;
>>  
>> -	return ((ctrl.value - qctrl.minimum) * 65535 +
>> +	return (((long long) ctrl.value - qctrl.minimum) * 65535 +
>>  			(qctrl.maximum - qctrl.minimum) / 2) /
>>  		(qctrl.maximum - qctrl.minimum);
>>  }
>>
>>
> 




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux