• Johan Hedberg's avatar
    Bluetooth: Add new mgmt_set_advertising command · 4375f103
    Johan Hedberg authored
    This patch adds a new mgmt command for enabling and disabling
    LE advertising. The command depends on the LE setting being enabled
    first and will return a "rejected" response otherwise. The patch also
    adds safeguards so that there will ever only be one set_le or
    set_advertising command pending per adapter.
    
    The response handling and new_settings event sending is done in an
    asynchronous request callback, meaning raw HCI access from user space to
    enable advertising (e.g. hciconfig leadv) will not trigger the
    new_settings event. This is intentional since trying to support mixed
    raw HCI and mgmt access would mean adding extra state tracking or new
    helper functions, essentially negating the benefit of using the
    asynchronous request framework. The HCI_LE_ENABLED and HCI_LE_PERIPHERAL
    flags however are updated correctly even with raw HCI access so this
    will not completely break subsequent access over mgmt.
    Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
    Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    Signed-off-by: default avatarGustavo Padovan <gustavo.padovan@collabora.co.uk>
    4375f103
mgmt.c 101 KB