diff --git a/src/hostinfo/nettools.py b/src/hostinfo/nettools.py index 8d215712ae9168312038a355cd2c61f78feec71b..b726d445192106dd74f65f49e463664c7d632153 100644 --- a/src/hostinfo/nettools.py +++ b/src/hostinfo/nettools.py @@ -1,5 +1,4 @@ -import sys -import os +import datetime import hostinfo.util as util # File syntax is according to nettools manual: # IP-adress;hostnamn;kommasepareradeMAC-adresser;DHCP-grupp;LucatID;kommentar @@ -36,7 +35,8 @@ def generate_row_tup(host): h = list(host) # Ensure proper length of tuple to unpack h = h + [""]*(6 - len(h)) - ip, hostname, maclist, dhcp_group, owner, comment = h + ip, hostname, maclist, dhcp_group, owner, _ = h + comment = datetime.datetime.now().isoformat(timespec='seconds') return generate_row(ip, hostname, maclist, dhcp_group, owner, comment) def filter_nets(tree, options, ip): @@ -51,8 +51,16 @@ def emit_hosts(tree, options): for iface in tree._host_._interface_: for ip in iface._ip_: if ip and ip.address[0]: + try: + fqdn = util.fqn(iface, tree)[0:-1] + if ip.name[0]: + parts = fqdn.split('.') + parts[0] = ip.name[0] + fqdn = '.'.join(parts) + except: + fqdn = iface.name[1] + ".control.lth.se" result.append((ip.address[0], - iface.name[1], + fqdn, [iface.ethernet[0] or ""])) pass pass @@ -68,20 +76,18 @@ def subnet_hosts(tree, options): def generate(tree, options): hosts = emit_hosts(tree, options) - expected_hosts = subnet_hosts(tree, options) - - for eh in expected_hosts: - exists = False - for h in hosts: - if h[0] == eh: - exists = True - break - pass - if not exists: - hosts.append((eh, "")) - #print("Appended", eh) - pass - pass + #expected_hosts = subnet_hosts(tree, options) + #for eh in expected_hosts: + # exists = False + # for h in hosts: + # if h[0] == eh: + # exists = True + # break + # pass + # if not exists: + # hosts.append((eh, "")) + # pass + # pass hosts.sort(key=lambda e: [int(v) for v in e[0].split('.')]) output = []