NetworkManager D-Bus Interface Specification

Version 0.8.5.92

Copyright (C) 2008 - 2011 Red Hat, Inc.
Copyright (C) 2008 - 2009 Novell, Inc.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Interfaces

org.freedesktop.NetworkManager

Methods:

GetDevices ( ) → ao

Get the list of network devices.

Returns

devices - ao
List of object paths of network devices known to the system.

ActivateConnection ( s: service_name, o: connection, o: device, o: specific_object ) → o

Activate a connection using the supplied device.

Parameters

service_name - s
The D-Bus service name of the settings service that provides this connection.
connection - o
The connection to activate the devices with.
device - o
The object path of device to be activated for physical connections. This parameter is ignored for VPN connections, because the specific_object (if provided) specifies the device to use.
specific_object - o
The path of a connection-type-specific object this activation should use. This parameter is currently ignored for wired and mobile broadband connections, and the value of "/" should be used (ie, no specific object). For WiFi connections, pass the object path of a specific AP from the card's scan list, or "/" to pick and AP automatically. For VPN connections, pass the object path of an ActiveConnection object that should serve as the "base" connection (to which the VPN connections lifetime will be tied), or pass "/" and NM will automatically use the current default device.

Returns

active_connection - o
The path of the active connection object representing this active connection.

Possible errors

org.freedesktop.NetworkManager.Error.UnknownConnection
Connection was not provided by any known settings service. (generic description)
org.freedesktop.NetworkManager.Error.UnknownDevice
Unknown device. (generic description)
org.freedesktop.NetworkManager.Error.InvalidService
Invalid settings service (not a recognized system or user settings service name). (generic description)
org.freedesktop.NetworkManager.Error.ConnectionActivating
Another connection is already activating or the same connection is already active. FIXME: check if the error name is correct. FIXME: split into 2 errors?
org.freedesktop.NetworkManager.Error.ConnectionInvalid
The connection is invalid for this device.

DeactivateConnection ( o: active_connection ) → nothing

Deactivate an active connection.

Parameters

active_connection - o
The currently active connection to deactivate.

Sleep ( b: sleep ) → nothing

Control the NetworkManager daemon's sleep state. When asleep, all interfaces that it manages are deactivated. When awake, devices are available to be activated. This command should not be called directly by users or clients; it is intended for system suspend/resume tracking.

Parameters

sleep - b
Indicates whether the NetworkManager daemon should sleep or wake.

Enable ( b: enable ) → nothing

Control whether overall networking is enabled or disabled. When disabled, all interfaces that NM manages are deactivated. When enabled, all managed interfaces are re-enabled and available to be activated. This command should be used by clients that provide to users the ability to enable/disable all networking.

Parameters

enable - b
If FALSE, indicates that all networking should be disabled. If TRUE, indicates that NetworkManager should begin managing network devices.

GetPermissions ( ) → a{ss}

Returns the permissions a caller has for various authenticated operations that NetworkManager provides, like Enable/Disable networking, changing WiFi, WWAN, and WiMAX state, etc.

Returns

permissions - a{ss}
Dictionary of available permissions and results. Each permission is represented by a name (ie "org.freedesktop.NetworkManager.Foobar") and each result is one of the following values: "yes" (the permission is available), "auth" (the permission is available after a successful authentication), or "no" (the permission is denied). Clients may use these values in the UI to indicate the ability to perform certain operations.

SetLogging ( s: level, s: domains ) → nothing

Set logging verbosity and which operations are logged.

Parameters

level - s
One of [ERR, WARN, INFO, DEBUG].
domains - s
A combination of logging domains separated by commas (','), or "NONE" to disable logging. Each domain enables logging for operations related to that domain. Available domains are: [NONE, HW, RFKILL, ETHER, WIFI, BT, MB, DHCP4, DHCP6, PPP, WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT, USER_SET, SYS_SET, SUSPEND, CORE, DEVICE, OLPC]. If an empty string is given, the log level is changed but the current set of log domains remains unchanged.

sleep ( ) → nothing

DEPRECATED. Control the NetworkManager daemon's sleep state. When asleep, all interfaces that it manages are deactivated.

wake ( ) → nothing

DEPRECATED. Control the NetworkManager daemon's sleep state. When awake, all known interfaces are available to be activated.

state ( ) → u

DEPRECATED. The overall state of the NetworkManager daemon.

Returns

state - u (NM_STATE)

Signals:

CheckPermissions ( )

Emitted when system authorization details change, indicating that clients may wish to recheck permissions with GetPermissions.

StateChanged ( u: state )

NetworkManager's state changed.

Parameters

state - u (NM_STATE)
The new state of NetworkManager.

PropertiesChanged ( a{sv}: properties )

NetworkManager's properties changed.

Parameters

properties - a{sv} (String_Variant_Map)
The changed properties.

DeviceAdded ( o: device_path )

A device was added to the system

Parameters

device_path - o
The object path of the newly added device.

DeviceRemoved ( o: device_path )

A device was removed from the system, and is no longer available.

Parameters

device_path - o
The object path of the device that was just removed.

StateChange ( u: state )

DEPRECATED. NetworkManager's state changed. Use the 'StateChanged' signal instead.

Parameters

state - u (NM_STATE)
The new state of NetworkManager.

Properties:

NetworkingEnabled - b - (read)
Indicates if overall networking is currently enabled or not. See the Enable() method.
WirelessEnabled - b - (readwrite)
Indicates if wireless is currently enabled or not.
WirelessHardwareEnabled - b - (read)
Indicates if the wireless hardware is currently enabled, i.e. the state of the RF kill switch.
WwanEnabled - b - (readwrite)
Indicates if mobile broadband devices are currently enabled or not.
WwanHardwareEnabled - b - (read)
Indicates if the mobile broadband hardware is currently enabled, i.e. the state of the RF kill switch.
ActiveConnections - ao - (read)
List of active connection object paths.
Version - s - (read)
NetworkManager version.
State - u - (read) (NM_STATE)
The overall state of the NetworkManager daemon.

Enumerated types:

NM_STATE

Describes the overall state of the daemon.
NM_STATE_UNKNOWN = 0
The NetworkManager daemon is in an unknown state.
NM_STATE_ASLEEP = 1
The NetworkManager daemon is asleep and all interfaces managed by it are inactive.
NM_STATE_CONNECTING = 2
The NetworkManager daemon is connecting a device. FIXME: What does this mean when one device is active and another is connecting?
NM_STATE_CONNECTED = 3
The NetworkManager daemon is connected.
NM_STATE_DISCONNECTED = 4
The NetworkManager daemon is disconnected.

org.freedesktop.NetworkManager.AccessPoint

Interface has no methods.

Signals:

PropertiesChanged ( a{sv}: properties )

Parameters

properties - a{sv} (String_Variant_Map)
A dictionary mapping property names to variant boxed values

Properties:

Flags - u - (read) (NM_802_11_AP_FLAGS)
Flags describing the capabilities of the access point.
WpaFlags - u - (read) (NM_802_11_AP_SEC)
Flags describing the access point's capabilities according to WPA (Wifi Protected Access).
RsnFlags - u - (read) (NM_802_11_AP_SEC)
Flags describing the access point's capabilities according to the RSN (Robust Secure Network) protocol.
Ssid - ay - (read)
The Service Set Identifier identifying the access point.
Frequency - u - (read)
The radio channel frequency in use by the access point, in MHz.
HwAddress - s - (read)
The hardware address (BSSID) of the access point.
Mode - u - (read) (NM_802_11_MODE)
Describes the operating mode of the access point.
MaxBitrate - u - (read)
The maximum bitrate this access point is capable of, in kilobits/second (Kb/s).
Strength - y - (read)
The current signal quality of the access point, in percent.

Sets of flags:

NM_802_11_AP_FLAGS

Flags describing the general capabilities of the access point.
NM_802_11_AP_FLAGS_NONE = 0x0
Null capability - says nothing about the access point.
NM_802_11_AP_FLAGS_PRIVACY = 0x1
Access point supports privacy measures.

NM_802_11_AP_SEC

Flags describing the security capabilities of the access point.
NM_802_11_AP_SEC_NONE = 0x0
Null flag.
NM_802_11_AP_SEC_PAIR_WEP40 = 0x1
Access point supports pairwise 40-bit WEP encryption.
NM_802_11_AP_SEC_PAIR_WEP104 = 0x2
Access point supports pairwise 104-bit WEP encryption.
NM_802_11_AP_SEC_PAIR_TKIP = 0x4
Access point supports pairwise TKIP encryption.
NM_802_11_AP_SEC_PAIR_CCMP = 0x8
Access point supports pairwise CCMP encryption.
NM_802_11_AP_SEC_GROUP_WEP40 = 0x10
Access point supports a group 40-bit WEP cipher.
NM_802_11_AP_SEC_GROUP_WEP104 = 0x20
Access point supports a group 104-bit WEP cipher.
NM_802_11_AP_SEC_GROUP_TKIP = 0x40
Access point supports a group TKIP cipher.
NM_802_11_AP_SEC_GROUP_CCMP = 0x80
Access point supports a group CCMP cipher.
NM_802_11_AP_SEC_KEY_MGMT_PSK = 0x100
Access point supports PSK key management.
NM_802_11_AP_SEC_KEY_MGMT_802_1X = 0x200
Access point supports 802.1x key management.

org.freedesktop.NetworkManager.Device

Methods:

Disconnect ( ) → nothing

Disconnects a device and prevents the device from automatically activating further connections without user intervention.

Signals:

StateChanged ( u: new_state, u: old_state, u: reason )

Parameters

new_state - u (NM_DEVICE_STATE)
The new state of the device.
old_state - u (NM_DEVICE_STATE)
The previous state of the device.
reason - u (NM_DEVICE_STATE_REASON)
A reason for the state transition.

Properties:

Udi - s - (read)
Unique Device Identifier.
Interface - s - (read)
The name of the device's control (and often data) interface.
IpInterface - s - (read)
The name of the device's data interface when available. This property may not refer to the actual data interface until the device has successfully established a data connection, indicated by the device's State becoming ACTIVATED.
Driver - s - (read)
The driver handling the device.
Capabilities - u - (read)