From: Thomas Graf Date: Fri, 29 Mar 2013 13:46:48 +0000 (+0100) Subject: openvswitch: Use nla_memcpy() to memcpy() data from attributes X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=32686a9d2988516788cfcc402e1355c1eba1186a;p=linux.git openvswitch: Use nla_memcpy() to memcpy() data from attributes Less error prone as it takes into account the length of both the destination buffer and the source attribute and documents when data is copied from an attribute. Signed-off-by: Thomas Graf Signed-off-by: Jesse Gross --- diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c index 5b58d163a4dc0..bca63c8487bb3 100644 --- a/net/openvswitch/datapath.c +++ b/net/openvswitch/datapath.c @@ -672,7 +672,7 @@ static int ovs_packet_cmd_execute(struct sk_buff *skb, struct genl_info *info) goto err; skb_reserve(packet, NET_IP_ALIGN); - memcpy(__skb_put(packet, len), nla_data(a[OVS_PACKET_ATTR_PACKET]), len); + nla_memcpy(__skb_put(packet, len), a[OVS_PACKET_ATTR_PACKET], len); skb_reset_mac_header(packet); eth = eth_hdr(packet); diff --git a/net/openvswitch/flow.c b/net/openvswitch/flow.c index 332486839347c..cf9328be75e92 100644 --- a/net/openvswitch/flow.c +++ b/net/openvswitch/flow.c @@ -211,7 +211,7 @@ struct sw_flow_actions *ovs_flow_actions_alloc(const struct nlattr *actions) return ERR_PTR(-ENOMEM); sfa->actions_len = actions_len; - memcpy(sfa->actions, nla_data(actions), actions_len); + nla_memcpy(sfa->actions, actions, actions_len); return sfa; }