(Re #882) Handle errors in get_interfaces

If there is an error in how interfaces are configured (or only one set, like IPv6),
the setup command should not error out.
This commit is contained in:
Sundar Raman 2012-08-15 19:22:05 -04:00
parent ffabded2e6
commit 3aff9396e8

View file

@ -467,6 +467,10 @@ class LinuxNetwork(Network):
interface = dict(v4 = {}, v6 = {}) interface = dict(v4 = {}, v6 = {})
for v in 'v4', 'v6': for v in 'v4', 'v6':
output = subprocess.Popen(command[v], stdout=subprocess.PIPE).communicate()[0] output = subprocess.Popen(command[v], stdout=subprocess.PIPE).communicate()[0]
if not output:
# v6 routing may result in
# RTNETLINK answers: Invalid argument
continue
words = output.split('\n')[0].split() words = output.split('\n')[0].split()
# A valid output starts with the queried address on the first line # A valid output starts with the queried address on the first line
if words[0] == command[v][-1]: if words[0] == command[v][-1]: