Hi Andrei, On Tue, Nov 5, 2013 at 10:53 AM, Andrei Emeltchenko <Andrei.Emeltchenko.news@xxxxxxxxx> wrote: > From: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx> > > Wehen receiving mgmt event local_name_changed we shall send notification > to the HAL that local name is changed. > --- > android/adapter.c | 46 +++++++++++++++++++++++----------------------- > 1 file changed, 23 insertions(+), 23 deletions(-) > > diff --git a/android/adapter.c b/android/adapter.c > index 383cf07..b6f6096 100644 > --- a/android/adapter.c > +++ b/android/adapter.c > @@ -66,6 +66,28 @@ struct bt_adapter { > static struct bt_adapter *adapter; > static GSList *found_devices = NULL; > > +static void adapter_name_changed(const uint8_t *name) > +{ > + struct hal_ev_adapter_props_changed *ev; > + size_t len = strlen((const char *) name); > + uint8_t buf[sizeof(*ev) + sizeof(struct hal_property) + len]; > + > + memset(buf, 0, sizeof(buf)); > + ev = (void *) buf; > + > + ev->num_props = 1; > + ev->status = HAL_STATUS_SUCCESS; > + ev->props[0].type = HAL_PROP_ADAPTER_NAME; > + /* Android expects value without NULL terminator */ > + ev->props[0].len = len; > + memcpy(ev->props->val, name, len); > + > + DBG("Adapter name changed to: %s", name); > + > + ipc_send(notification_io, HAL_SERVICE_ID_BLUETOOTH, > + HAL_EV_ADAPTER_PROPS_CHANGED, sizeof(buf), ev, -1); > +} > + > static void mgmt_local_name_changed_event(uint16_t index, uint16_t length, > const void *param, void *user_data) > { > @@ -84,7 +106,7 @@ static void mgmt_local_name_changed_event(uint16_t index, uint16_t length, > g_free(adapter->name); > adapter->name = g_strdup((const char *) rp->name); > > - /* TODO Update services if needed */ > + adapter_name_changed(rp->name); > } This is okay, but you should call this function from set_adapter_name_complete to make sure we are synchronized with the upper stack. -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html