linux-kernelorg-stable/net/xfrm
Benedict Wong e2612cd496 xfrm: Make set-mark default behavior backward compatible
Fixes 9b42c1f179, which changed the default route lookup behavior for
tunnel mode SAs in the outbound direction to use the skb mark, whereas
previously mark=0 was used if the output mark was unspecified. In
mark-based routing schemes such as Android’s, this change in default
behavior causes routing loops or lookup failures.

This patch restores the default behavior of using a 0 mark while still
incorporating the skb mark if the SET_MARK (and SET_MARK_MASK) is
specified.

Tested with additions to Android's kernel unit test suite:
https://android-review.googlesource.com/c/kernel/tests/+/860150

Fixes: 9b42c1f179 ("xfrm: Extend the output_mark to support input direction and masking")
Signed-off-by: Benedict Wong <benedictwong@google.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
2019-01-16 13:10:55 +01:00
..
Kconfig
Makefile
xfrm_algo.c
xfrm_device.c
xfrm_hash.c
xfrm_hash.h
xfrm_input.c
xfrm_interface.c
xfrm_ipcomp.c
xfrm_output.c
xfrm_policy.c xfrm: Make set-mark default behavior backward compatible 2019-01-16 13:10:55 +01:00
xfrm_proc.c
xfrm_replay.c
xfrm_state.c
xfrm_sysctl.c
xfrm_user.c xfrm: refine validation of template and selector families 2019-01-10 09:12:48 +01:00