linux/net/openvswitch
Jesse Gross 982b527004 openvswitch: Fix mask generation for nested attributes.
Masks were added to OVS flows in a way that was backwards compatible
with userspace programs that did not generate masks. As a result, it is
possible that we may receive flows that do not have a mask and we need
to synthesize one.

Generating a mask requires iterating over attributes and descending into
nested attributes. For each level we need to know the size to generate the
correct mask. We do this with a linked table of attribute types.

Although the logic to handle these nested attributes was there in concept,
there are a number of bugs in practice. Examples include incomplete links
between tables, variable length attributes being treated as nested and
missing sanity checks.

Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Pravin B Shelar <pshelar@nicira.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-09-15 16:25:41 -07:00
..
actions.c ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
conntrack.c openvswitch: Fix conntrack compilation without mark. 2015-08-28 22:23:59 -07:00
conntrack.h openvswitch: Remove conntrack Kconfig option. 2015-09-06 23:48:33 -07:00
datapath.c ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
datapath.h ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
dp_notify.c openvswitch: Move dev pointer into vport itself 2015-07-21 10:39:07 -07:00
flow_netlink.c openvswitch: Fix mask generation for nested attributes. 2015-09-15 16:25:41 -07:00
flow_netlink.h ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
flow_table.c ip_tunnels: add IPv6 addresses to ip_tunnel_key 2015-08-20 15:42:36 -07:00
flow_table.h openvswitch: Add support for unique flow IDs. 2015-01-26 15:45:50 -08:00
flow.c ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
flow.h openvswitch: Allow matching on conntrack label 2015-08-27 11:40:43 -07:00
Kconfig openvswitch: Fix dependency on IPv6 defrag. 2015-09-11 15:39:04 -07:00
Makefile openvswitch: Remove conntrack Kconfig option. 2015-09-06 23:48:33 -07:00
vport-geneve.c ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
vport-gre.c ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
vport-internal_dev.c openvswitch: Remove vport stats. 2015-08-29 19:07:15 -07:00
vport-internal_dev.h openvswitch: introduce rtnl ops stub 2014-07-01 14:40:17 -07:00
vport-netdev.c openvswitch: Remove vport stats. 2015-08-29 19:07:15 -07:00
vport-netdev.h openvswitch: Remove vport stats. 2015-08-29 19:07:15 -07:00
vport-vxlan.c ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
vport.c ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00
vport.h ip-tunnel: Use API to access tunnel metadata options. 2015-08-31 12:28:56 -07:00