Diff between 6ecbffae1d0ee5b6e656dc9e9db3f8b86c0dbe1f and d9ef9b74a95bac455fae8d5a4bc09100c4bb86fa

Changed Files

File Additions Deletions Status
thermometer/manager.c +13 -1 modified
thermometer/thermometer.c +4 -1 modified
thermometer/thermometer.h +2 -1 modified

Full Patch

diff --git a/thermometer/manager.c b/thermometer/manager.c
index 08f0e0a..6b98bca 100644
--- a/thermometer/manager.c
+++ b/thermometer/manager.c
@@ -21,9 +21,12 @@
  */
 
 #include <gdbus.h>
+#include <errno.h>
+#include <bluetooth/uuid.h>
 
 #include "adapter.h"
 #include "device.h"
+#include "att.h"
 #include "thermometer.h"
 #include "manager.h"
 
@@ -33,7 +36,16 @@ static DBusConnection *connection = NULL;
 
 static int thermometer_driver_probe(struct btd_device *device, GSList *uuids)
 {
-	return thermometer_register(connection, device);
+	struct att_primary *tattr;
+	GSList *list;
+
+	list = device_services_from_record(device, uuids);
+	if (list == NULL)
+		return -EINVAL;
+
+	tattr = list->data;
+
+	return thermometer_register(connection, device, tattr);
 }
 
 static void thermometer_driver_remove(struct btd_device *device)
diff --git a/thermometer/thermometer.c b/thermometer/thermometer.c
index 3cd821a..027ae02 100644
--- a/thermometer/thermometer.c
+++ b/thermometer/thermometer.c
@@ -21,12 +21,15 @@
  */
 
 #include <gdbus.h>
+#include <bluetooth/uuid.h>
 
 #include "adapter.h"
 #include "device.h"
+#include "att.h"
 #include "thermometer.h"
 
-int thermometer_register(DBusConnection *connection, struct btd_device *device)
+int thermometer_register(DBusConnection *connection, struct btd_device *device,
+						struct att_primary *tattr)
 {
 	/* TODO: Register Health Thermometer Interface */
 	return 0;
diff --git a/thermometer/thermometer.h b/thermometer/thermometer.h
index 0937444..298c9ad 100644
--- a/thermometer/thermometer.h
+++ b/thermometer/thermometer.h
@@ -20,5 +20,6 @@
  *
  */
 
-int thermometer_register(DBusConnection *connection, struct btd_device *device);
+int thermometer_register(DBusConnection *connection, struct btd_device *device,
+						struct att_primary *tattr);
 void thermometer_unregister(struct btd_device *device);