tunnel: Clear IPSEC_MARK on input rather than output.
authorJesse Gross <jesse@nicira.com>
Tue, 6 Aug 2013 19:57:15 +0000 (12:57 -0700)
committerJesse Gross <jesse@nicira.com>
Tue, 13 Aug 2013 21:39:51 +0000 (14:39 -0700)
commited2e72459317c689c46d3f1d279945485ff34fda
tree94c773d81dcdcbc9805c93c873d151cf3f4dc12a
parent62a7cc71f56ff6a2e943db3d1db238bf7ecd8bc9
tunnel: Clear IPSEC_MARK on input rather than output.

Currently we remove the IPSEC_MARK flag from all packets that are
egressing on non-tunnel ports. However, this behavior is confusing
if we allow OpenFlow controllers to match and set the pkt_mark field
because the tunnel behavior applies even on non-tunnel ports.

This instead clears the mark on tunnel input which should have the
same effect for tunnel ports. However, on non-tunnel traffic (or
even for traffic entering on a tunnel port but leaving on a non-
tunnel port) it allows the mark to pass through without change.

Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Andy Zhou <azhou@nicira.com>
ofproto/ofproto-dpif-xlate.c
ofproto/tunnel.c
ofproto/tunnel.h
tests/ofproto-dpif.at