summaryrefslogtreecommitdiff
path: root/shared-bindings
diff options
context:
space:
mode:
authorScott Shawcroft <scott@tannewt.org>2019-12-05 15:02:52 -0800
committerScott Shawcroft <scott@tannewt.org>2019-12-06 16:03:14 -0800
commitda0ea979ff651e6358e99b6369a22b9184e2f7e6 (patch)
treeda7044e450dad010183b95b31f3bb21fa781f126 /shared-bindings
parent559ce6a949ae10eda869684f8155a0127bc588e2 (diff)
Check connection validity after service discovery.
Fixes #2347
Diffstat (limited to 'shared-bindings')
-rw-r--r--shared-bindings/_bleio/Connection.c10
-rw-r--r--shared-bindings/_bleio/Connection.h2
-rw-r--r--shared-bindings/_bleio/Service.c2
3 files changed, 8 insertions, 6 deletions
diff --git a/shared-bindings/_bleio/Connection.c b/shared-bindings/_bleio/Connection.c
index 709f6c254..c157af365 100644
--- a/shared-bindings/_bleio/Connection.c
+++ b/shared-bindings/_bleio/Connection.c
@@ -66,7 +66,7 @@
//| connection = _bleio.adapter.connect(my_entry.address, timeout=10)
//|
-STATIC void ensure_connected(bleio_connection_obj_t *self) {
+void bleio_connection_ensure_connected(bleio_connection_obj_t *self) {
if (!common_hal_bleio_connection_get_connected(self)) {
mp_raise_bleio_ConnectionError(translate("Connection has been disconnected and can no longer be used. Create a new connection."));
}
@@ -106,7 +106,7 @@ STATIC mp_obj_t bleio_connection_pair(mp_uint_t n_args, const mp_obj_t *pos_args
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
- ensure_connected(self);
+ bleio_connection_ensure_connected(self);
common_hal_bleio_connection_pair(self->connection, args[ARG_bond].u_bool);
return mp_const_none;
@@ -148,7 +148,7 @@ STATIC mp_obj_t bleio_connection_discover_remote_services(mp_uint_t n_args, cons
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
- ensure_connected(self);
+ bleio_connection_ensure_connected(self);
return MP_OBJ_FROM_PTR(common_hal_bleio_connection_discover_remote_services(
self,
@@ -209,7 +209,7 @@ const mp_obj_property_t bleio_connection_paired_obj = {
STATIC mp_obj_t bleio_connection_get_connection_interval(mp_obj_t self_in) {
bleio_connection_obj_t *self = MP_OBJ_TO_PTR(self_in);
- ensure_connected(self);
+ bleio_connection_ensure_connected(self);
return mp_obj_new_float(common_hal_bleio_connection_get_connection_interval(self->connection));
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_connection_get_connection_interval_obj, bleio_connection_get_connection_interval);
@@ -219,7 +219,7 @@ STATIC mp_obj_t bleio_connection_set_connection_interval(mp_obj_t self_in, mp_ob
mp_float_t interval = mp_obj_get_float(interval_in);
- ensure_connected(self);
+ bleio_connection_ensure_connected(self);
common_hal_bleio_connection_set_connection_interval(self->connection, interval);
return mp_const_none;
diff --git a/shared-bindings/_bleio/Connection.h b/shared-bindings/_bleio/Connection.h
index b0e26da5c..c6f260160 100644
--- a/shared-bindings/_bleio/Connection.h
+++ b/shared-bindings/_bleio/Connection.h
@@ -43,4 +43,6 @@ extern mp_obj_tuple_t *common_hal_bleio_connection_discover_remote_services(blei
mp_float_t common_hal_bleio_connection_get_connection_interval(bleio_connection_internal_t *self);
void common_hal_bleio_connection_set_connection_interval(bleio_connection_internal_t *self, mp_float_t new_interval);
+void bleio_connection_ensure_connected(bleio_connection_obj_t *self);
+
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_BLEIO_CONNECTION_H
diff --git a/shared-bindings/_bleio/Service.c b/shared-bindings/_bleio/Service.c
index 43679393a..bc242bc36 100644
--- a/shared-bindings/_bleio/Service.c
+++ b/shared-bindings/_bleio/Service.c
@@ -136,7 +136,7 @@ const mp_obj_property_t bleio_service_secondary_obj = {
//| .. attribute:: uuid
//|
//| The UUID of this service. (read-only)
-//|
+//|
//| Will be ``None`` if the 128-bit UUID for this service is not known.
//|
STATIC mp_obj_t bleio_service_get_uuid(mp_obj_t self_in) {