diff --git a/src/main.c b/src/main.c
index 1c21e8c..e13d144 100644
--- a/src/main.c
+++ b/src/main.c
#include "adapter.h"
#include "dbus-common.h"
#include "agent.h"
+#include "profile.h"
#include "manager.h"
#include "mgmt.h"
#include "systemd.h"
exit(1);
}
- if (!manager_init("/")) {
- error("Can't register manager interface");
- exit(1);
- }
+ btd_agent_init();
+ btd_profile_init();
if (option_experimental)
gdbus_flags = G_DBUS_FLAG_ENABLE_EXPERIMENTAL;
plugin_cleanup();
+ btd_profile_cleanup();
+ btd_agent_cleanup();
+
manager_cleanup("/");
rfkill_exit();
diff --git a/src/manager.c b/src/manager.c
index 1b83114..484b801 100644
--- a/src/manager.c
+++ b/src/manager.c
#include "log.h"
#include "adapter.h"
#include "device.h"
-#include "profile.h"
-#include "agent.h"
#include "error.h"
#include "manager.h"
static int default_adapter_id = -1;
static GSList *adapters = NULL;
-bool manager_init(const char *path)
-{
- btd_agent_init();
- btd_profile_init();
-
- return true;
-}
-
static void manager_set_default_adapter(int id)
{
default_adapter_id = id;
void manager_cleanup(const char *path)
{
- btd_profile_cleanup();
- btd_agent_cleanup();
-
while (adapters) {
struct btd_adapter *adapter = adapters->data;
diff --git a/src/manager.h b/src/manager.h
index 7311ce3..3591be5 100644
--- a/src/manager.h
+++ b/src/manager.h
typedef void (*adapter_cb) (struct btd_adapter *adapter, gpointer user_data);
-bool manager_init(const char *path);
void manager_cleanup(const char *path);
struct btd_adapter *manager_find_adapter(const bdaddr_t *sba);