summaryrefslogtreecommitdiff
path: root/introspection/nm-manager.xml
blob: 5eb4614f38e71fa6d9b23a09df11f59b74be6965 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
<?xml version="1.0" encoding="UTF-8" ?>

<!-- 
  READ ME! READ ME! READ ME! READ ME! READ ME!

  This file needs to be kept in sync with nm-manager-client.xml with the exception of
  the legacy methods at the end of this file.
-->

<node name="/" xmlns:tp="http://telepathy.freedesktop.org/wiki/DbusSpec#extensions-v0">
  <interface name="org.freedesktop.NetworkManager">
    <method name="GetDevices">
      <tp:docstring>
        Get the list of network devices.
      </tp:docstring>
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_get_devices"/>
      <arg name="devices" type="ao" direction="out">
        <tp:docstring>
          List of object paths of network devices known to the system.
        </tp:docstring>
      </arg>
    </method>

    <method name="ActivateConnection">
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_activate_connection"/>
      <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
      <tp:docstring>
        Activate a connection using the supplied device.
      </tp:docstring>
      <arg name="connection" type="o" direction="in">
        <tp:docstring>
          The connection to activate the devices with.
        </tp:docstring>
      </arg>
      <arg name="device" type="o" direction="in">
        <tp:docstring>
          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.
        </tp:docstring>
      </arg>
      <arg name="specific_object" type="o" direction="in">
        <tp:docstring>
          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.
        </tp:docstring>
      </arg>
      <arg name="active_connection" type="o" direction="out">
        <tp:docstring>
          The path of the active connection object representing this active connection.
        </tp:docstring>
      </arg>
      <tp:possible-errors>
        <tp:error name="org.freedesktop.NetworkManager.Error.UnknownConnection"/>
        <tp:error name="org.freedesktop.NetworkManager.Error.UnknownDevice"/>
        <tp:error name="org.freedesktop.NetworkManager.Error.ConnectionActivating">
          <tp:docstring>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?</tp:docstring>
        </tp:error>
        <tp:error name="org.freedesktop.NetworkManager.Error.ConnectionInvalid">
          <tp:docstring>The connection is invalid for this device.</tp:docstring>
        </tp:error>
      </tp:possible-errors>
    </method>

    <method name="AddAndActivateConnection">
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_add_and_activate_connection"/>
      <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
      <tp:docstring>
        Adds a new connection using the given details (if any) as a template
        (automatically filling in missing settings with the capabilities of the
        given device and specific object), then activate the new connection.
        Cannot be used for VPN connections at this time.
      </tp:docstring>
      <arg name="connection" type="a{sa{sv}}" direction="in">
        <tp:docstring>
          Connection settings and properties; if incomplete missing settings will
          be automatically completed using the given device and specific object.
        </tp:docstring>
      </arg>
      <arg name="device" type="o" direction="in">
        <tp:docstring>
          The object path of device to be activated using the given connection.
        </tp:docstring>
      </arg>
      <arg name="specific_object" type="o" direction="in">
        <tp:docstring>
          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, which will be used to complete the details of the newly added
          connection.
        </tp:docstring>
      </arg>
      <arg name="path" type="o" direction="out">
        <tp:docstring>
          Object path of the new connection that was just added.
        </tp:docstring>
      </arg>
      <arg name="active_connection" type="o" direction="out">
        <tp:docstring>
          The path of the active connection object representing this active connection.
        </tp:docstring>
      </arg>
      <tp:possible-errors>
        <tp:error name="org.freedesktop.NetworkManager.Error.UnknownConnection"/>
        <tp:error name="org.freedesktop.NetworkManager.Error.UnknownDevice"/>
        <tp:error name="org.freedesktop.NetworkManager.Error.ConnectionInvalid">
          <tp:docstring>The connection is invalid for this device.</tp:docstring>
        </tp:error>
      </tp:possible-errors>
    </method>

    <method name="DeactivateConnection">
      <tp:docstring>
        Deactivate an active connection.
      </tp:docstring>
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_deactivate_connection"/>
      <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
      <arg name="active_connection" type="o" direction="in">
        <tp:docstring>
          The currently active connection to deactivate.
        </tp:docstring>
      </arg>
    </method>

    <method name="Sleep">
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_sleep"/>
      <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
      <tp:docstring>
        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.
      </tp:docstring>
      <arg name="sleep" type="b" direction="in">
        <tp:docstring>
          Indicates whether the NetworkManager daemon should sleep or wake.
        </tp:docstring>
      </arg>
    </method>

    <method name="Enable">
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_enable"/>
      <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
      <tp:docstring>
        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.
      </tp:docstring>
      <arg name="enable" type="b" direction="in">
        <tp:docstring>
          If FALSE, indicates that all networking should be disabled.  If TRUE,
          indicates that NetworkManager should begin managing network devices.
        </tp:docstring>
      </arg>
    </method>

    <method name="GetPermissions">
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_get_permissions"/>
      <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
      <tp:docstring>
        Returns the permissions a caller has for various authenticated operations
        that NetworkManager provides, like Enable/Disable networking, changing
        WiFi, WWAN, and WiMAX state, etc.
      </tp:docstring>
      <arg name="permissions" type="a{ss}" direction="out">
        <tp:docstring>
          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.
        </tp:docstring>
      </arg>
    </method>

    <signal name="CheckPermissions">
      <tp:docstring>
        Emitted when system authorization details change, indicating that
        clients may wish to recheck permissions with GetPermissions.
      </tp:docstring>
    </signal>

    <method name="SetLogging">
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_set_logging"/>
      <tp:docstring>
        Set logging verbosity and which operations are logged.
      </tp:docstring>
      <arg name="level" type="s" direction="in">
        <tp:docstring>
          One of [ERR, WARN, INFO, DEBUG].
        </tp:docstring>
      </arg>
      <arg name="domains" type="s" direction="in">
        <tp:docstring>
          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]
        </tp:docstring>
      </arg>
    </method>

    <method name="state">
      <tp:docstring>
        The overall networking state as determined by the NetworkManager daemon,
        based on the state of network devices under it's management.
      </tp:docstring>
      <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_get_state"/>
      <arg name="state" type="u" direction="out" tp:type="NM_STATE"/>
    </method>

    <property name="NetworkingEnabled" type="b" access="read">
      <tp:docstring>
        Indicates if overall networking is currently enabled or not.  See the
        Enable() method.
      </tp:docstring>
    </property>

    <property name="WirelessEnabled" type="b" access="readwrite">
      <tp:docstring>
        Indicates if wireless is currently enabled or not.
      </tp:docstring>
    </property>

    <property name="WirelessHardwareEnabled" type="b" access="read">
      <tp:docstring>
        Indicates if the wireless hardware is currently enabled, i.e. the state of the RF kill switch.
      </tp:docstring>
    </property>

    <property name="WwanEnabled" type="b" access="readwrite">
      <tp:docstring>
        Indicates if mobile broadband devices are currently enabled or not.
      </tp:docstring>
    </property>

    <property name="WwanHardwareEnabled" type="b" access="read">
      <tp:docstring>
        Indicates if the mobile broadband hardware is currently enabled, i.e. the state of the RF kill switch.
      </tp:docstring>
    </property>

    <property name="WimaxEnabled" type="b" access="readwrite">
      <tp:docstring>
        Indicates if WiMAX devices are currently enabled or not.
      </tp:docstring>
    </property>

    <property name="WimaxHardwareEnabled" type="b" access="read">
      <tp:docstring>
        Indicates if the WiMAX hardware is currently enabled, i.e. the state of the RF kill switch.
      </tp:docstring>
    </property>

    <property name="ActiveConnections" type="ao" access="read">
      <tp:docstring>
        List of active connection object paths.
      </tp:docstring>
    </property>

    <property name="Version" type="s" access="read">
      <tp:docstring>
        NetworkManager version.
      </tp:docstring>
    </property>

    <property name="State" type="u" access="read" tp:type="NM_STATE">
      <tp:docstring>
        The overall state of the NetworkManager daemon.
      </tp:docstring>
    </property>

    <signal name="StateChanged">
      <tp:docstring>
        NetworkManager's state changed.
      </tp:docstring>
      <arg name="state" type="u" tp:type="NM_STATE">
        <tp:docstring>
          The new state of NetworkManager.
        </tp:docstring>
      </arg>
    </signal>

    <signal name="PropertiesChanged">
      <tp:docstring>
        NetworkManager's properties changed.
      </tp:docstring>
      <arg name="properties" type="a{sv}" tp:type="String_Variant_Map">
        <tp:docstring>
          The changed properties.
        </tp:docstring>
      </arg>
    </signal>

    <signal name="DeviceAdded">
      <tp:docstring>
        A device was added to the system
      </tp:docstring>
      <arg name="device_path" type="o">
        <tp:docstring>
          The object path of the newly added device.
        </tp:docstring>
      </arg>
    </signal>

    <signal name="DeviceRemoved">
      <tp:docstring>
        A device was removed from the system, and is no longer available.
      </tp:docstring>
      <arg name="device_path" type="o">
        <tp:docstring>
          The object path of the device that was just removed.
        </tp:docstring>
      </arg>
    </signal>

    <tp:enum name="NM_STATE" type="u">
      <tp:docstring>
        Describes the overall state of the daemon.
      </tp:docstring>
      <tp:enumvalue suffix="UNKNOWN" value="0">
        <tp:docstring>
          Networking state is unknown.
        </tp:docstring>
      </tp:enumvalue>
      <tp:enumvalue suffix="ASLEEP" value="10">
        <tp:docstring>
          Networking is inactive and all devices are disabled.
        </tp:docstring>
      </tp:enumvalue>
      <tp:enumvalue suffix="DISCONNECTED" value="20">
        <tp:docstring>
          There is no active network connection.
        </tp:docstring>
      </tp:enumvalue>
      <tp:enumvalue suffix="DISCONNECTING" value="30">
        <tp:docstring>
          Network connections are being cleaned up.
        </tp:docstring>
      </tp:enumvalue>
      <tp:enumvalue suffix="CONNECTING" value="40">
        <tp:docstring>
          A network device is connecting to a network and there is no other
          available network connection.
        </tp:docstring>
      </tp:enumvalue>
      <tp:enumvalue suffix="CONNECTED_LOCAL" value="50">
        <tp:docstring>
          A network device is connected, but there is only link-local connectivity.
        </tp:docstring>
      </tp:enumvalue>
      <tp:enumvalue suffix="CONNECTED_SITE" value="60">
        <tp:docstring>
          A network device is connected, but there is only site-local connectivity.
        </tp:docstring>
      </tp:enumvalue>
      <tp:enumvalue suffix="CONNECTED_GLOBAL" value="70">
        <tp:docstring>
          A network device is connected, with global network connectivity.
        </tp:docstring>
      </tp:enumvalue>
    </tp:enum>

  </interface>
</node>