From: Thomas Parrott Date: Tue, 9 Jun 2020 12:04:21 +0000 (+0100) Subject: network: Adds calls to free_ovs_veth_vlan_args in setup_veth_ovs_bridge_vlan X-Git-Tag: lxc-5.0.0~421^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3fe6b5cf29ae903f01f18c72651ca508f0314e61;p=thirdparty%2Flxc.git network: Adds calls to free_ovs_veth_vlan_args in setup_veth_ovs_bridge_vlan Signed-off-by: Thomas Parrott --- diff --git a/src/lxc/network.c b/src/lxc/network.c index 058469b1e..b64c62d49 100644 --- a/src/lxc/network.c +++ b/src/lxc/network.c @@ -510,8 +510,10 @@ static int setup_veth_ovs_bridge_vlan(char *veth1, struct lxc_netdev *netdev) int rc; rc = snprintf(buf, sizeof(buf), "%u", vlan_id); - if (rc < 0 || (size_t)rc >= sizeof(buf)) + if (rc < 0 || (size_t)rc >= sizeof(buf)) { + free_ovs_veth_vlan_args(&args); return log_error_errno(-1, EINVAL, "Failed to parse tagged vlan \"%u\" for interface \"%s\"", vlan_id, veth1); + } if (args.trunks) args.trunks = must_concat(NULL, args.trunks, buf, ",", (char *)NULL); @@ -525,10 +527,13 @@ static int setup_veth_ovs_bridge_vlan(char *veth1, struct lxc_netdev *netdev) char cmd_output[PATH_MAX]; ret = run_command(cmd_output, sizeof(cmd_output), lxc_ovs_setup_bridge_vlan_exec, (void *)&args); - if (ret < 0) + if (ret < 0) { + free_ovs_veth_vlan_args(&args); return log_error_errno(-1, ret, "Failed to setup openvswitch vlan on port \"%s\": %s", args.nic, cmd_output); + } } + free_ovs_veth_vlan_args(&args); return 0; }