2016-03-28 10:09:10

by Haishuang Yan

[permalink] [raw]
Subject: [PATCH] openvswitch: Use proper buffer size in nla_memcpy

For the input parameter count, it's better to use the size
of destination buffer size, as nla_memcpy would take into
account the length of the source netlink attribute when
a data is copied from an attribute.

Signed-off-by: Haishuang Yan <[email protected]>
---
net/openvswitch/conntrack.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/net/openvswitch/conntrack.c b/net/openvswitch/conntrack.c
index dc5eb29..f8a8d43 100644
--- a/net/openvswitch/conntrack.c
+++ b/net/openvswitch/conntrack.c
@@ -968,7 +968,8 @@ static int parse_nat(const struct nlattr *attr,
break;

case OVS_NAT_ATTR_IP_MIN:
- nla_memcpy(&info->range.min_addr, a, nla_len(a));
+ nla_memcpy(&info->range.min_addr, a,
+ sizeof(info->range.min_addr));
info->range.flags |= NF_NAT_RANGE_MAP_IPS;
break;

--
1.8.3.1




2016-03-28 15:39:10

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] openvswitch: Use proper buffer size in nla_memcpy

From: Haishuang Yan <[email protected]>
Date: Mon, 28 Mar 2016 18:08:59 +0800

> For the input parameter count, it's better to use the size
> of destination buffer size, as nla_memcpy would take into
> account the length of the source netlink attribute when
> a data is copied from an attribute.
>
> Signed-off-by: Haishuang Yan <[email protected]>

Applied, thanks.