Home | History | Annotate | only in /src/tests/net/can
History log of /src/tests/net/can
RevisionDateAuthorComments
 1.4 11-Dec-2024  andvar s/inclued/included/ in comment.
 1.3 01-Mar-2020  christos branches: 1.3.10;
Centralize the base rump libraries into a variable used by all the other
Makefiles so that we can make changes to it centrally as needed and have
less mess. Fixes the sun2 build that needs rumpvfs after librump after
the latest changes.
 1.2 27-May-2017  bouyer branches: 1.2.10;
merge the bouyer-socketcan branch to HEAD.

CAN stands for Controller Area Network, a broadcast network used
in automation and automotive fields. For example, the NMEA2000 standard
developped for marine devices uses a CAN network as the link layer.

This is an implementation of the linux socketcan API:
https://www.kernel.org/doc/Documentation/networking/can.txt
you can also see can(4).

This adds a new socket family (AF_CAN) and protocol (PF_CAN),
as well as the canconfig(8) utility, used to set timing parameter of
CAN hardware. Also inclued is a driver for the CAN controller
found in the allwinner A20 SoC (I tested it with an Olimex lime2 board,
connected with PIC18-based CAN devices).

There is also the canloop(4) pseudo-device, which allows to use
the socketcan API without CAN hardware.

At this time the CANFD part of the linux socketcan API is not implemented.
Error frames are not implemented either. But I could get the cansend and
canreceive utilities from the canutils package to build and run with minimal
changes. tcpudmp(8) can also be used to record frames, which can be
decoded with etherreal.
 1.1 15-Jan-2017  bouyer branches: 1.1.2;
file Makefile was initially added on branch bouyer-socketcan.
 1.1.2.3 05-Feb-2017  bouyer Implement CAN_RAW_FILTER socket option, and add tests for it.
 1.1.2.2 04-Feb-2017  bouyer Factor out reading from a can socket, and move to a helper file.
 1.1.2.1 15-Jan-2017  bouyer Basic tests for our SocketCAN implementation (using rump)
 1.2.10.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.3.10.1 02-Aug-2025  perseant Sync with HEAD
 1.4 13-Oct-2019  mrg ifr_name is nul terminated. make it so.
 1.3 28-May-2017  kre branches: 1.3.10;

Needs %zu fix for sizeof as well.
 1.2 27-May-2017  bouyer merge the bouyer-socketcan branch to HEAD.

CAN stands for Controller Area Network, a broadcast network used
in automation and automotive fields. For example, the NMEA2000 standard
developped for marine devices uses a CAN network as the link layer.

This is an implementation of the linux socketcan API:
https://www.kernel.org/doc/Documentation/networking/can.txt
you can also see can(4).

This adds a new socket family (AF_CAN) and protocol (PF_CAN),
as well as the canconfig(8) utility, used to set timing parameter of
CAN hardware. Also inclued is a driver for the CAN controller
found in the allwinner A20 SoC (I tested it with an Olimex lime2 board,
connected with PIC18-based CAN devices).

There is also the canloop(4) pseudo-device, which allows to use
the socketcan API without CAN hardware.

At this time the CANFD part of the linux socketcan API is not implemented.
Error frames are not implemented either. But I could get the cansend and
canreceive utilities from the canutils package to build and run with minimal
changes. tcpudmp(8) can also be used to record frames, which can be
decoded with etherreal.
 1.1 04-Feb-2017  bouyer branches: 1.1.2;
file h_canutils.c was initially added on branch bouyer-socketcan.
 1.1.2.5 17-Apr-2017  bouyer Make it build from build.sh (fix warnings)
 1.1.2.4 05-Feb-2017  bouyer Factor out creation of socket with CAN_RAW_RECV_OWN_MSGS
 1.1.2.3 05-Feb-2017  bouyer factor out socket bind to interface
 1.1.2.2 05-Feb-2017  bouyer Decrease timeout from 2 to 1 second. Speeds up the tests where timeout is
the expected case, and it should still be enough to get the looped back
packet.
 1.1.2.1 04-Feb-2017  bouyer Factor out reading from a can socket, and move to a helper file.
 1.3.10.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2 27-May-2017  bouyer merge the bouyer-socketcan branch to HEAD.

CAN stands for Controller Area Network, a broadcast network used
in automation and automotive fields. For example, the NMEA2000 standard
developped for marine devices uses a CAN network as the link layer.

This is an implementation of the linux socketcan API:
https://www.kernel.org/doc/Documentation/networking/can.txt
you can also see can(4).

This adds a new socket family (AF_CAN) and protocol (PF_CAN),
as well as the canconfig(8) utility, used to set timing parameter of
CAN hardware. Also inclued is a driver for the CAN controller
found in the allwinner A20 SoC (I tested it with an Olimex lime2 board,
connected with PIC18-based CAN devices).

There is also the canloop(4) pseudo-device, which allows to use
the socketcan API without CAN hardware.

At this time the CANFD part of the linux socketcan API is not implemented.
Error frames are not implemented either. But I could get the cansend and
canreceive utilities from the canutils package to build and run with minimal
changes. tcpudmp(8) can also be used to record frames, which can be
decoded with etherreal.
 1.1 04-Feb-2017  bouyer branches: 1.1.2;
file h_canutils.h was initially added on branch bouyer-socketcan.
 1.1.2.3 17-Apr-2017  bouyer Make it build from build.sh (fix warnings)
 1.1.2.2 05-Feb-2017  bouyer factor out socket bind to interface
 1.1.2.1 04-Feb-2017  bouyer Factor out reading from a can socket, and move to a helper file.
 1.8 20-Aug-2021  andvar fix various typos in comments and log messages.
 1.7 24-Jun-2019  skrll Another spello of 'unknown'
 1.6 09-Jun-2017  bouyer branches: 1.6.6;
Test bind()ing to a non-existent interface.
 1.5 28-May-2017  christos branches: 1.5.2;
undo previous; we don't have any archs where socklen_t != uint32_t.
 1.4 28-May-2017  christos fix format.
 1.3 28-May-2017  martin Fix size_t format strings
 1.2 27-May-2017  bouyer merge the bouyer-socketcan branch to HEAD.

CAN stands for Controller Area Network, a broadcast network used
in automation and automotive fields. For example, the NMEA2000 standard
developped for marine devices uses a CAN network as the link layer.

This is an implementation of the linux socketcan API:
https://www.kernel.org/doc/Documentation/networking/can.txt
you can also see can(4).

This adds a new socket family (AF_CAN) and protocol (PF_CAN),
as well as the canconfig(8) utility, used to set timing parameter of
CAN hardware. Also inclued is a driver for the CAN controller
found in the allwinner A20 SoC (I tested it with an Olimex lime2 board,
connected with PIC18-based CAN devices).

There is also the canloop(4) pseudo-device, which allows to use
the socketcan API without CAN hardware.

At this time the CANFD part of the linux socketcan API is not implemented.
Error frames are not implemented either. But I could get the cansend and
canreceive utilities from the canutils package to build and run with minimal
changes. tcpudmp(8) can also be used to record frames, which can be
decoded with etherreal.
 1.1 15-Jan-2017  bouyer branches: 1.1.2;
file t_can.c was initially added on branch bouyer-socketcan.
 1.1.2.7 17-Apr-2017  bouyer Make it build from build.sh (fix warnings)
 1.1.2.6 05-Feb-2017  bouyer Factor out creation of socket with CAN_RAW_RECV_OWN_MSGS
 1.1.2.5 05-Feb-2017  bouyer factor out socket bind to interface
 1.1.2.4 05-Feb-2017  bouyer Decrease timeout from 2 to 1 second. Speeds up the tests where timeout is
the expected case, and it should still be enough to get the looped back
packet.
 1.1.2.3 04-Feb-2017  bouyer Factor out reading from a can socket, and move to a helper file.
 1.1.2.2 16-Jan-2017  bouyer Adapt to CAN_RAW_RECV_OWN_MSGS being off by default, and test
CAN_RAW_RECV_OWN_MSGS and CAN_RAW_LOOPBACK options.
 1.1.2.1 15-Jan-2017  bouyer Basic tests for our SocketCAN implementation (using rump)
 1.5.2.1 15-Jun-2017  snj Pull up following revision(s) (requested by bouyer in ticket #34):
sys/netcan/can_pcb.c: revision 1.6
tests/net/can/t_can.c: revision 1.6
Refuse to bind to a non-CAN interface.
Also release the lock in the error branch.
--
Test bind()ing to a non-existent interface.
 1.6.6.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.2 27-May-2017  bouyer merge the bouyer-socketcan branch to HEAD.

CAN stands for Controller Area Network, a broadcast network used
in automation and automotive fields. For example, the NMEA2000 standard
developped for marine devices uses a CAN network as the link layer.

This is an implementation of the linux socketcan API:
https://www.kernel.org/doc/Documentation/networking/can.txt
you can also see can(4).

This adds a new socket family (AF_CAN) and protocol (PF_CAN),
as well as the canconfig(8) utility, used to set timing parameter of
CAN hardware. Also inclued is a driver for the CAN controller
found in the allwinner A20 SoC (I tested it with an Olimex lime2 board,
connected with PIC18-based CAN devices).

There is also the canloop(4) pseudo-device, which allows to use
the socketcan API without CAN hardware.

At this time the CANFD part of the linux socketcan API is not implemented.
Error frames are not implemented either. But I could get the cansend and
canreceive utilities from the canutils package to build and run with minimal
changes. tcpudmp(8) can also be used to record frames, which can be
decoded with etherreal.
 1.1 05-Feb-2017  bouyer branches: 1.1.2;
file t_canfilter.c was initially added on branch bouyer-socketcan.
 1.1.2.4 17-Apr-2017  bouyer Make it build from build.sh (fix warnings)
 1.1.2.3 05-Feb-2017  bouyer Factor out creation of socket with CAN_RAW_RECV_OWN_MSGS
 1.1.2.2 05-Feb-2017  bouyer factor out socket bind to interface
 1.1.2.1 05-Feb-2017  bouyer Implement CAN_RAW_FILTER socket option, and add tests for it.

RSS XML Feed