[ovs-dev] [PATCH v6 2/2] TCP flags matching support.

Jesse Gross jesse at nicira.com
Fri Oct 25 16:06:35 UTC 2013


On Thu, Oct 24, 2013 at 9:01 AM, Jarno Rajahalme <jrajahalme at nicira.com> wrote:
> diff --git a/datapath/flow_netlink.c b/datapath/flow_netlink.c
> index 515a9f6..fc6f42e 100644
> --- a/datapath/flow_netlink.c
> +++ b/datapath/flow_netlink.c
> @@ -154,8 +155,10 @@ static bool match_validate(const struct sw_flow_match *match,
>
>                         if (match->key->ip.proto == IPPROTO_TCP) {
>                                 key_expected |= 1ULL << OVS_KEY_ATTR_TCP;
> -                               if (match->mask && (match->mask->key.ip.proto == 0xff))
> +                               if (match->mask && (match->mask->key.ip.proto == 0xff)) {
>                                         mask_allowed |= 1ULL << OVS_KEY_ATTR_TCP;
> +                                       mask_allowed |= 1ULL << OVS_KEY_ATTR_TCP_FLAGS;

One thing that I should mention about this is that it doesn't require
the TCP_FLAGS key to be present if the protocol indicates that the
protocol is TCP. Requiring it would be the most consistent with the
rest of our netlink interface. However, I'm not sure that it's really
necessary any more now that we don't require exact match on all fields
with megaflows.



More information about the dev mailing list