On Fri, Sep 18, 2009 at 12:10:54PM +0100, Flavio Silvestrow wrote:
> + # Context-specific args
> + if context == NEIGHBOUR_CONTEXT:
> + dest_token = "lladdr"
> + extra_args = ["nud", "permanent"]
> + else:
> + dest_token = "via"
> +
> + result = utils.RunCmd(["ip", context, "replace", ip_address,
> + dest_token, dest_address, "dev", iface,
> + extra_args])
Guido pointed out that "extra_args" isn't properly initialized when
ROUTING_CONTEXT. Interdiff to fix this.
---
lib/networktables.py | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/lib/networktables.py b/lib/networktables.py
index 2a84b65..e600d67 100644
--- a/lib/networktables.py
+++ b/lib/networktables.py
@@ -99,10 +99,14 @@ def UpdateNetworkEntry(ip_address, dest_address, context,
iface):
extra_args = ["nud", "permanent"]
else:
dest_token = "via"
+ extra_args = []
- result = utils.RunCmd(["ip", context, "replace", ip_address,
- dest_token, dest_address, "dev", iface,
- extra_args])
+ cmd = ["ip", context, "replace", ip_address, dest_token, dest_address,
+ "dev", iface]
+
+ if extra_args:
+ cmd.append(extra_args)
+ result = utils.RunCmd(cmd)
if result.failed:
raise ganeti_errors.CommandError("Could not update table, error %s" %
result.output)