Try to find ip command in either /sbin or /usr/sbin

If ip is not found in either /sbin or /usr/sbin, this will return
an empty result.  It seems extremely unlikely that a linux system will
not have iproute2 installed
pull/854/head
Stephen Fromm 12 years ago
parent 84028c2339
commit c4ce5f9497

@ -453,8 +453,13 @@ class LinuxNetwork(Network):
ipv4_address = None, ipv4_address = None,
ipv6_address = None ipv6_address = None
) )
ipbin = '/sbin/ip'
output = subprocess.Popen(['/sbin/ip','addr', 'show'], stdout=subprocess.PIPE).communicate()[0] if not os.path.exists(ipbin):
if os.path.exists('/usr/sbin/ip'):
ipbin = '/usr/sbin/ip'
else:
return interfaces, ips
output = subprocess.Popen([ipbin, 'addr', 'show'], stdout=subprocess.PIPE).communicate()[0]
for line in output.split('\n'): for line in output.split('\n'):
if line: if line:
words = line.split() words = line.split()

Loading…
Cancel
Save