diff options
author | Jiri Pirko <jiri@resnulli.us> | 2015-05-12 14:56:19 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-05-13 15:19:47 -0400 |
commit | 67a900cc0436d74e7ff89042371760def087680d (patch) | |
tree | fa8b25e4f6117d69c1714744fe8e0fdc67914408 /include | |
parent | b924933cbbfbdcaa2831a39780c116ec6e48c397 (diff) | |
download | linux-67a900cc0436d74e7ff89042371760def087680d.tar.gz linux-67a900cc0436d74e7ff89042371760def087680d.tar.bz2 linux-67a900cc0436d74e7ff89042371760def087680d.zip |
flow_dissector: introduce support for Ethernet addresses
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/flow_dissector.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/net/flow_dissector.h b/include/net/flow_dissector.h index 586b12306a52..5eac9870689c 100644 --- a/include/net/flow_dissector.h +++ b/include/net/flow_dissector.h @@ -4,6 +4,7 @@ #include <linux/types.h> #include <linux/skbuff.h> #include <linux/in6.h> +#include <uapi/linux/if_ether.h> /** * struct flow_dissector_key_basic: @@ -54,12 +55,24 @@ struct flow_dissector_key_ipv6_addrs { struct in6_addr dst; }; +/** + * struct flow_dissector_key_eth_addrs: + * @src: source Ethernet address + * @dst: destination Ethernet address + */ +struct flow_dissector_key_eth_addrs { + /* (dst,src) must be grouped, in the same way than in ETH header */ + unsigned char dst[ETH_ALEN]; + unsigned char src[ETH_ALEN]; +}; + enum flow_dissector_key_id { FLOW_DISSECTOR_KEY_BASIC, /* struct flow_dissector_key_basic */ FLOW_DISSECTOR_KEY_IPV4_ADDRS, /* struct flow_dissector_key_addrs */ FLOW_DISSECTOR_KEY_IPV6_HASH_ADDRS, /* struct flow_dissector_key_addrs */ FLOW_DISSECTOR_KEY_PORTS, /* struct flow_dissector_key_ports */ FLOW_DISSECTOR_KEY_IPV6_ADDRS, /* struct flow_dissector_key_ipv6_addrs */ + FLOW_DISSECTOR_KEY_ETH_ADDRS, /* struct flow_dissector_key_eth_addrs */ FLOW_DISSECTOR_KEY_MAX, }; |