diff options
author | Patrik Flykt <patrik.flykt@linux.intel.com> | 2013-01-28 17:44:36 +0200 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2013-01-30 10:27:56 +0200 |
commit | 69b4c5dea3a3486246c847ea149047c25c7717ae (patch) | |
tree | 80b44bf0109d6ecee74926fd7c398b31c3af3f01 /plugins | |
parent | e7d00125079494dd3d170d7275a2883a2d82e292 (diff) | |
download | connman-69b4c5dea3a3486246c847ea149047c25c7717ae.tar.gz connman-69b4c5dea3a3486246c847ea149047c25c7717ae.tar.bz2 connman-69b4c5dea3a3486246c847ea149047c25c7717ae.zip |
bluetooth: Register technology driver
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/bluetooth.c | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/plugins/bluetooth.c b/plugins/bluetooth.c index 1b5aed01..7e7c35ef 100644 --- a/plugins/bluetooth.c +++ b/plugins/bluetooth.c @@ -28,20 +28,50 @@ #define CONNMAN_API_SUBJECT_TO_CHANGE #include <connman/plugin.h> #include <connman/dbus.h> +#include <connman/technology.h> static DBusConnection *connection; +static int bluetooth_tech_probe(struct connman_technology *technology) +{ + return 0; +} + +static void bluetooth_tech_remove(struct connman_technology *technology) +{ + +} + +static struct connman_technology_driver tech_driver = { + .name = "bluetooth", + .type = CONNMAN_SERVICE_TYPE_BLUETOOTH, + .probe = bluetooth_tech_probe, + .remove = bluetooth_tech_remove, +}; + static int bluetooth_init(void) { connection = connman_dbus_get_connection(); if (connection == NULL) - return -EIO; + goto out; + + if (connman_technology_driver_register(&tech_driver) < 0) { + connman_warn("Failed to initialize technology for Bluez 5"); + goto out; + } return 0; + +out: + if (connection != NULL) + dbus_connection_unref(connection); + + return -EIO; } static void bluetooth_exit(void) { + connman_technology_driver_unregister(&tech_driver); dbus_connection_unref(connection); } |