can-gw: add netlink based CAN routing
authorOliver Hartkopp <socketcan@hartkopp.net>
Thu, 1 Sep 2011 04:23:23 +0000 (04:23 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 16 Sep 2011 21:37:51 +0000 (17:37 -0400)
commitc1aabdf379bc2feeb0df7057ed5bad96f492133e
tree36adaf1c2e8b18b63f741bb2b3f7ef2da56ab77f
parent13225977f5429fc5a8c0c1933e3283ab4c7042d8
can-gw: add netlink based CAN routing

This patch adds a CAN Gateway/Router to route (and modify) CAN frames.

It is based on the PF_CAN core infrastructure for msg filtering and msg
sending and can optionally modify routed CAN frames on the fly.
CAN frames can *only* be routed between CAN network interfaces (one hop).
They can be modified with AND/OR/XOR/SET operations as configured by the
netlink configuration interface known e.g. from iptables. From the netlink
view this can-gw implements RTM_{NEW|DEL|GET}ROUTE for PF_CAN.

The CAN specific userspace tool to manage CAN routing entries can be found in
the CAN utils http://svn.berlios.de/wsvn/socketcan/trunk/can-utils/cangw.c
at the SocketCAN SVN on BerliOS.

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/can/Kbuild
include/linux/can/gw.h [new file with mode: 0644]
net/can/Kconfig
net/can/Makefile
net/can/gw.c [new file with mode: 0644]