Beispiel #1
0
def write_login_details_standalone():
    owner = get_device_owner()
    if owner is None:
        print("No device owner details found.")
        return 0
    from probert.prober import Prober
    from subiquitycore.models.network import NETDEV_IGNORED_IFACE_TYPES
    prober = Prober()
    prober.probe_network()
    links = prober.get_results()['network']['links']
    ips = []
    for l in sorted(links, key=lambda l: l['netlink_data']['name']):
        if l['type'] in NETDEV_IGNORED_IFACE_TYPES:
            continue
        for addr in l['addresses']:
            if addr['scope'] == "global":
                ips.append(addr['address'].split('/')[0])
    if len(ips) == 0:
        tty_name = os.ttyname(0)[5:]
        version = get_core_version() or "16"
        print(
            login_details_tmpl_no_ip.format(tty_name=tty_name,
                                            version=version))
        return 2
    write_login_details(sys.stdout, owner['username'], ips)
    return 0
Beispiel #2
0
def get_ips_standalone():
    from probert.prober import Prober
    from subiquitycore.models.network import NETDEV_IGNORED_IFACE_TYPES
    prober = Prober()
    prober.probe_network()
    links = prober.get_results()['network']['links']
    ips = []
    for link in sorted(links, key=lambda link: link['netlink_data']['name']):
        if link['type'] in NETDEV_IGNORED_IFACE_TYPES:
            continue
        for addr in link['addresses']:
            if addr['scope'] == "global":
                ips.append(addr['address'].split('/')[0])
    return ips