Exemple #1
0
    def nm_online_full(self, iface, timeout=60):
        '''Wait for NetworkManager connection to be completed (incl. IP4 & DHCP)'''

        gi.require_version('NM', '1.0')
        from gi.repository import NM
        for t in range(timeout):
            c = NM.Client.new(None)
            con = c.get_device_by_iface(iface).get_active_connection()
            if not con:
                self.fail('no active connection for %s by NM' % iface)
            flags = NM.utils_enum_to_str(NM.ActivationStateFlags, con.get_state_flags())
            if "ip4-ready" in flags:
                break
            time.sleep(1)
        else:
            self.fail('timed out waiting for %s to get ready by NM' % iface)
Exemple #2
0
#!/usr/bin/env python
# SPDX-License-Identifier: GPL-2.0+
#
# Copyright (C) 2019 Red Hat, Inc.
#

import gi
gi.require_version('NM', '1.0')
from gi.repository import GLib, NM

if __name__ == "__main__":
    client = NM.Client.new(None)
    devices = client.get_devices()

    for d in devices:
        print("{:<16} {:<16} {}".format(d.get_iface(),
                                        "(" + d.get_type_description() + ")",
                                        NM.utils_enum_to_str(NM.DeviceInterfaceFlags,
                                                             d.get_interface_flags())))
Exemple #3
0
 def _flags_to_str(self, flags):
     return NM.utils_enum_to_str(type(flags), flags)