From: Thomas Graf Date: Fri, 29 Mar 2013 13:46:47 +0000 (+0100) Subject: openvswitch: Specify the minimal length of OVS_PACKET_ATTR_PACKET in the policy X-Git-Tag: firefly_0821_release~3680^2~548^2~111^2~9 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=dded45fc179a07f4463ce37fc376977568655836;p=firefly-linux-kernel-4.4.55.git openvswitch: Specify the minimal length of OVS_PACKET_ATTR_PACKET in the policy Specifying the minimal length in the policy makes it reuseable and documents the interface. Signed-off-by: Thomas Graf Signed-off-by: Jesse Gross --- diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c index 8759265a3e46..5b58d163a4dc 100644 --- a/net/openvswitch/datapath.c +++ b/net/openvswitch/datapath.c @@ -662,8 +662,7 @@ static int ovs_packet_cmd_execute(struct sk_buff *skb, struct genl_info *info) err = -EINVAL; if (!a[OVS_PACKET_ATTR_PACKET] || !a[OVS_PACKET_ATTR_KEY] || - !a[OVS_PACKET_ATTR_ACTIONS] || - nla_len(a[OVS_PACKET_ATTR_PACKET]) < ETH_HLEN) + !a[OVS_PACKET_ATTR_ACTIONS]) goto err; len = nla_len(a[OVS_PACKET_ATTR_PACKET]); @@ -744,7 +743,7 @@ err: } static const struct nla_policy packet_policy[OVS_PACKET_ATTR_MAX + 1] = { - [OVS_PACKET_ATTR_PACKET] = { .type = NLA_UNSPEC }, + [OVS_PACKET_ATTR_PACKET] = { .len = ETH_HLEN }, [OVS_PACKET_ATTR_KEY] = { .type = NLA_NESTED }, [OVS_PACKET_ATTR_ACTIONS] = { .type = NLA_NESTED }, };