Merge branch 'ipvlan-l3'
authorDavid S. Miller <davem@davemloft.net>
Mon, 19 Sep 2016 05:25:30 +0000 (01:25 -0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 19 Sep 2016 05:25:30 +0000 (01:25 -0400)
commit8ddda65315f08b1273095edc1afab4872ea22fe5
tree3ea819d38ad4fbbae8d4db166f58451c2a78ee20
parenta5ea31f573098d39e6b29327d01c986607e118cb
parent4fbae7d83c98c30efcf0a2a2ac55fbb75ef5a1a5
Merge branch 'ipvlan-l3'

Mahesh Bandewar says:

====================
IPvlan introduce l3s mode

Same old problem with new approach especially from suggestions from
earlier patch-series.

First thing is that this is introduced as a new mode rather than
modifying the old (L3) mode. So the behavior of the existing modes is
preserved as it is and the new L3s mode obeys iptables so that intended
conn-tracking can work.

To do this, the code uses newly added l3mdev_rcv() handler and an
Iptables hook. l3mdev_rcv() to perform an inbound route lookup with the
correct (IPvlan slave) interface and then IPtable-hook at LOCAL_INPUT
to change the input device from master to the slave to complete the
formality.

Supporting stack changes are trivial changes to export symbol to get
IPv4 equivalent code exported for IPv6 and to allow netfilter hook
registration code to allow caller to hold RTNL. Please look into
individual patches for details.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>