2015-02-11 10:23:45

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH] openvswitch: Add missing initialization in validate_and_copy_set_tun()

net/openvswitch/flow_netlink.c: In function ‘validate_and_copy_set_tun’:
net/openvswitch/flow_netlink.c:1749: warning: ‘err’ may be used uninitialized in this function

If ipv4_tun_from_nlattr() returns a different positive value than
OVS_TUNNEL_KEY_ATTR_GENEVE_OPTS, err will be uninitialized, and
validate_and_copy_set_tun() may return an undefined value instead of a
zero success indicator. Initialize err to zero to fix this.

Fixes: 1dd144cf5b4b47e1 ("openvswitch: Support VXLAN Group Policy extension")
Signed-off-by: Geert Uytterhoeven <[email protected]>
---
net/openvswitch/flow_netlink.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/openvswitch/flow_netlink.c b/net/openvswitch/flow_netlink.c
index 993281e6278dc829..3829328c5a7648bf 100644
--- a/net/openvswitch/flow_netlink.c
+++ b/net/openvswitch/flow_netlink.c
@@ -1746,7 +1746,7 @@ static int validate_and_copy_set_tun(const struct nlattr *attr,
struct sw_flow_key key;
struct ovs_tunnel_info *tun_info;
struct nlattr *a;
- int err, start, opts_type;
+ int err = 0, start, opts_type;

ovs_match_init(&match, &key, NULL);
opts_type = ipv4_tun_from_nlattr(nla_data(attr), &match, false, log);
--
1.9.1


2015-02-11 15:57:42

by Thomas Graf

[permalink] [raw]
Subject: Re: [PATCH] openvswitch: Add missing initialization in validate_and_copy_set_tun()

On 02/11/15 at 11:23am, Geert Uytterhoeven wrote:
> net/openvswitch/flow_netlink.c: In function ‘validate_and_copy_set_tun’:
> net/openvswitch/flow_netlink.c:1749: warning: ‘err’ may be used uninitialized in this function
>
> If ipv4_tun_from_nlattr() returns a different positive value than
> OVS_TUNNEL_KEY_ATTR_GENEVE_OPTS, err will be uninitialized, and
> validate_and_copy_set_tun() may return an undefined value instead of a
> zero success indicator. Initialize err to zero to fix this.
>
> Fixes: 1dd144cf5b4b47e1 ("openvswitch: Support VXLAN Group Policy extension")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Acked-by: Thomas Graf <[email protected]>

2015-02-11 21:31:27

by Pravin Shelar

[permalink] [raw]
Subject: Re: [PATCH] openvswitch: Add missing initialization in validate_and_copy_set_tun()

On Wed, Feb 11, 2015 at 2:23 AM, Geert Uytterhoeven
<[email protected]> wrote:
> net/openvswitch/flow_netlink.c: In function ‘validate_and_copy_set_tun’:
> net/openvswitch/flow_netlink.c:1749: warning: ‘err’ may be used uninitialized in this function
>
> If ipv4_tun_from_nlattr() returns a different positive value than
> OVS_TUNNEL_KEY_ATTR_GENEVE_OPTS, err will be uninitialized, and
> validate_and_copy_set_tun() may return an undefined value instead of a
> zero success indicator. Initialize err to zero to fix this.
>
> Fixes: 1dd144cf5b4b47e1 ("openvswitch: Support VXLAN Group Policy extension")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Acked-by: Pravin B Shelar <[email protected]>

2015-02-11 22:34:06

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] openvswitch: Add missing initialization in validate_and_copy_set_tun()

From: Geert Uytterhoeven <[email protected]>
Date: Wed, 11 Feb 2015 11:23:38 +0100

> net/openvswitch/flow_netlink.c: In function ?validate_and_copy_set_tun?:
> net/openvswitch/flow_netlink.c:1749: warning: ?err? may be used uninitialized in this function
>
> If ipv4_tun_from_nlattr() returns a different positive value than
> OVS_TUNNEL_KEY_ATTR_GENEVE_OPTS, err will be uninitialized, and
> validate_and_copy_set_tun() may return an undefined value instead of a
> zero success indicator. Initialize err to zero to fix this.
>
> Fixes: 1dd144cf5b4b47e1 ("openvswitch: Support VXLAN Group Policy extension")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Applied.
????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?