net/sched: act_ct: handle DNAT tuple collision
authorMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Wed, 9 Jun 2021 14:23:56 +0000 (11:23 -0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 9 Jun 2021 22:34:51 +0000 (15:34 -0700)
commit13c62f5371e3eb4fc3400cfa26e64ca75f888008
treec4fc58c477b54435953d60fff561da9e75cfe1e6
parentd2e381c4963663bca6f30c3b996fa4dbafe8fcb5
net/sched: act_ct: handle DNAT tuple collision

This this the counterpart of 8aa7b526dc0b ("openvswitch: handle DNAT
tuple collision") for act_ct. From that commit changelog:

"""
With multiple DNAT rules it's possible that after destination
translation the resulting tuples collide.

...

Netfilter handles this case by allocating a null binding for SNAT at
egress by default.  Perform the same operation in openvswitch for DNAT
if no explicit SNAT is requested by the user and allocate a null binding
for SNAT for packets in the "original" direction.
"""

Fixes: 95219afbb980 ("act_ct: support asymmetric conntrack")
Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/act_ct.c