|
|
|
@ -670,7 +670,11 @@ def _need_netaddr(f_name, *args, **kwargs):
|
|
|
|
raise errors.AnsibleFilterError('The {0} filter requires python-netaddr be'
|
|
|
|
raise errors.AnsibleFilterError('The {0} filter requires python-netaddr be'
|
|
|
|
' installed on the ansible controller'.format(f_name))
|
|
|
|
' installed on the ansible controller'.format(f_name))
|
|
|
|
|
|
|
|
|
|
|
|
# ---- Ansible filters ----
|
|
|
|
def ip4_hex(arg):
|
|
|
|
|
|
|
|
''' Convert an IPv4 address to Hexadecimal notation '''
|
|
|
|
|
|
|
|
numbers = list(map(int, arg.split('.')))
|
|
|
|
|
|
|
|
return '{:02x}{:02x}{:02x}{:02x}'.format(*numbers)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class FilterModule(object):
|
|
|
|
class FilterModule(object):
|
|
|
|
''' IP address and network manipulation filters '''
|
|
|
|
''' IP address and network manipulation filters '''
|
|
|
|
@ -683,6 +687,7 @@ class FilterModule(object):
|
|
|
|
'ipsubnet': ipsubnet,
|
|
|
|
'ipsubnet': ipsubnet,
|
|
|
|
'nthhost': nthhost,
|
|
|
|
'nthhost': nthhost,
|
|
|
|
'slaac': slaac,
|
|
|
|
'slaac': slaac,
|
|
|
|
|
|
|
|
'ip4_hex': ip4_hex,
|
|
|
|
|
|
|
|
|
|
|
|
# MAC / HW addresses
|
|
|
|
# MAC / HW addresses
|
|
|
|
'hwaddr': hwaddr,
|
|
|
|
'hwaddr': hwaddr,
|
|
|
|
|