Message ID | 20230310235414.12467-1-todd.e.brandt@intel.com |
---|---|
State | Superseded |
Headers | show |
Series | Fix buffer overrun in HID-SENSOR name. | expand |
This is exactly the fix I proposed. Thank you for testing and properly submitting it. Regards, Philipp Jungkamp On Fri, 2023-03-10 at 15:54 -0800, Todd Brandt wrote: > Philipp Jungkamp created this fix, I'm simply submitting it. I've > verified it fixes bugzilla issue 217169. > > Reported-and-tested-by: Todd Brandt <todd.e.brandt@linux.intel.com> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=217169 > Signed-off-by: Todd Brandt <todd.e.brandt@intel.com> > --- > drivers/hid/hid-sensor-custom.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/hid/hid-sensor-custom.c b/drivers/hid/hid- > sensor-custom.c > index 3e3f89e01d81..d85398721659 100644 > --- a/drivers/hid/hid-sensor-custom.c > +++ b/drivers/hid/hid-sensor-custom.c > @@ -940,7 +940,7 @@ hid_sensor_register_platform_device(struct > platform_device *pdev, > struct hid_sensor_hub_device > *hsdev, > const struct > hid_sensor_custom_match *match) > { > - char real_usage[HID_SENSOR_USAGE_LENGTH]; > + char real_usage[HID_SENSOR_USAGE_LENGTH] = { 0 }; > struct platform_device *custom_pdev; > const char *dev_name; > char *c;
On Sat, 11 Mar 2023 01:53:22 +0100 Philipp Jungkamp <p.jungkamp@gmx.net> wrote: > This is exactly the fix I proposed. Thank you for testing and properly > submitting it. > > Regards, > Philipp Jungkamp Looks good to me as well. Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > > On Fri, 2023-03-10 at 15:54 -0800, Todd Brandt wrote: > > Philipp Jungkamp created this fix, I'm simply submitting it. I've > > verified it fixes bugzilla issue 217169. > > > > Reported-and-tested-by: Todd Brandt <todd.e.brandt@linux.intel.com> > > Link: https://bugzilla.kernel.org/show_bug.cgi?id=217169 > > Signed-off-by: Todd Brandt <todd.e.brandt@intel.com> > > --- > > drivers/hid/hid-sensor-custom.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/hid/hid-sensor-custom.c b/drivers/hid/hid- > > sensor-custom.c > > index 3e3f89e01d81..d85398721659 100644 > > --- a/drivers/hid/hid-sensor-custom.c > > +++ b/drivers/hid/hid-sensor-custom.c > > @@ -940,7 +940,7 @@ hid_sensor_register_platform_device(struct > > platform_device *pdev, > > struct hid_sensor_hub_device > > *hsdev, > > const struct > > hid_sensor_custom_match *match) > > { > > - char real_usage[HID_SENSOR_USAGE_LENGTH]; > > + char real_usage[HID_SENSOR_USAGE_LENGTH] = { 0 }; > > struct platform_device *custom_pdev; > > const char *dev_name; > > char *c; >
On Fri, 2023-03-10 at 15:54 -0800, Todd Brandt wrote: > Philipp Jungkamp created this fix, I'm simply submitting it. I've > verified it fixes bugzilla issue 217169. > Not the correct change log. Something like below: On some platforms there are some platform device is created with invalid name. For example: "HID-SENSOR-INT-020b?.39.auto" instead of "HID-SENSOR-INT-020b.39.auto" This string include some invalid character, hence it will fail to properly load the driver which will handle this custom sensor. Also it is a problem for some user space tools, which parses the device names. This is because the string real_usage is not NULL terminated and printed with %s to form device name. To address this initialize the real_usage string with 0s. > Reported-and-tested-by: Todd Brandt <todd.e.brandt@linux.intel.com> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=217169 Fixes: 98c062e82451 ("HID: hid-sensor-custom: Allow more custom iio sensors") Suggest-by: Philipp Jungkamp p.jungkamp@gmx.net > Signed-off-by: Todd Brandt <todd.e.brandt@intel.com> Thanks, Srinivas > --- > drivers/hid/hid-sensor-custom.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/hid/hid-sensor-custom.c b/drivers/hid/hid- > sensor-custom.c > index 3e3f89e01d81..d85398721659 100644 > --- a/drivers/hid/hid-sensor-custom.c > +++ b/drivers/hid/hid-sensor-custom.c > @@ -940,7 +940,7 @@ hid_sensor_register_platform_device(struct > platform_device *pdev, > struct hid_sensor_hub_device > *hsdev, > const struct > hid_sensor_custom_match *match) > { > - char real_usage[HID_SENSOR_USAGE_LENGTH]; > + char real_usage[HID_SENSOR_USAGE_LENGTH] = { 0 }; > struct platform_device *custom_pdev; > const char *dev_name; > char *c;
diff --git a/drivers/hid/hid-sensor-custom.c b/drivers/hid/hid-sensor-custom.c index 3e3f89e01d81..d85398721659 100644 --- a/drivers/hid/hid-sensor-custom.c +++ b/drivers/hid/hid-sensor-custom.c @@ -940,7 +940,7 @@ hid_sensor_register_platform_device(struct platform_device *pdev, struct hid_sensor_hub_device *hsdev, const struct hid_sensor_custom_match *match) { - char real_usage[HID_SENSOR_USAGE_LENGTH]; + char real_usage[HID_SENSOR_USAGE_LENGTH] = { 0 }; struct platform_device *custom_pdev; const char *dev_name; char *c;
Philipp Jungkamp created this fix, I'm simply submitting it. I've verified it fixes bugzilla issue 217169. Reported-and-tested-by: Todd Brandt <todd.e.brandt@linux.intel.com> Link: https://bugzilla.kernel.org/show_bug.cgi?id=217169 Signed-off-by: Todd Brandt <todd.e.brandt@intel.com> --- drivers/hid/hid-sensor-custom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)