NetworkManager D-Bus Interface Specification
Version 0.7.0
Copyright (C) Red Hat copyright goes here!
Copyright (C) 2008 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:
Get the list of network devices.
Returns
devices
-
ao
-
List of object paths of network devices known to the system.
ActivateDevice (
o: device, s: service_name, o: connection, o: specific_object
) →
nothing
Activate a device using the supplied connection.
Parameters
device
-
o
-
The device to be activated. FIXME: Why is this not a method on Device?
service_name
-
s
-
FIXME: What does this do?
connection
-
o
-
The connection to activate the devices with.
specific_object
-
o
-
FIXME: What does this do?
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.
Sleep (
b: sleep
) →
nothing
Control the NetworkManager daemon's sleep state. When asleep, all interfaces that it manages are deactivated.
Parameters
sleep
-
b
-
Indicates whether the NetworkManager daemon should sleep or wake. FIXME: Bad parameter name.
Signals:
NetworkManager's state changed.
Parameters
state
-
u
(NM_STATE)
-
The new state of NetworkManager.
NetworkManager's properties changed.
A device was added to the system
Parameters
device_path
-
o
-
The object path of the newly added device. NOTE: fixed C+P param name error
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. NOTE: fixed C+P param name error
Properties:
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.
State
-
u
-
(read)
(NM_STATE)
-
The overall state of the NetworkManager daemon.
Enumerated types:
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.
Structure types:
Active_Connection - (
s: service_name, o: connection_path, o: specific_object, ao: active_device_list
)
A struct representing an active connection, returned by GetActiveConnections on the NetworkManager interface.
In bindings that need a separate name, arrays of
Active_Connection should be called
Active_Connection_List.
Members
service_name
-
s
-
FIXME: What does this mean?
connection_path
-
o
-
Object path of the active connection
specific_object
-
o
-
Object path of the specific object. FIXME: What does this mean?
active_device_list
-
ao
-
Array of object paths to the devices this connection is active on.
org.freedesktop.NetworkManager.AccessPoint
Interface has no methods.
Signals:
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.
HwAddress
-
s
-
(read)
- The hardware address of the access point. FIXME: Why is this not uint64 type="t"?
Mode
-
i
-
(read)
(IW_MODE)
- Describes the operating mode of the access point.
Rate
-
u
-
(read)
- The bit rate currently achievable to this access point.
Strength
-
y
-
(read)
- The current signal strength received from this access point.
Sets of 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.
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 cypher.
NM_802_11_AP_SEC_GROUP_WEP104 = 0x20
- Access point supports a group 104-bit WEP cypher.
NM_802_11_AP_SEC_GROUP_TKIP = 0x40
- Access point supports a group TKIP cypher.
NM_802_11_AP_SEC_GROUP_CCMP = 0x80
- Access point supports a group CCMP cypher.
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:
Deactivate the device, removing its routing table entry and IP address
Signals:
Parameters
carrier_on
-
b
-
Boolean indicating whether the carrier is now on or off.
Properties:
Udi
-
s
-
(read)
-
HAL UDI for the device.
Interface
-
s
-
(read)
-
The network interface offered by the device.
Driver
-
s
-
(read)
-
The driver handling the device.
Capabilities
-
u
-
(read)
(NM_DEVICE_CAP)
-
Flags describing the capabilities of the device.
Ip4Address
-
i
-
(read)
-
The IPv4 address bound to the device. FIXME: what about devices with >1 IP address?
State
-
u
-
(read)
(NM_DEVICE_STATE)
-
The current state of the device.
Ip4Config
-
o
-
(read)
-
Object path of the Ip4Config object describing the configuration of the device.
Carrier
-
b
-
(read)
-
Indicates whether the physical carrier is found (e.g. the device is plugged in or associated to a network).
DeviceType
-
u
-
(read)
-
Enumerated types:
NM_DEVICE_STATE_UNKNOWN = 0
-
The device is in an unknown state.
NM_DEVICE_STATE_DOWN = 1
-
The device is down.
NM_DEVICE_STATE_DISCONNECTED = 2
-
The device is not connected.
NM_DEVICE_STATE_PREPARE = 3
-
The device is preparing to connect.
NM_DEVICE_STATE_CONFIG = 4
-
The device is being configured.
NM_DEVICE_STATE_NEED_AUTH = 5
-
The device is awaiting authorization credentials.
NM_DEVICE_STATE_IP_CONFIG = 6
-
The IP address of the device is being configured.
NM_DEVICE_STATE_ACTIVATED = 7
-
The device is active.
NM_DEVICE_STATE_FAILED = 8
-
The device is in a failure state following an attempt to activate it.
NM_DEVICE_STATE_CANCELLED = 9
-
The previous activation attempt on this device was cancelled.
Sets of flags:
NM_DEVICE_CAP_NONE = 0x0
- Null capability.
NM_DEVICE_CAP_NM_SUPPORTED = 0x1
- The device is supported by NetworkManager.
NM_DEVICE_CAP_CARRIER_DETECT = 0x2
- The device supports carrier detection.
org.freedesktop.NetworkManager.Device.Wired
Interface has no methods.
Interface has no signals.
Properties:
HwAddress
-
s
-
(read)
-
Hardware address of the device. See FIXME in access point and 802.11 device
Speed
-
u
-
(read)
-
Design speed of the device.
org.freedesktop.NetworkManager.Device.Wireless
Methods:
Get the list of access points visible to this device.
Returns
access_points
-
ao
-
List of access point object paths
Signals:
Emitted when the wireless device's properties changed.
Parameters
properties
-
a{sv}
(String_Variant_Map)
-
A dictionary containing the FIXME: check changed parameters.
Emitted when a new access point is found by the device.
Parameters
access_point
-
o
-
The object path of the newly found access point.
Emitted when an access point disappears from view of the device.
Parameters
access_point
-
o
-
The object path of the access point that has disappeared.
Properties:
HwAddress
-
s
-
(read)
-
The hardware address of the device. FIXME: why not uint64 (type="t")?
Mode
-
i
-
(read)
(IW_MODE)
-
The operating mode of the wireless device.
Bitrate
-
u
-
(read)
-
The bit rate currently used by the wireless device. FIXME: Why is this not called Rate like for AP?
ActiveAccessPoint
-
o
-
(read)
-
Object path of the access point currently used by the wireless device.
WirelessCapabilities
-
u
-
(read)
(NM_802_11_DEVICE_CAP)
-
The capabilities of the wireless device.
Sets of flags:
Flags describing the capabilities of a wireless device.
NM_802_11_DEVICE_CAP_NONE = 0x0
- Null capability - syntactic sugar for no capabilities supported. Do not AND this with other capabilities!
NM_802_11_DEVICE_CAP_CIPHER_WEP40 = 0x1
- The device supports the 40-bit WEP cypher.
NM_802_11_DEVICE_CAP_CIPHER_WEP104 = 0x2
- The device supports the 104-bit WEP cypher.
NM_802_11_DEVICE_CAP_CIPHER_TKIP = 0x4
- The device supports the TKIP cypher.
NM_802_11_DEVICE_CAP_CIPHER_CCMP = 0x8
- The device supports the CCMP cypher.
NM_802_11_DEVICE_CAP_WPA = 0x10
- The device supports the WPA encryption/authentication protocol.
NM_802_11_DEVICE_CAP_RSN = 0x20
- The device supports the RSN encryption/authentication protocol.
org.freedesktop.NetworkManager.IP4Config
Interface has no methods.
Interface has no signals.
Properties:
Address
-
u
-
(read)
- IPv4 address. FIXME: what about multiple addresses?
Gateway
-
u
-
(read)
- Default gateway.
Netmask
-
u
-
(read)
- Network mask of this network.
Broadcast
-
u
-
(read)
- Broadcast address of this network.
Hostname
-
s
-
(read)
- The hostname associated with this IPv4 address. FIXME: what about multiple hostnames?
Nameservers
-
au
-
(read)
- The nameservers in use.
Domains
-
as
-
(read)
- A list of domains this address belongs to.
NisDomain
-
s
-
(read)
- The NIS domain this address belongs to.
NisServers
-
au
-
(read)
- The NIS servers associated with this address.
org.freedesktop.NetworkManagerSettings
The NetworkManagerSettings interface is held by a separate process to the daemon and provides settings to the daemon.
Methods:
List the connections stored by this Settings object.
Returns
connections
-
ao
-
List of connections.
Signals:
Emitted when a new connection has been configured.
Parameters
connection
-
o
-
Object path of the new connection.
Interface has no properties.
org.freedesktop.NetworkManagerSettings.Connection
Represents a single network connection configuration.
Methods:
Obtain the ID of this connection.
Returns
id
-
s
-
The ID of this connection.
Get the settings maps describing this object.
Signals:
Updated (
a{sa{sv}}: settings
)
Emitted when some settings changed.
Emitted when this settings object was removed. FIXME: Is this emitted after it was removed or when it is about to be removed? If after removed, then different semantics to Device removed. if prior to removal, should be called AboutToBeRemoved.
Interface has no properties.
org.freedesktop.NetworkManagerSettings.Connection.Secrets
Secrets have a separate interface so that they can be locked down.
Methods:
GetSecrets (
s: setting_name, as: hints, b: request_new
) →
a{sv}
Get the secrets encapsulated in this object.
Parameters
setting_name
-
s
-
Name of the setting to return.
hints
-
as
-
Array of strings of key names in the Setting for which NM thinks
a secrets may be required.A
request_new
-
b
-
Indicates whether new secrets should be requested or if the request can be fulfilled from storage.
Interface has no signals.
Interface has no properties.
org.freedesktop.NetworkManager.VPN.Manager
Methods:
Connect (
s: connection_type, o: connection, o: device
) →
o
Establish a VPN connection.
Parameters
connection_type
-
s
-
String describing the connection type.
connection
-
o
-
Object path of the network connection to establish the VPN connection on.
device
-
o
-
Object path of the device to establish the VPN connection on.
Returns
vpn_connection
-
o
-
Object path of the newly created VPN connection.
Get the list of active VPN connections.
Returns
connections
-
ao
-
List of object paths of active VPN connections.
Interface has no signals.
Interface has no properties.
org.freedesktop.NetworkManager.VPN.Connection
Represents a connection to a Virtual Private Network.
Methods:
Disconnect the VPN connection.
Signals:
Emitted when the state of the VPN connection has changed.
Properties:
Name
-
s
-
(read)
- The name of the VPN connection.
State
-
u
-
(read)
(NM_VPN_CONNECTION_STATE)
- The state of the VPN connection.
Banner
-
s
-
(read)
- The banner string of the VPN connection.
Enumerated types:
NM_VPN_CONNECTION_STATE_UNKNOWN = 0
-
The state of the VPN connection is unknown.
NM_VPN_CONNECTION_STATE_PREPARE = 1
-
The VPN connection is preparing to connect.
NM_VPN_CONNECTION_STATE_NEED_AUTH = 2
-
The VPN connection needs authorization credentials.
NM_VPN_CONNECTION_STATE_CONNECT = 3
-
The VPN connection is being established. FIXME: Should be CONNECTING or CONNECTED.
NM_VPN_CONNECTION_STATE_IP_CONFIG_GET = 4
-
The VPN connection is getting an IP address. FIXME: Should be an -ING
NM_VPN_CONNECTION_STATE_ACTIVATED = 5
-
The VPN connection is active.
NM_VPN_CONNECTION_STATE_FAILED = 6
-
The VPN connection failed.
NM_VPN_CONNECTION_STATE_DISCONNECTED = 7
-
The VPN connection is disconnected.
NM_VPN_CONNECTION_STATE_REASON_UNKNOWN = 0
-
The reason for the VPN connection state change is unknown.
NM_VPN_CONNECTION_STATE_REASON_NONE = 1
-
No reason was given for the VPN connection state change.
NM_VPN_CONNECTION_STATE_REASON_USER_DISCONNECTED = 2
-
The VPN connection changed state because the user disconnected it.
NM_VPN_CONNECTION_STATE_REASON_DEVICE_DISCONNECTED = 3
-
The VPN connection changed state because the device it was using was disconnected.
NM_VPN_CONNECTION_STATE_REASON_SERVICE_STOPPED = 4
-
The service providing the VPN connection was stopped.
NM_VPN_CONNECTION_STATE_REASON_IP_CONFIG_INVALID = 5
-
The IP config of the VPN connection was invalid.
NM_VPN_CONNECTION_STATE_REASON_CONNECT_TIMEOUT = 6
-
The connection attempt to the VPN service timed out.
NM_VPN_CONNECTION_STATE_REASON_SERVICE_START_TIMEOUT = 7
-
A timeout occurred while starting the service providing the VPN connection.
NM_VPN_CONNECTION_STATE_REASON_SERVICE_START_FAILED = 8
-
Starting the service starting the service providing the VPN connection failed.
NM_VPN_CONNECTION_STATE_REASON_NO_SECRETS = 9
-
Necessary secrets for the VPN connection were not provided.
org.freedesktop.NetworkManager.VPN.Plugin
This interface is provided by plugins providing VPN services to the NetworkManager daemon.
Methods:
Connect (
a{sa{sv}}: connection
) →
nothing
Tells the plugin to connect.
Possible errors
org.freedesktop.NetworkManager.VPN.Error.StartingInProgress
- The request could not be processed because the VPN connection is already being started.(generic description)
org.freedesktop.NetworkManager.VPN.Error.AlreadyStarted
- The request could not be processed because a VPN connection was already active.(generic description)
org.freedesktop.NetworkManager.VPN.Error.StoppingInProgress
- The request could not be processed because the VPN connection is already being stopped.(generic description)
org.freedesktop.NetworkManager.VPN.Error.BadArguments
- Invalid arguments were passed with the request. FIXME: too general.(generic description)
org.freedesktop.NetworkManager.VPN.Error.LaunchFailed
- A binary providing the service failed to launch.(generic description)
NeedSecrets (
a{sa{sv}}: settings
) →
s
FIXME: I have no idea what this does. The name sounds like a signal.
Returns
setting_name
-
s
-
FIXME: Figure out what this means
Possible errors
org.freedesktop.NetworkManager.VPN.Error.ConnectionInvalid
- The request could not be processed because the VPN connection settings were invalid.(generic description)
Disconnect the plugin.
Possible errors
org.freedesktop.NetworkManager.VPN.Error.StoppingInProgress
- The request could not be processed because the VPN connection is already being stopped.(generic description)
org.freedesktop.NetworkManager.VPN.Error.AlreadyStopped
- The request could not be processed because the VPN connection was already stopped.(generic description)
SetIp4Config (
a{sv}: config
) →
nothing
Set IPv4 details on the connection.
SetFailure (
s: reason
) →
nothing
Indicate a failure to the plugin.
Parameters
reason
-
s
-
The reason for the failure.
Signals:
Emitted when the plugin state changes.
Ip4Config (
a{sv}: ip4config
)
The plugin obtained an IPv4 configuration.
Emitted when the plugin receives a login banner from the VPN service.
Parameters
banner
-
s
-
The login banner string.
Emitted when a failure in the VPN plugin occurs.
Properties:
State
-
u
-
(read)
(NM_VPN_CONNECTION_STATE)
-
The state of the plugin.
Generic types:
Enumerated types:
IW_MODE_AUTO = 0
- Automatic mode controlled by the driver.
IW_MODE_ADHOC = 1
- Single cell network.
IW_MODE_INFRA = 2
- Multi cell network, roaming.
IW_MODE_MASTER = 3
- Synchronisation master or Access Point.
IW_MODE_REPEAT = 4
- Wireless Repeater (forwarder).
IW_MODE_SECOND = 5
- Secondary master/repeater (backup).
IW_MODE_MONITOR = 6
- Passive monitor (listen only).
Mapping types:
A mapping from strings to variants representing extra
key-value pairs.
Members
Key
-
s
- (undocumented)
Value
-
v
- (undocumented)
A mapping from strings to strings representing extra
key-value pairs.
Members
Key
-
s
- (undocumented)
Value
-
s
- (undocumented)
A mapping from strings to a map of string to variant.
Errors:
org.freedesktop.NetworkManager.Error.UnknownConnection
Connection was not provided by any known settings service.
org.freedesktop.NetworkManager.Error.UnknownDevice
Unknown device.
org.freedesktop.NetworkManager.Error.InvalidService
Invalid settings service (not a recognized system or user settings service name).
org.freedesktop.NetworkManager.Error.SystemConnection
Connection was superseded by a system connection.
org.freedesktop.NetworkManager.Error.PermissionDenied
User does not have the permission to activate this connection.
Errors:
org.freedesktop.NetworkManager.VPN.Error.General
This is a drab, nondescript error.
org.freedesktop.NetworkManager.VPN.Error.StartingInProgress
The request could not be processed because the VPN connection is already being started.
org.freedesktop.NetworkManager.VPN.Error.AlreadyStarted
The request could not be processed because a VPN connection was already active.
org.freedesktop.NetworkManager.VPN.Error.StoppingInProgress
The request could not be processed because the VPN connection is already being stopped.
org.freedesktop.NetworkManager.VPN.Error.AlreadyStopped
The request could not be processed because the VPN connection was already stopped.
org.freedesktop.NetworkManager.VPN.Error.WrongState
The request could not be processed because the VPN connection is in the wrong state for this type of request. FIXME: too general?
org.freedesktop.NetworkManager.VPN.Error.BadArguments
Invalid arguments were passed with the request. FIXME: too general.
org.freedesktop.NetworkManager.VPN.Error.LaunchFailed
A binary providing the service failed to launch.
org.freedesktop.NetworkManager.VPN.Error.ConnectionInvalid
The request could not be processed because the VPN connection settings were invalid.
Index
Index of interfaces
Index of types