openvswitch: potential NULL deref in sample()
Dan Carpenter [Mon, 23 Jul 2012 07:46:28 +0000 (10:46 +0300)]
If there is no OVS_SAMPLE_ATTR_ACTIONS set then "acts_list" is NULL and
it leads to a NULL dereference when we call nla_len(acts_list).  This
is a static checker fix, not something I have seen in testing.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

net/openvswitch/actions.c

index f3f96ba..320fa0e 100644 (file)
@@ -325,6 +325,9 @@ static int sample(struct datapath *dp, struct sk_buff *skb,
                }
        }
 
+       if (!acts_list)
+               return 0;
+
        return do_execute_actions(dp, skb, nla_data(acts_list),
                                                 nla_len(acts_list), true);
 }