From e8ed9c707d9f83bb322f79ab50824deeb81eaaf7 Mon Sep 17 00:00:00 2001 From: David Wragg Date: Fri, 13 Mar 2015 11:13:16 +0000 Subject: [PATCH] Refactor --- weave | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/weave b/weave index af0763c9..1e90266e 100755 --- a/weave +++ b/weave @@ -225,17 +225,22 @@ connect_container_to_bridge() { return 1 fi - if run_tool host ethtool -K $GUEST_IFNAME tx off >/dev/null && - ip link set $LOCAL_IFNAME master $BRIDGE && - ip link set $LOCAL_IFNAME up && - ip link set $GUEST_IFNAME netns $NETNS ; then - ip netns exec $NETNS ip link set $GUEST_IFNAME name $CONTAINER_IFNAME - else + if ! run_tool host ethtool -K $GUEST_IFNAME tx off >/dev/null || + ! ip link set $LOCAL_IFNAME master $BRIDGE || + ! ip link set $LOCAL_IFNAME up || + ! ip link set $GUEST_IFNAME netns $NETNS ; then # failed before we assigned the veth to the container's - # namespace - delete it + # namespace ip link del $LOCAL_IFNAME type veth || true return 1 fi + + if ! ip netns exec $NETNS ip link set $GUEST_IFNAME name $CONTAINER_IFNAME ; then + # failed after we assigned the veth to the container's + # namespace + ip netns exec $NETNS ip link del $GUEST_IFNAME type veth || true + return 1 + fi } launch() {