summaryrefslogtreecommitdiffstats
path: root/network
diff options
context:
space:
mode:
Diffstat (limited to 'network')
-rw-r--r--network/connection.c6
-rw-r--r--network/main.c12
-rw-r--r--network/manager.c5
3 files changed, 11 insertions, 12 deletions
diff --git a/network/connection.c b/network/connection.c
index 16d3e383..b8f029e1 100644
--- a/network/connection.c
+++ b/network/connection.c
@@ -123,12 +123,6 @@ static inline DBusMessage *not_connected(DBusMessage *msg)
"Device not connected");
}
-static inline DBusMessage *no_pending_connect(DBusMessage *msg)
-{
- return g_dbus_create_error(msg, ERROR_INTERFACE ".Failed",
- "Device has no pending connect");
-}
-
static inline DBusMessage *connection_attempt_failed(DBusMessage *msg, int err)
{
return g_dbus_create_error(msg, ERROR_INTERFACE ".ConnectionAttemptFailed",
diff --git a/network/main.c b/network/main.c
index 6efdb81d..2307a165 100644
--- a/network/main.c
+++ b/network/main.c
@@ -32,16 +32,17 @@
#include "plugin.h"
#include "manager.h"
+static DBusConnection *connection = NULL;
+
static int network_init(void)
{
- DBusConnection *conn;
- conn = dbus_bus_get(DBUS_BUS_SYSTEM, NULL);
- if (conn == NULL)
+ connection = dbus_bus_get(DBUS_BUS_SYSTEM, NULL);
+ if (connection == NULL)
return -EIO;
- if (network_manager_init(conn) < 0) {
- dbus_connection_unref(conn);
+ if (network_manager_init(connection) < 0) {
+ dbus_connection_unref(connection);
return -EIO;
}
@@ -51,6 +52,7 @@ static int network_init(void)
static void network_exit(void)
{
network_manager_exit();
+ dbus_connection_unref(connection);
}
BLUETOOTH_PLUGIN_DEFINE("network", network_init, network_exit)
diff --git a/network/manager.c b/network/manager.c
index c9555285..cafb7442 100644
--- a/network/manager.c
+++ b/network/manager.c
@@ -368,7 +368,6 @@ int network_manager_init(DBusConnection *conn)
return -1;
/* Register PANU, GN and NAP servers if they don't exist */
- /* FIXME: server should be registered as adapter driver */
btd_register_adapter_driver(&network_panu_server_driver);
btd_register_adapter_driver(&network_gn_server_driver);
btd_register_adapter_driver(&network_nap_server_driver);
@@ -397,6 +396,10 @@ void network_manager_exit(void)
connection_exit();
}
+ btd_unregister_adapter_driver(&network_panu_server_driver);
+ btd_unregister_adapter_driver(&network_gn_server_driver);
+ btd_unregister_adapter_driver(&network_nap_server_driver);
+
dbus_connection_unref(connection);
connection = NULL;