diff options
author | Oliver Hartkopp <socketcan@hartkopp.net> | 2016-11-23 14:33:25 +0100 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2016-11-23 15:22:18 +0100 |
commit | 5499a6b22e5508b921c447757685b0a5e40a07ed (patch) | |
tree | 7beb90dee5e614fd6b29068b045f778eac11d7d1 /crypto | |
parent | c9b8af1330198ae241cd545e1f040019010d44d9 (diff) | |
download | op-kernel-dev-5499a6b22e5508b921c447757685b0a5e40a07ed.zip op-kernel-dev-5499a6b22e5508b921c447757685b0a5e40a07ed.tar.gz |
can: bcm: fix support for CAN FD frames
Since commit 6f3b911d5f29b98 ("can: bcm: add support for CAN FD frames") the
CAN broadcast manager supports CAN and CAN FD data frames.
As these data frames are embedded in struct can[fd]_frames which have a
different length the access to the provided array of CAN frames became
dependend of op->cfsiz. By using a struct canfd_frame pointer for the array of
CAN frames the new offset calculation based on op->cfsiz was accidently applied
to CAN FD frame element lengths.
This fix makes the pointer to the arrays of the different CAN frame types a
void pointer so that the offset calculation in bytes accesses the correct CAN
frame elements.
Reference: http://marc.info/?l=linux-netdev&m=147980658909653
Reported-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Cc: linux-stable <stable@vger.kernel.org>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'crypto')
0 files changed, 0 insertions, 0 deletions