From 0c9f030b1b3c8cf96feb9f702c5b925a1dc9ea69 Mon Sep 17 00:00:00 2001 From: Luiz Augusto von Dentz Date: Mon, 8 May 2017 16:00:46 +0300 Subject: [PATCH] shared/gatt-db: Add gatt_db_insert_included This introduces gatt_db_insert_included which is similar to gatt_db_service_insert_included but doesn't require the caller to know the service where the attribute should be inserted. --- src/shared/gatt-db.c | 13 +++++++++++++ src/shared/gatt-db.h | 4 ++++ 2 files changed, 17 insertions(+) diff --git a/src/shared/gatt-db.c b/src/shared/gatt-db.c index 2cb80ec21..376e70502 100644 --- a/src/shared/gatt-db.c +++ b/src/shared/gatt-db.c @@ -913,6 +913,19 @@ gatt_db_service_insert_included(struct gatt_db_attribute *attrib, return service_insert_included(attrib->service, handle, include); } +struct gatt_db_attribute * +gatt_db_insert_included(struct gatt_db *db, uint16_t handle, + struct gatt_db_attribute *include) +{ + struct gatt_db_attribute *attrib; + + attrib = gatt_db_get_service(db, handle); + if (!attrib) + return NULL; + + return service_insert_included(attrib->service, handle, include); +} + bool gatt_db_service_set_active(struct gatt_db_attribute *attrib, bool active) { struct gatt_db_service *service; diff --git a/src/shared/gatt-db.h b/src/shared/gatt-db.h index 19583e7de..fa7897b23 100644 --- a/src/shared/gatt-db.h +++ b/src/shared/gatt-db.h @@ -93,6 +93,10 @@ gatt_db_service_insert_descriptor(struct gatt_db_attribute *attrib, gatt_db_write_t write_func, void *user_data); +struct gatt_db_attribute * +gatt_db_insert_included(struct gatt_db *db, uint16_t handle, + struct gatt_db_attribute *include); + struct gatt_db_attribute * gatt_db_service_add_included(struct gatt_db_attribute *attrib, struct gatt_db_attribute *include); -- 2.47.3