History

openvswitch: add ct_clear action

This adds a ct_clear action for clearing conntrack state. ct_clear is currently implemented in OVS userspace, but is not backed by an action in the kernel datapath. This is useful for flows that may modify a packet tuple after a ct lookup has already occurred.

Eric Garver committed 9 years ago

Commit b8226961 parent 833e0e25 files · +29 −0Browse files

Showing the changes to include/uapi/linux (1 of 5 files). Show all

Unified · Split

include/uapi/linux/openvswitch.h+2−0
@@ -807,6 +807,7 @@ struct ovs_action_push_eth { · 806 unmodified lines
807 * packet.807 * packet.
808 * @OVS_ACTION_ATTR_POP_ETH: Pop the outermost Ethernet header off the808 * @OVS_ACTION_ATTR_POP_ETH: Pop the outermost Ethernet header off the
809 * packet.809 * packet.
810 * @OVS_ACTION_ATTR_CT_CLEAR: Clear conntrack state from the packet.
810 *811 *
811 * Only a single header can be set with a single %OVS_ACTION_ATTR_SET. Not all812 * Only a single header can be set with a single %OVS_ACTION_ATTR_SET. Not all
812 * fields within a header are modifiable, e.g. the IPv4 protocol and fragment813 * fields within a header are modifiable, e.g. the IPv4 protocol and fragment
@@ -836,6 +837,7 @@ enum ovs_action_attr { · 23 unmodified lines
836 OVS_ACTION_ATTR_TRUNC, /* u32 struct ovs_action_trunc. */837 OVS_ACTION_ATTR_TRUNC, /* u32 struct ovs_action_trunc. */
837 OVS_ACTION_ATTR_PUSH_ETH, /* struct ovs_action_push_eth. */838 OVS_ACTION_ATTR_PUSH_ETH, /* struct ovs_action_push_eth. */
838 OVS_ACTION_ATTR_POP_ETH, /* No argument. */839 OVS_ACTION_ATTR_POP_ETH, /* No argument. */
840 OVS_ACTION_ATTR_CT_CLEAR, /* No argument. */
839 841
840 __OVS_ACTION_ATTR_MAX, /* Nothing past this will be accepted842 __OVS_ACTION_ATTR_MAX, /* Nothing past this will be accepted
841 * from userspace. */843 * from userspace. */