---
vpn/vpn-provider.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/vpn/vpn-provider.c b/vpn/vpn-provider.c
index 98b76e6..c1d718f 100644
--- a/vpn/vpn-provider.c
+++ b/vpn/vpn-provider.c
@@ -974,6 +974,25 @@ static void append_properties(DBusMessageIter *iter,
connman_dbus_dict_close(iter, &dict);
}
+static void connection_added_signal(struct vpn_provider *provider)
+{
+ DBusMessage *signal;
+ DBusMessageIter iter;
+
+ signal = dbus_message_new_signal(VPN_MANAGER_PATH,
+ VPN_MANAGER_INTERFACE, "ConnectionAdded");
+ if (signal == NULL)
+ return;
+
+ dbus_message_iter_init_append(signal, &iter);
+ dbus_message_iter_append_basic(&iter, DBUS_TYPE_OBJECT_PATH,
+ &provider->path);
+ append_properties(&iter, provider);
+
+ dbus_connection_send(connection, signal, NULL);
+ dbus_message_unref(signal);
+}
+
static connman_bool_t check_host(char **hosts, char *host)
{
int i;
@@ -1424,6 +1443,8 @@ int __vpn_provider_create(DBusMessage *msg)
DBUS_TYPE_OBJECT_PATH, &provider->path,
DBUS_TYPE_INVALID);
+ connection_added_signal(provider);
+
return 0;
}
--
1.7.11.4
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman