1 <?xml version="1.0" encoding="UTF-8" ?>
3 <node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
4 <interface name="org.freedesktop.NetworkManager.Device">
5 <property name="Udi" type="s" access="read">
7 Operating-system specific transient device hardware identifier. This
8 is an opaque string representing the underlying hardware for the device,
9 and shouldn't be used to keep track of individual devices. For some
10 device types (Bluetooth, Modems) it is an identifier used by the
11 hardware service (ie bluez or ModemManager) to refer to that device,
12 and client programs use it get additional information from those
13 services which NM does not provide. The Udi is not guaranteed to be
14 consistent across reboots or hotplugs of the hardware. If you're looking
15 for a way to uniquely track each device in your application, use the
16 object path. If you're looking for a way to track a specific piece of
17 hardware across reboot or hotplug, use a MAC address or USB serial
21 <property name="Interface" type="s" access="read">
23 The name of the device's control (and often data) interface.
26 <property name="IpInterface" type="s" access="read">
28 The name of the device's data interface when available. This property
29 may not refer to the actual data interface until the device has
30 successfully established a data connection, indicated by the device's
31 State becoming ACTIVATED.
34 <property name="Driver" type="s" access="read">
36 The driver handling the device.
39 <property name="DriverVersion" type="s" access="read">
41 The version of the driver handling the device.
44 <property name="FirmwareVersion" type="s" access="read">
46 The firmware version for the device.
49 <property name="Capabilities" type="u" access="read" tp:type="NM_DEVICE_CAP">
51 Flags describing the capabilities of the device.
54 <property name="Ip4Address" type="u" access="read">
56 DEPRECATED; use the 'Addresses' property of the 'Ip4Config' object instead.
59 <property name="State" type="u" access="read" tp:type="NM_DEVICE_STATE">
61 The current state of the device.
64 <property name="StateReason" type="(uu)" access="read" tp:type="NM_DEVICE_STATE_REASON_STRUCT">
66 The current state and reason for changing to that state.
69 <property name="ActiveConnection" type="o" access="read">
71 Object path of an ActiveConnection object that "owns" this device during
72 activation. The ActiveConnection object tracks the life-cycle of a
73 connection to a specific network and implements the
74 org.freedesktop.NetworkManager.Connection.Active D-Bus interface.
77 <property name="Ip4Config" type="o" access="read">
79 Object path of the Ip4Config object describing the configuration of the device. Only valid when the device is in the NM_DEVICE_STATE_ACTIVATED state.
82 <property name="Dhcp4Config" type="o" access="read">
84 Object path of the Dhcp4Config object describing the DHCP options returned by the DHCP server. Only valid when the device is in the NM_DEVICE_STATE_ACTIVATED state.
87 <property name="Ip6Config" type="o" access="read">
89 Object path of the Ip6Config object describing the configuration of the device. Only valid when the device is in the NM_DEVICE_STATE_ACTIVATED state.
92 <property name="Dhcp6Config" type="o" access="read">
94 Object path of the Dhcp6Config object describing the DHCP options
95 returned by the DHCP server. Only valid when the device is in the
96 NM_DEVICE_STATE_ACTIVATED state.
99 <property name="Managed" type="b" access="readwrite">
101 Whether or not this device is managed by NetworkManager. Setting this
102 property has a similar effect to configuring the device as unmanaged
103 via the keyfile.unmanaged-devices setting in NetworkManager.conf.
104 Changes to this value are not persistent and lost after NetworkManager
108 <property name="Autoconnect" type="b" access="readwrite">
110 If TRUE, indicates the device is allowed to autoconnect. If FALSE,
111 manual intervention is required before the device will automatically
112 connect to a known network, such as activating a connection using the
113 device, or setting this property to TRUE. This property cannot be
114 set to TRUE for default-unmanaged devices, since they never autoconnect.
117 <property name="FirmwareMissing" type="b" access="read">
119 If TRUE, indicates the device is likely missing firmware necessary for
123 <property name="NmPluginMissing" type="b" access="read">
125 If TRUE, indicates the NetworkManager plugin for the device is likely
126 missing or misconfigured.
129 <property name="DeviceType" type="u" access="read" tp:type="NM_DEVICE_TYPE">
131 The general type of the network device; ie Ethernet, WiFi, etc.
134 <property name="AvailableConnections" type="ao" access="read">
136 An array of object paths of every configured connection that is currently 'available' through this device.
139 <property name="PhysicalPortId" type="s" access="read">
141 If non-empty, an (opaque) indicator of the physical network
142 port associated with the device. This can be used to recognize
143 when two seemingly-separate hardware devices are actually just
144 different virtual interfaces to the same physical port.
147 <property name="Mtu" type="u" access="read">
149 The device MTU (maximum transmission unit).
152 <property name="Metered" type="u" access="read" tp:type="NM_METERED">
154 Whether the amount of traffic flowing through the device is
155 subject to limitations, for example set by service providers.
158 <property name="LldpNeighbors" type="aa{sv}" access="read">
160 Array of LLDP neighbors; each element is a dictionary mapping
161 LLDP TLV names to variant boxed values.
164 <property name="Real" type="b" access="read">
166 True if the device exists, or False for placeholder devices that
167 do not yet exist but could be automatically created by NetworkManager
168 if one of their AvailableConnections was activated.
172 <method name="Reapply">
173 <arg name="connection" type="a{sa{sv}}" direction="in">
175 The optional connection settings that will be reapplied on the device. If empty, the
176 currently active settings-connection will be used. The connection cannot arbitrarly
177 differ from the current applied-connection otherwise the call will fail.
178 Only certain changes are supported, like adding or removing IP addresses.
181 <arg name="version_id" type="t" direction="in">
183 If non-zero, the current version id of the applied-connection must match.
184 The current version id can be retrieved via GetAppliedConnection.
185 This optional argument allows to catch concurrent modifications between
186 the GetAppliedConnection call and Reapply.
189 <arg name="flags" type="u" direction="in">
191 Flags which would modify the behavior of the Reapply call.
192 There are no flags defined currently and the users should use the value of 0.
196 Attempts to update the configuration of a device without deactivating it. NetworkManager
197 has the concept of connections, which are profiles that contain the configuration for
198 a networking device. Those connections are exposed via D-Bus as individual objects
199 that can be created, modified and deleted. When activating such a settings-connection
200 on a device, the settings-connection is cloned to become an applied-connection and used to
201 configure the device (see GetAppliedConnection). Subsequent modification of the
202 settings-connection don't propagate automatically to the device's applied-connection
203 (with exception of the firewall-zone and the metered property). For the changes to take
204 effect, you can either re-activate the settings-connection, or call Reapply.
205 The Reapply call allows you to directly update the applied-connection and reconfigure
207 Reapply can also be useful if the currently applied-connection is equal to the connection
208 that is about to be reapplied. This allows to reconfigure the device and revert external
209 changes like removing or adding an IP address (which NetworkManager doesn't revert
210 automatically because it is assumed that the user made these changes intentionally outside
212 Reapply can make the applied-connection different from the settings-connection,
213 just like updating the settings-connection can make them different.
217 <method name="GetAppliedConnection">
218 <arg name="flags" type="u" direction="in">
220 Flags which would modify the behavior of the GetAppliedConnection call.
221 There are no flags defined currently and the users should use the value of 0.
224 <arg name="connection" type="a{sa{sv}}" direction="out">
226 The effective connection settings that the connection has currently applied.
229 <arg name="version_id" type="t" direction="out">
231 The version-id of the currently applied connection. This can be specified during
232 Reapply to avoid races where you first fetch the applied connection, modify it
233 and try to reapply it. If the applied connection is modified in the meantime, the
234 version_id gets incremented and Reapply will fail.
238 Get the currently applied connection on the device. This is a snapshot of the last activated
239 connection on the device, that is the configuration that is currently applied on the device.
240 Usually this is the same as GetSettings of the referenced settings connection. However, it
241 can differ if the settings connection was subsequently modified or the applied connection was
242 modified by Reapply. The applied connection is set when activating a device or when calling
247 <method name="Disconnect">
249 Disconnects a device and prevents the device from automatically activating further connections without user intervention.
253 <method name="Delete">
255 Deletes a software device from NetworkManager and removes the interface from the system.
256 The method returns an error when called for a hardware device.
260 <signal name="StateChanged">
261 <arg name="new_state" type="u" tp:type="NM_DEVICE_STATE">
263 The new state of the device.
266 <arg name="old_state" type="u" tp:type="NM_DEVICE_STATE">
268 The previous state of the device.
271 <arg name="reason" type="u" tp:type="NM_DEVICE_STATE_REASON">
273 A reason for the state transition.
278 <tp:enum name="NM_DEVICE_STATE" type="u">
279 <tp:enumvalue suffix="UNKNOWN" value="0">
281 The device is in an unknown state.
284 <tp:enumvalue suffix="UNMANAGED" value="10">
286 The device is recognized but not managed by NetworkManager.
289 <tp:enumvalue suffix="UNAVAILABLE" value="20">
291 The device cannot be used (carrier off, rfkill, etc).
294 <tp:enumvalue suffix="DISCONNECTED" value="30">
296 The device is not connected.
299 <tp:enumvalue suffix="PREPARE" value="40">
301 The device is preparing to connect.
304 <tp:enumvalue suffix="CONFIG" value="50">
306 The device is being configured.
309 <tp:enumvalue suffix="NEED_AUTH" value="60">
311 The device is awaiting secrets necessary to continue connection.
314 <tp:enumvalue suffix="IP_CONFIG" value="70">
316 The IP settings of the device are being requested and configured.
319 <tp:enumvalue suffix="IP_CHECK" value="80">
321 The device's IP connectivity ability is being determined.
324 <tp:enumvalue suffix="SECONDARIES" value="90">
326 The device is waiting for secondary connections to be activated.
329 <tp:enumvalue suffix="ACTIVATED" value="100">
331 The device is active.
334 <tp:enumvalue suffix="DEACTIVATING" value="110">
336 The device's network connection is being torn down.
339 <tp:enumvalue suffix="FAILED" value="120">
341 The device is in a failure state following an attempt to activate it.
346 <tp:enum name="NM_DEVICE_TYPE" type="u">
347 <tp:enumvalue suffix="UNKNOWN" value="0">
349 The device type is unknown.
352 <tp:enumvalue suffix="ETHERNET" value="1">
354 The device is wired Ethernet device.
357 <tp:enumvalue suffix="WIFI" value="2">
359 The device is an 802.11 WiFi device.
362 <tp:enumvalue suffix="UNUSED1" value="3">
363 <tp:docstring>Unused</tp:docstring>
365 <tp:enumvalue suffix="UNUSED2" value="4">
366 <tp:docstring>Unused</tp:docstring>
368 <tp:enumvalue suffix="BT" value="5">
370 The device is Bluetooth device that provides PAN or DUN capabilities.
373 <tp:enumvalue suffix="OLPC_MESH" value="6">
375 The device is an OLPC mesh networking device.
378 <tp:enumvalue suffix="WIMAX" value="7">
380 The device is an 802.16e Mobile WiMAX device.
383 <tp:enumvalue suffix="MODEM" value="8">
385 The device is a modem supporting one or more of analog telephone,
386 CDMA/EVDO, GSM/UMTS/HSPA, or LTE standards to access a cellular or
387 wireline data network.
390 <tp:enumvalue suffix="INFINIBAND" value="9">
392 The device is an IP-capable InfiniBand interface.
395 <tp:enumvalue suffix="BOND" value="10">
397 The device is a bond master interface.
400 <tp:enumvalue suffix="VLAN" value="11">
402 The device is a VLAN interface.
405 <tp:enumvalue suffix="ADSL" value="12">
407 The device is an ADSL device supporting PPPoE and PPPoATM protocols.
410 <tp:enumvalue suffix="BRIDGE" value="13">
412 The device is a bridge interface.
415 <tp:enumvalue suffix="GENERIC" value="14">
417 The device is a generic interface type unrecognized by NetworkManager.
420 <tp:enumvalue suffix="TEAM" value="15">
422 The device is a team master interface.
427 <tp:flags name="NM_DEVICE_CAP" value-prefix="NM_DEVICE_CAP" type="u">
428 <tp:flag suffix="NONE" value="0x0">
429 <tp:docstring>Null capability.</tp:docstring>
431 <tp:flag suffix="NM_SUPPORTED" value="0x1">
432 <tp:docstring>The device is supported by NetworkManager.</tp:docstring>
434 <tp:flag suffix="CARRIER_DETECT" value="0x2">
435 <tp:docstring>The device supports carrier detection.</tp:docstring>
439 <tp:enum name="NM_DEVICE_STATE_REASON" type="u">
440 <tp:enumvalue suffix="UNKNOWN" value="0">
442 The reason for the device state change is unknown.
445 <tp:enumvalue suffix="NONE" value="1">
447 The state change is normal.
450 <tp:enumvalue suffix="NOW_MANAGED" value="2">
452 The device is now managed.
455 <tp:enumvalue suffix="NOW_UNMANAGED" value="3">
457 The device is no longer managed.
460 <tp:enumvalue suffix="CONFIG_FAILED" value="4">
462 The device could not be readied for configuration.
465 <tp:enumvalue suffix="CONFIG_UNAVAILABLE" value="5">
467 IP configuration could not be reserved (no available address, timeout, etc).
470 <tp:enumvalue suffix="CONFIG_EXPIRED" value="6">
472 The IP configuration is no longer valid.
475 <tp:enumvalue suffix="NO_SECRETS" value="7">
477 Secrets were required, but not provided.
480 <tp:enumvalue suffix="SUPPLICANT_DISCONNECT" value="8">
482 The 802.1X supplicant disconnected from the access point or authentication server.
485 <tp:enumvalue suffix="SUPPLICANT_CONFIG_FAILED" value="9">
487 Configuration of the 802.1X supplicant failed.
490 <tp:enumvalue suffix="SUPPLICANT_FAILED" value="10">
492 The 802.1X supplicant quit or failed unexpectedly.
495 <tp:enumvalue suffix="SUPPLICANT_TIMEOUT" value="11">
497 The 802.1X supplicant took too long to authenticate.
500 <tp:enumvalue suffix="PPP_START_FAILED" value="12">
502 The PPP service failed to start within the allowed time.
505 <tp:enumvalue suffix="PPP_DISCONNECT" value="13">
507 The PPP service disconnected unexpectedly.
510 <tp:enumvalue suffix="PPP_FAILED" value="14">
512 The PPP service quit or failed unexpectedly.
515 <tp:enumvalue suffix="DHCP_START_FAILED" value="15">
517 The DHCP service failed to start within the allowed time.
520 <tp:enumvalue suffix="DHCP_ERROR" value="16">
522 The DHCP service reported an unexpected error.
525 <tp:enumvalue suffix="DHCP_FAILED" value="17">
527 The DHCP service quit or failed unexpectedly.
530 <tp:enumvalue suffix="SHARED_START_FAILED" value="18">
532 The shared connection service failed to start.
535 <tp:enumvalue suffix="SHARED_FAILED" value="19">
537 The shared connection service quit or failed unexpectedly.
540 <tp:enumvalue suffix="AUTOIP_START_FAILED" value="20">
542 The AutoIP service failed to start.
545 <tp:enumvalue suffix="AUTOIP_ERROR" value="21">
547 The AutoIP service reported an unexpected error.
550 <tp:enumvalue suffix="AUTOIP_FAILED" value="22">
552 The AutoIP service quit or failed unexpectedly.
555 <tp:enumvalue suffix="MODEM_BUSY" value="23">
557 Dialing failed because the line was busy.
560 <tp:enumvalue suffix="MODEM_NO_DIAL_TONE" value="24">
562 Dialing failed because there was no dial tone.
565 <tp:enumvalue suffix="MODEM_NO_CARRIER" value="25">
567 Dialing failed because there was carrier.
570 <tp:enumvalue suffix="MODEM_DIAL_TIMEOUT" value="26">
575 <tp:enumvalue suffix="MODEM_DIAL_FAILED" value="27">
580 <tp:enumvalue suffix="MODEM_INIT_FAILED" value="28">
582 Modem initialization failed.
585 <tp:enumvalue suffix="GSM_APN_FAILED" value="29">
587 Failed to select the specified GSM APN.
590 <tp:enumvalue suffix="GSM_REGISTRATION_NOT_SEARCHING" value="30">
592 Not searching for networks.
595 <tp:enumvalue suffix="GSM_REGISTRATION_DENIED" value="31">
597 Network registration was denied.
600 <tp:enumvalue suffix="GSM_REGISTRATION_TIMEOUT" value="32">
602 Network registration timed out.
605 <tp:enumvalue suffix="GSM_REGISTRATION_FAILED" value="33">
607 Failed to register with the requested GSM network.
610 <tp:enumvalue suffix="GSM_PIN_CHECK_FAILED" value="34">
615 <tp:enumvalue suffix="FIRMWARE_MISSING" value="35">
617 Necessary firmware for the device may be missing.
620 <tp:enumvalue suffix="REMOVED" value="36">
622 The device was removed.
625 <tp:enumvalue suffix="SLEEPING" value="37">
627 NetworkManager went to sleep.
630 <tp:enumvalue suffix="CONNECTION_REMOVED" value="38">
632 The device's active connection was removed or disappeared.
635 <tp:enumvalue suffix="USER_REQUESTED" value="39">
637 A user or client requested the disconnection.
640 <tp:enumvalue suffix="CARRIER" value="40">
642 The device's carrier/link changed.
645 <tp:enumvalue suffix="CONNECTION_ASSUMED" value="41">
647 The device's existing connection was assumed.
650 <tp:enumvalue suffix="SUPPLICANT_AVAILABLE" value="42">
652 The 802.1x supplicant is now available.
655 <tp:enumvalue suffix="MODEM_NOT_FOUND" value="43">
657 The modem could not be found.
660 <tp:enumvalue suffix="BT_FAILED" value="44">
662 The Bluetooth connection timed out or failed.
665 <tp:enumvalue suffix="GSM_SIM_NOT_INSERTED" value="45">
667 GSM Modem's SIM Card not inserted.
670 <tp:enumvalue suffix="GSM_SIM_PIN_REQUIRED" value="46">
672 GSM Modem's SIM Pin required.
675 <tp:enumvalue suffix="GSM_SIM_PUK_REQUIRED" value="47">
677 GSM Modem's SIM Puk required.
680 <tp:enumvalue suffix="GSM_SIM_WRONG" value="48">
682 GSM Modem's SIM wrong
685 <tp:enumvalue suffix="INFINIBAND_MODE" value="49">
687 InfiniBand device does not support connected mode.
690 <tp:enumvalue suffix="DEPENDENCY_FAILED" value="50">
692 A dependency of the connection failed.
695 <tp:enumvalue suffix="BR2684_FAILED" value="51">
697 Problem with the RFC 2684 Ethernet over ADSL bridge.
700 <tp:enumvalue suffix="MODEM_MANAGER_UNAVAILABLE" value="52">
702 ModemManager was not running or quit unexpectedly.
705 <tp:enumvalue suffix="SSID_NOT_FOUND" value="53">
707 The 802.11 Wi-Fi network could not be found.
710 <tp:enumvalue suffix="SECONDARY_CONNECTION_FAILED" value="54">
712 A secondary connection of the base connection failed.
715 <tp:enumvalue suffix="DCB_FCOE_FAILED" value="55">
717 DCB or FCoE setup failed.
720 <tp:enumvalue suffix="TEAMD_CONTROL_FAILED" value="56">
722 teamd control failed.
725 <tp:enumvalue suffix="MODEM_FAILED" value="57">
727 Modem failed or no longer available.
730 <tp:enumvalue suffix="MODEM_AVAILABLE" value="58">
732 Modem now ready and available.
735 <tp:enumvalue suffix="SIM_PIN_INCORRECT" value="59">
737 The SIM PIN was incorrect.
740 <tp:enumvalue suffix="NEW_ACTIVATION" value="60">
742 A new connection activation was enqueued.
745 <tp:enumvalue suffix="PARENT_CHANGED" value="61">
747 The device's parent changed.
750 <tp:enumvalue suffix="PARENT_MANAGED_CHANGED" value="62">
752 The device parent's management changed.
757 <tp:enum name="NM_METERED" type="u">
758 <tp:enumvalue suffix="UNKNOWN" value="0">
760 The device metered status is unknown.
763 <tp:enumvalue suffix="YES" value="1">
765 The device is metered and the value was statically set.
768 <tp:enumvalue suffix="NO" value="2">
770 The device is not metered and the value was statically set.
773 <tp:enumvalue suffix="GUESS_YES" value="3">
775 The device is metered and the value was guessed.
778 <tp:enumvalue suffix="GUESS_NO" value="4">
780 The device is not metered and the value was guessed.
785 <tp:struct name="NM_DEVICE_STATE_REASON_STRUCT">
786 <tp:member type="u" name="state" tp:type="NM_DEVICE_STATE">
791 <tp:member type="u" name="reason" tp:type="NM_DEVICE_STATE_REASON">
793 The reason for originally changing to the device state.