| #!/usr/bin/python | |
| import dbus | |
| def extract_values(values): | |
| val = "{" | |
| for key in values.keys(): | |
| val += " " + key + "=" | |
| if key in ["PrefixLength"]: | |
| val += "%s" % (int(values[key])) | |
| else: | |
| if key in ["Servers", "Excludes"]: | |
| val += extract_list(values[key]) | |
| else: | |
| val += str(values[key]) | |
| val += " }" | |
| return val | |
| def extract_list(list): | |
| val = "[" | |
| for i in list: | |
| val += " " + str(i) | |
| val += " ]" | |
| return val | |
| bus = dbus.SystemBus() | |
| manager = dbus.Interface(bus.get_object("net.connman", "/"), | |
| "net.connman.Manager") | |
| for path, properties in manager.GetServices(): | |
| service = dbus.Interface(bus.get_object("net.connman", path), | |
| "net.connman.Service") | |
| identifier = path[path.rfind("/") + 1:] | |
| print "[ %s ]" % (identifier) | |
| for key in properties.keys(): | |
| if key in ["IPv4", "IPv4.Configuration", | |
| "IPv6", "IPv6.Configuration", | |
| "Proxy", "Proxy.Configuration", | |
| "Ethernet", "Provider"]: | |
| val = extract_values(properties[key]) | |
| elif key in ["Nameservers", "Nameservers.Configuration", | |
| "Domains", "Domains.Configuration", | |
| "Timeservers", "Timeservers.Configuration", | |
| "Security"]: | |
| val = extract_list(properties[key]) | |
| elif key in ["Favorite", "Immutable", "AutoConnect", | |
| "LoginRequired", "PassphraseRequired"]: | |
| if properties[key] == dbus.Boolean(1): | |
| val = "true" | |
| else: | |
| val = "false" | |
| elif key in ["Strength"]: | |
| val = int(properties[key]) | |
| else: | |
| val = properties[key] | |
| print " %s = %s" % (key, val) | |