summaryrefslogtreecommitdiff
path: root/src/shared/att.h
diff options
context:
space:
mode:
authorArman Uguray <armansito@chromium.org>2014-08-28 14:25:17 -0700
committerMarcel Holtmann <marcel@holtmann.org>2014-08-28 23:37:13 +0200
commite44dd89a996400d5737e0ba80f2b0d6d53266334 (patch)
treea4ef7105a64854b46ad051ece05ffa1b334b785d /src/shared/att.h
parenta2c546525e7567c301f52b173f941f3b3d192596 (diff)
downloadbluez-e44dd89a996400d5737e0ba80f2b0d6d53266334.tar.gz
shared/att: Support multiple disconnect handlers.
This patch adds support for registering multiple disconnect handlers with an instance of struct bt_att. Unregistering is achieved via a new function AND through bt_att_unregister_all and all disconnect callbacks get automatically unregistered after a single disconnect event.
Diffstat (limited to 'src/shared/att.h')
-rw-r--r--src/shared/att.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/shared/att.h b/src/shared/att.h
index cf44704ee..106302104 100644
--- a/src/shared/att.h
+++ b/src/shared/att.h
@@ -54,10 +54,6 @@ bool bt_att_set_mtu(struct bt_att *att, uint16_t mtu);
bool bt_att_set_timeout_cb(struct bt_att *att, bt_att_timeout_func_t callback,
void *user_data,
bt_att_destroy_func_t destroy);
-bool bt_att_set_disconnect_cb(struct bt_att *att,
- bt_att_disconnect_func_t callback,
- void *user_data,
- bt_att_destroy_func_t destroy);
unsigned int bt_att_send(struct bt_att *att, uint8_t opcode,
const void *pdu, uint16_t length,
@@ -72,4 +68,11 @@ unsigned int bt_att_register(struct bt_att *att, uint8_t opcode,
void *user_data,
bt_att_destroy_func_t destroy);
bool bt_att_unregister(struct bt_att *att, unsigned int id);
+
+unsigned int bt_att_register_disconnect(struct bt_att *att,
+ bt_att_disconnect_func_t callback,
+ void *user_data,
+ bt_att_destroy_func_t destroy);
+bool bt_att_unregister_disconnect(struct bt_att *att, unsigned int id);
+
bool bt_att_unregister_all(struct bt_att *att);