Description
In the Linux kernel, the following vulnerability has been resolved: USB: serial: digi_acceleport: fix write buffer corruption The digi_write_inb_command() is supposed to wait for the write urb to become available or return an error, but instead it updates the transfer buffer and tries to resubmit the urb on timeout. To make things worse, for commands like break control where no timeout is used, the driver would corrupt the urb immediately due to a broken jiffies comparison (on 32-bit machines this takes five minutes of uptime to trigger due to INITIAL_JIFFIES). Fix this by adding the missing return on timeout and waiting indefinitely when no timeout has been specified as intended. This issue was (sort of) flagged by Sashiko when reviewing an unrelated change to the driver.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 5d9dc88bdf8897788b0eed57113e9eca7fd42ea9affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 2f296974acc279f05f284441bfe3064074958d11affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < e60e4873e9178da9f4f2674e4c2ff085d5a84f79affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 699dfb6917503b3cda4d5da6941cf79c3c1b4c8baffected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < a274b3794fe1852c3d9fe6d900b94053c0b03410affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 1243f120790042c2ac92e84e797dacc75fff4366affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < a3a13fdc53103b07335918e2cdeb465038a71725affected1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to < 24ca1fea8f2753bf33e1d458ec1ae5d9b7796a65affected
Linux Linux
Default version status: affected
2.6.12affected0 to < 2.6.12unaffected5.10.261 to ≤ 5.10.*unaffected5.15.212 to ≤ 5.15.*unaffected6.1.178 to ≤ 6.1.*unaffected6.6.145 to ≤ 6.6.*unaffected6.12.96 to ≤ 6.12.*unaffected6.18.39 to ≤ 6.18.*unaffected7.1.4 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/5d9dc88bdf8897788b0eed57113e9eca7fd42ea9 ↗
- https://git.kernel.org/stable/c/2f296974acc279f05f284441bfe3064074958d11 ↗
- https://git.kernel.org/stable/c/e60e4873e9178da9f4f2674e4c2ff085d5a84f79 ↗
- https://git.kernel.org/stable/c/699dfb6917503b3cda4d5da6941cf79c3c1b4c8b ↗
- https://git.kernel.org/stable/c/a274b3794fe1852c3d9fe6d900b94053c0b03410 ↗
- https://git.kernel.org/stable/c/1243f120790042c2ac92e84e797dacc75fff4366 ↗
- https://git.kernel.org/stable/c/a3a13fdc53103b07335918e2cdeb465038a71725 ↗
- https://git.kernel.org/stable/c/24ca1fea8f2753bf33e1d458ec1ae5d9b7796a65 ↗