|
|
|
@ -65,7 +65,7 @@ from ansible.module_utils.common.process import get_bin_path
|
|
|
|
|
class InventoryModule(BaseInventoryPlugin, Constructable, Cacheable):
|
|
|
|
|
|
|
|
|
|
NAME = 'nmap'
|
|
|
|
|
find_host = re.compile(r'^Nmap scan report for ([\w,.,-]+) \(([\w,.,:,\[,\]]+)\)')
|
|
|
|
|
find_host = re.compile(r'^Nmap scan report for ([\w,.,-]+)(?: \(([\w,.,:,\[,\]]+)\))?')
|
|
|
|
|
find_port = re.compile(r'^(\d+)/(\w+)\s+(\w+)\s+(\w+)')
|
|
|
|
|
|
|
|
|
|
def __init__(self):
|
|
|
|
@ -140,7 +140,11 @@ class InventoryModule(BaseInventoryPlugin, Constructable, Cacheable):
|
|
|
|
|
else:
|
|
|
|
|
host = hits.group(1)
|
|
|
|
|
|
|
|
|
|
ip = hits.group(2)
|
|
|
|
|
# if no reverse dns exists, just use ip instead as hostname
|
|
|
|
|
if hits.group(2) is not None:
|
|
|
|
|
ip = hits.group(2)
|
|
|
|
|
else:
|
|
|
|
|
ip = hits.group(1)
|
|
|
|
|
|
|
|
|
|
if host is not None:
|
|
|
|
|
# update inventory
|
|
|
|
|