2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-31 06:15:47 +00:00

flow: Enable retrieval of TCP flags from IPv6 traffic.

We currently check that a packet is IPv4 and TCP before fetching the
TCP flags.  This enables fetching from IPv6 packets as well.

Bug #10194

Reported-by: Michael Mao <mmao@nicira.com>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Pravin B Shelar <pshelar@nicira.com>
This commit is contained in:
Jesse Gross
2012-03-23 13:25:31 -07:00
parent 9c47b45a3b
commit 11460e2316
2 changed files with 4 additions and 2 deletions

View File

@@ -976,7 +976,8 @@ dp_netdev_flow_used(struct dp_netdev_flow *flow, struct flow *key,
flow->used = time_msec();
flow->packet_count++;
flow->byte_count += packet->size;
if (key->dl_type == htons(ETH_TYPE_IP) &&
if ((key->dl_type == htons(ETH_TYPE_IP) ||
key->dl_type == htons(ETH_TYPE_IPV6)) &&
key->nw_proto == IPPROTO_TCP && packet->l7) {
struct tcp_header *th = packet->l4;
flow->tcp_ctl |= th->tcp_ctl;