diff options
author | Thomas Graf <tgraf@suug.ch> | 2013-03-29 14:46:48 +0100 |
---|---|---|
committer | Jesse Gross <jesse@nicira.com> | 2013-03-29 17:53:46 -0700 |
commit | 32686a9d2988516788cfcc402e1355c1eba1186a (patch) | |
tree | 1dddb07c73f7e8ece015c414ea517b51eddfa182 /net/openvswitch | |
parent | dded45fc179a07f4463ce37fc376977568655836 (diff) | |
download | kernel_goldelico_gta04-32686a9d2988516788cfcc402e1355c1eba1186a.zip kernel_goldelico_gta04-32686a9d2988516788cfcc402e1355c1eba1186a.tar.gz kernel_goldelico_gta04-32686a9d2988516788cfcc402e1355c1eba1186a.tar.bz2 |
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 <tgraf@suug.ch>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'net/openvswitch')
-rw-r--r-- | net/openvswitch/datapath.c | 2 | ||||
-rw-r--r-- | net/openvswitch/flow.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c index 5b58d16..bca63c8 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 3324868..cf9328b 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; } |