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.VPN.Plugin">
6
This interface is provided by plugins providing VPN services to the NetworkManager daemon.
8
<method name="Connect">
10
Tells the plugin to connect.
12
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_connect"/>
13
<arg name="connection" type="a{sa{sv}}" direction="in" tp:type="String_String_Variant_Map_Map">
15
Describes the connection to be established.
19
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.StartingInProgress"/>
20
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.AlreadyStarted"/>
21
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.StoppingInProgress"/>
22
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.BadArguments"/>
23
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.LaunchFailed"/>
27
<method name="NeedSecrets">
29
Asks the plugin whether the provided connection will require secrets to connect successfully.
31
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_need_secrets"/>
32
<arg name="settings" type="a{sa{sv}}" direction="in" tp:type="String_String_Variant_Map_Map">
34
Describes the connection that may need secrets.
37
<arg name="setting_name" type="s" direction="out">
39
The setting name within the provided connection that requires secrets, if any.
43
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.ConnectionInvalid"/>
47
<method name="Disconnect">
49
Disconnect the plugin.
51
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_disconnect"/>
53
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.StoppingInProgress"/>
54
<tp:error name="org.freedesktop.NetworkManager.VPN.Error.AlreadyStopped"/>
58
<method name="SetIp4Config">
60
Set IPv4 details on the connection.
62
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_set_ip4_config"/>
63
<arg name="config" type="a{sv}" direction="in" tp:type="String_Variant_Map">
65
Ip4Config details for the conneciton.
70
<method name="SetFailure">
72
Indicate a failure to the plugin.
74
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_vpn_plugin_set_failure"/>
75
<arg name="reason" type="s" direction="in">
77
The reason for the failure.
82
<property name="State" type="u" access="read" tp:type="NM_VPN_CONNECTION_STATE">
84
The state of the plugin.
88
<signal name="StateChanged">
90
Emitted when the plugin state changes.
92
<arg name="state" type="u" tp:type="NM_VPN_CONNECTION_STATE">
94
The new state of the plugin.
99
<signal name="Ip4Config">
101
The plugin obtained an IPv4 configuration.
103
<arg name="ip4config" type="a{sv}" tp:type="String_Variant_Map">
105
The IPv4 configuration.
110
<signal name="LoginBanner">
112
Emitted when the plugin receives a login banner from the VPN service.
114
<arg name="banner" type="s">
116
The login banner string.
121
<signal name="Failure">
123
Emitted when a failure in the VPN plugin occurs.
125
<arg name="reason" type="u" tp:type="NM_VPN_PLUGIN_FAILURE">
127
Reason code for the failure.
132
<tp:enum name="NM_VPN_PLUGIN_FAILURE" type="u">
133
<tp:enumvalue suffix="LOGIN_FAILED" value="0">
138
<tp:enumvalue suffix="CONNECT_FAILED" value="1">
143
<tp:enumvalue suffix="BAD_IP_CONFIG" value="2">
145
Invalid IP configuration returned from the VPN plugin.