]> exis.tech > repos - linux.git/blobdiff - drivers/hid/hid-core.c
Merge tag 'hwmon-for-v7.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/groec...
[linux.git] / drivers / hid / hid-core.c
index 41a79e43c82b32c8a04187f08d76497a71d2da50..cf123347a2af7bfe466bd0b502bf3c753d237bb3 100644 (file)
@@ -2045,6 +2045,13 @@ int hid_report_raw_event(struct hid_device *hid, enum hid_report_type type, u8 *
        u8 *cdata = data;
        int ret = 0;
 
+       if (report_enum->numbered && (size < 1 || bufsize < 1)) {
+               hid_warn_ratelimited(hid,
+                                    "Event data for numbered report is too short (%d vs %zu)\n",
+                                    size, bufsize);
+               return -EINVAL;
+       }
+
        report = hid_get_report(report_enum, data);
        if (!report)
                return 0;