Check for ip-addresses before iterating over them

This commit is contained in:
johnpc35 2020-08-08 02:25:10 -04:00
parent 01dd5bc270
commit d9d990bd34
1 changed files with 18 additions and 17 deletions

View File

@ -208,25 +208,26 @@ class ProxmoxAPI(object):
if type(networks) is dict: if type(networks) is dict:
for network in networks: for network in networks:
for ip_address in ['ip-address']: for ip_address in ['ip-address']:
try: try:
# IP address validation # IP address validation
if socket.inet_aton(ip_address): if socket.inet_aton(ip_address):
# Ignore localhost # Ignore localhost
if ip_address != '127.0.0.1': if ip_address != '127.0.0.1':
return ip_address return ip_address
except socket.error: except socket.error:
pass pass
elif type(networks) is list: elif type(networks) is list:
for network in networks: for network in networks:
for ip_address in network['ip-addresses']: if 'ip-addresses' in network:
try: for ip_address in network['ip-addresses']:
# IP address validation try:
if socket.inet_aton(ip_address['ip-address']): # IP address validation
# Ignore localhost if socket.inet_aton(ip_address['ip-address']):
if ip_address['ip-address'] != '127.0.0.1': # Ignore localhost
return ip_address['ip-address'] if ip_address['ip-address'] != '127.0.0.1':
except socket.error: return ip_address['ip-address']
pass except socket.error:
pass
return None return None
def openvz_ip_address(self, node, vm): def openvz_ip_address(self, node, vm):