diff options
-rw-r--r-- | hcid/dbus-hci.c | 2 | ||||
-rw-r--r-- | hcid/device.c | 8 | ||||
-rw-r--r-- | hcid/device.h | 1 |
3 files changed, 10 insertions, 1 deletions
diff --git a/hcid/dbus-hci.c b/hcid/dbus-hci.c index 1afe3d8f..bc0e080a 100644 --- a/hcid/dbus-hci.c +++ b/hcid/dbus-hci.c @@ -2240,7 +2240,7 @@ int hcid_dbus_set_io_cap(bdaddr_t *local, bdaddr_t *remote, device = adapter_get_device(connection, adapter, addr); if (device) { - device->cap = cap; + device_set_cap(device, cap); device->auth = auth; } diff --git a/hcid/device.c b/hcid/device.c index aad8c2d8..0ab5d595 100644 --- a/hcid/device.c +++ b/hcid/device.c @@ -986,6 +986,14 @@ void device_set_temporary(struct device *device, gboolean temporary) device->temporary = temporary; } +void device_set_cap(struct device *device, uint8_t cap) +{ + if (!device) + return; + + device->cap = cap; +} + int btd_register_device_driver(struct btd_device_driver *driver) { const char **uuid; diff --git a/hcid/device.h b/hcid/device.h index 4f40e84a..5abdb1a1 100644 --- a/hcid/device.h +++ b/hcid/device.h @@ -64,6 +64,7 @@ void device_set_agent(struct device *device, struct agent *agent); gboolean device_is_busy(struct device *device); gboolean device_is_temporary(struct device *device); void device_set_temporary(struct device *device, gboolean temporary); +void device_set_cap(struct device *device, uint8_t cap); #define BTD_UUIDS(args...) ((const char *[]) { args, NULL } ) |