Re: [PATCH net 2/3] can: j1939: j1939_can_recv(): ignore messages with invalid source address

From: Oleksij Rempel
Date: Thu Oct 28 2021 - 04:31:00 EST


On Thu, Oct 28, 2021 at 03:33:21PM +0800, Zhang Changzhong wrote:
> On 2021/10/28 14:51, Oleksij Rempel wrote:
> > Hi,
> >
> > On Mon, Oct 25, 2021 at 03:30:57PM +0800, Zhang Changzhong wrote:
> >> On 2021/10/22 18:23, Oleksij Rempel wrote:
> >>> On Thu, Oct 21, 2021 at 10:04:16PM +0800, Zhang Changzhong wrote:
> >>>> According to SAE-J1939-82 2015 (A.3.6 Row 2), a receiver should never
> >>>> send TP.CM_CTS to the global address, so we can add a check in
> >>>> j1939_can_recv() to drop messages with invalid source address.
> >>>>
> >>>> Fixes: 9d71dd0c7009 ("can: add support of SAE J1939 protocol")
> >>>> Signed-off-by: Zhang Changzhong <zhangchangzhong@xxxxxxxxxx>
> >>>
> >>> NACK. This will break Address Claiming, where first message is SA == 0xff
> >>
> >> I know that 0xfe can be used as a source address, but which message has a source
> >> address of 0xff?
> >>
> >> According to SAE-J1939-81 2017 4.2.2.8:
> >>
> >> The network address 255, also known as the Global address, is permitted in the
> >> Destination Address field of the SAE J1939 message identifier but never in the
> >> Source Address field.
> >
> > You are right. Thx!
> >
> > Are you using any testing frameworks?
> > Can you please take a look here:
> > https://github.com/linux-can/can-tests/tree/master/j1939
> >
> > We are using this scripts for regression testing of some know bugs.
>
> Great! I'll run these scripts before posting patches.

You are welcome to extend this tests :)

Regards,
Oleksij
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |