linux/include/net/bluetooth/mgmt.h

/*
   BlueZ - Bluetooth protocol stack for Linux

   Copyright (C) 2010  Nokia Corporation
   Copyright (C) 2011-2012  Intel Corporation

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License version 2 as
   published by the Free Software Foundation;

   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
   OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
   FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS.
   IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) AND AUTHOR(S) BE LIABLE FOR ANY
   CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES
   WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
   ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
   OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

   ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PATENTS,
   COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS, RELATING TO USE OF THIS
   SOFTWARE IS DISCLAIMED.
*/

#define MGMT_INDEX_NONE

#define MGMT_STATUS_SUCCESS
#define MGMT_STATUS_UNKNOWN_COMMAND
#define MGMT_STATUS_NOT_CONNECTED
#define MGMT_STATUS_FAILED
#define MGMT_STATUS_CONNECT_FAILED
#define MGMT_STATUS_AUTH_FAILED
#define MGMT_STATUS_NOT_PAIRED
#define MGMT_STATUS_NO_RESOURCES
#define MGMT_STATUS_TIMEOUT
#define MGMT_STATUS_ALREADY_CONNECTED
#define MGMT_STATUS_BUSY
#define MGMT_STATUS_REJECTED
#define MGMT_STATUS_NOT_SUPPORTED
#define MGMT_STATUS_INVALID_PARAMS
#define MGMT_STATUS_DISCONNECTED
#define MGMT_STATUS_NOT_POWERED
#define MGMT_STATUS_CANCELLED
#define MGMT_STATUS_INVALID_INDEX
#define MGMT_STATUS_RFKILLED
#define MGMT_STATUS_ALREADY_PAIRED
#define MGMT_STATUS_PERMISSION_DENIED

struct mgmt_hdr {} __packed;

struct mgmt_tlv {} __packed;

struct mgmt_addr_info {} __packed;
#define MGMT_ADDR_INFO_SIZE

#define MGMT_OP_READ_VERSION
#define MGMT_READ_VERSION_SIZE
struct mgmt_rp_read_version {} __packed;

#define MGMT_OP_READ_COMMANDS
#define MGMT_READ_COMMANDS_SIZE
struct mgmt_rp_read_commands {} __packed;

#define MGMT_OP_READ_INDEX_LIST
#define MGMT_READ_INDEX_LIST_SIZE
struct mgmt_rp_read_index_list {} __packed;

/* Reserve one extra byte for names in management messages so that they
 * are always guaranteed to be nul-terminated */
#define MGMT_MAX_NAME_LENGTH
#define MGMT_MAX_SHORT_NAME_LENGTH

#define MGMT_SETTING_POWERED
#define MGMT_SETTING_CONNECTABLE
#define MGMT_SETTING_FAST_CONNECTABLE
#define MGMT_SETTING_DISCOVERABLE
#define MGMT_SETTING_BONDABLE
#define MGMT_SETTING_LINK_SECURITY
#define MGMT_SETTING_SSP
#define MGMT_SETTING_BREDR
#define MGMT_SETTING_HS
#define MGMT_SETTING_LE
#define MGMT_SETTING_ADVERTISING
#define MGMT_SETTING_SECURE_CONN
#define MGMT_SETTING_DEBUG_KEYS
#define MGMT_SETTING_PRIVACY
#define MGMT_SETTING_CONFIGURATION
#define MGMT_SETTING_STATIC_ADDRESS
#define MGMT_SETTING_PHY_CONFIGURATION
#define MGMT_SETTING_WIDEBAND_SPEECH
#define MGMT_SETTING_CIS_CENTRAL
#define MGMT_SETTING_CIS_PERIPHERAL
#define MGMT_SETTING_ISO_BROADCASTER
#define MGMT_SETTING_ISO_SYNC_RECEIVER

#define MGMT_OP_READ_INFO
#define MGMT_READ_INFO_SIZE
struct mgmt_rp_read_info {} __packed;

struct mgmt_mode {} __packed;

#define MGMT_SETTING_SIZE

#define MGMT_OP_SET_POWERED

#define MGMT_OP_SET_DISCOVERABLE
struct mgmt_cp_set_discoverable {} __packed;
#define MGMT_SET_DISCOVERABLE_SIZE

#define MGMT_OP_SET_CONNECTABLE

#define MGMT_OP_SET_FAST_CONNECTABLE

#define MGMT_OP_SET_BONDABLE

#define MGMT_OP_SET_LINK_SECURITY

#define MGMT_OP_SET_SSP

#define MGMT_OP_SET_HS

#define MGMT_OP_SET_LE
#define MGMT_OP_SET_DEV_CLASS
struct mgmt_cp_set_dev_class {} __packed;
#define MGMT_SET_DEV_CLASS_SIZE

#define MGMT_OP_SET_LOCAL_NAME
struct mgmt_cp_set_local_name {} __packed;
#define MGMT_SET_LOCAL_NAME_SIZE

#define MGMT_OP_ADD_UUID
struct mgmt_cp_add_uuid {} __packed;
#define MGMT_ADD_UUID_SIZE

#define MGMT_OP_REMOVE_UUID
struct mgmt_cp_remove_uuid {} __packed;
#define MGMT_REMOVE_UUID_SIZE

struct mgmt_link_key_info {} __packed;

#define MGMT_OP_LOAD_LINK_KEYS
struct mgmt_cp_load_link_keys {} __packed;
#define MGMT_LOAD_LINK_KEYS_SIZE

#define MGMT_LTK_UNAUTHENTICATED
#define MGMT_LTK_AUTHENTICATED
#define MGMT_LTK_P256_UNAUTH
#define MGMT_LTK_P256_AUTH
#define MGMT_LTK_P256_DEBUG

struct mgmt_ltk_info {} __packed;

#define MGMT_OP_LOAD_LONG_TERM_KEYS
struct mgmt_cp_load_long_term_keys {} __packed;
#define MGMT_LOAD_LONG_TERM_KEYS_SIZE

#define MGMT_OP_DISCONNECT
struct mgmt_cp_disconnect {} __packed;
#define MGMT_DISCONNECT_SIZE
struct mgmt_rp_disconnect {} __packed;

#define MGMT_OP_GET_CONNECTIONS
#define MGMT_GET_CONNECTIONS_SIZE
struct mgmt_rp_get_connections {} __packed;

#define MGMT_OP_PIN_CODE_REPLY
struct mgmt_cp_pin_code_reply {} __packed;
#define MGMT_PIN_CODE_REPLY_SIZE
struct mgmt_rp_pin_code_reply {} __packed;

#define MGMT_OP_PIN_CODE_NEG_REPLY
struct mgmt_cp_pin_code_neg_reply {} __packed;
#define MGMT_PIN_CODE_NEG_REPLY_SIZE

#define MGMT_OP_SET_IO_CAPABILITY
struct mgmt_cp_set_io_capability {} __packed;
#define MGMT_SET_IO_CAPABILITY_SIZE

#define MGMT_OP_PAIR_DEVICE
struct mgmt_cp_pair_device {} __packed;
#define MGMT_PAIR_DEVICE_SIZE
struct mgmt_rp_pair_device {} __packed;

#define MGMT_OP_CANCEL_PAIR_DEVICE
#define MGMT_CANCEL_PAIR_DEVICE_SIZE

#define MGMT_OP_UNPAIR_DEVICE
struct mgmt_cp_unpair_device {} __packed;
#define MGMT_UNPAIR_DEVICE_SIZE
struct mgmt_rp_unpair_device {};

#define MGMT_OP_USER_CONFIRM_REPLY
struct mgmt_cp_user_confirm_reply {} __packed;
#define MGMT_USER_CONFIRM_REPLY_SIZE
struct mgmt_rp_user_confirm_reply {} __packed;

#define MGMT_OP_USER_CONFIRM_NEG_REPLY
struct mgmt_cp_user_confirm_neg_reply {} __packed;
#define MGMT_USER_CONFIRM_NEG_REPLY_SIZE

#define MGMT_OP_USER_PASSKEY_REPLY
struct mgmt_cp_user_passkey_reply {} __packed;
#define MGMT_USER_PASSKEY_REPLY_SIZE
struct mgmt_rp_user_passkey_reply {} __packed;

#define MGMT_OP_USER_PASSKEY_NEG_REPLY
struct mgmt_cp_user_passkey_neg_reply {} __packed;
#define MGMT_USER_PASSKEY_NEG_REPLY_SIZE

#define MGMT_OP_READ_LOCAL_OOB_DATA
#define MGMT_READ_LOCAL_OOB_DATA_SIZE
struct mgmt_rp_read_local_oob_data {} __packed;

#define MGMT_OP_ADD_REMOTE_OOB_DATA
struct mgmt_cp_add_remote_oob_data {} __packed;
#define MGMT_ADD_REMOTE_OOB_DATA_SIZE
struct mgmt_cp_add_remote_oob_ext_data {} __packed;
#define MGMT_ADD_REMOTE_OOB_EXT_DATA_SIZE

#define MGMT_OP_REMOVE_REMOTE_OOB_DATA
struct mgmt_cp_remove_remote_oob_data {} __packed;
#define MGMT_REMOVE_REMOTE_OOB_DATA_SIZE

#define MGMT_OP_START_DISCOVERY
struct mgmt_cp_start_discovery {} __packed;
#define MGMT_START_DISCOVERY_SIZE

#define MGMT_OP_STOP_DISCOVERY
struct mgmt_cp_stop_discovery {} __packed;
#define MGMT_STOP_DISCOVERY_SIZE

#define MGMT_OP_CONFIRM_NAME
struct mgmt_cp_confirm_name {} __packed;
#define MGMT_CONFIRM_NAME_SIZE
struct mgmt_rp_confirm_name {} __packed;

#define MGMT_OP_BLOCK_DEVICE
struct mgmt_cp_block_device {} __packed;
#define MGMT_BLOCK_DEVICE_SIZE

#define MGMT_OP_UNBLOCK_DEVICE
struct mgmt_cp_unblock_device {} __packed;
#define MGMT_UNBLOCK_DEVICE_SIZE

#define MGMT_OP_SET_DEVICE_ID
struct mgmt_cp_set_device_id {} __packed;
#define MGMT_SET_DEVICE_ID_SIZE

#define MGMT_OP_SET_ADVERTISING

#define MGMT_OP_SET_BREDR

#define MGMT_OP_SET_STATIC_ADDRESS
struct mgmt_cp_set_static_address {} __packed;
#define MGMT_SET_STATIC_ADDRESS_SIZE

#define MGMT_OP_SET_SCAN_PARAMS
struct mgmt_cp_set_scan_params {} __packed;
#define MGMT_SET_SCAN_PARAMS_SIZE

#define MGMT_OP_SET_SECURE_CONN

#define MGMT_OP_SET_DEBUG_KEYS

#define MGMT_OP_SET_PRIVACY
struct mgmt_cp_set_privacy {} __packed;
#define MGMT_SET_PRIVACY_SIZE

struct mgmt_irk_info {} __packed;

#define MGMT_OP_LOAD_IRKS
struct mgmt_cp_load_irks {} __packed;
#define MGMT_LOAD_IRKS_SIZE

#define MGMT_OP_GET_CONN_INFO
struct mgmt_cp_get_conn_info {} __packed;
#define MGMT_GET_CONN_INFO_SIZE
struct mgmt_rp_get_conn_info {} __packed;

#define MGMT_OP_GET_CLOCK_INFO
struct mgmt_cp_get_clock_info {} __packed;
#define MGMT_GET_CLOCK_INFO_SIZE
struct mgmt_rp_get_clock_info {} __packed;

#define MGMT_OP_ADD_DEVICE
struct mgmt_cp_add_device {} __packed;
#define MGMT_ADD_DEVICE_SIZE

#define MGMT_OP_REMOVE_DEVICE
struct mgmt_cp_remove_device {} __packed;
#define MGMT_REMOVE_DEVICE_SIZE

struct mgmt_conn_param {} __packed;

#define MGMT_OP_LOAD_CONN_PARAM
struct mgmt_cp_load_conn_param {} __packed;
#define MGMT_LOAD_CONN_PARAM_SIZE

#define MGMT_OP_READ_UNCONF_INDEX_LIST
#define MGMT_READ_UNCONF_INDEX_LIST_SIZE
struct mgmt_rp_read_unconf_index_list {} __packed;

#define MGMT_OPTION_EXTERNAL_CONFIG
#define MGMT_OPTION_PUBLIC_ADDRESS

#define MGMT_OP_READ_CONFIG_INFO
#define MGMT_READ_CONFIG_INFO_SIZE
struct mgmt_rp_read_config_info {} __packed;

#define MGMT_OP_SET_EXTERNAL_CONFIG
struct mgmt_cp_set_external_config {} __packed;
#define MGMT_SET_EXTERNAL_CONFIG_SIZE

#define MGMT_OP_SET_PUBLIC_ADDRESS
struct mgmt_cp_set_public_address {} __packed;
#define MGMT_SET_PUBLIC_ADDRESS_SIZE

#define MGMT_OP_START_SERVICE_DISCOVERY
struct mgmt_cp_start_service_discovery {} __packed;
#define MGMT_START_SERVICE_DISCOVERY_SIZE

#define MGMT_OP_READ_LOCAL_OOB_EXT_DATA
struct mgmt_cp_read_local_oob_ext_data {} __packed;
#define MGMT_READ_LOCAL_OOB_EXT_DATA_SIZE
struct mgmt_rp_read_local_oob_ext_data {} __packed;

#define MGMT_OP_READ_EXT_INDEX_LIST
#define MGMT_READ_EXT_INDEX_LIST_SIZE
struct mgmt_rp_read_ext_index_list {} __packed;

#define MGMT_OP_READ_ADV_FEATURES
#define MGMT_READ_ADV_FEATURES_SIZE
struct mgmt_rp_read_adv_features {} __packed;

#define MGMT_OP_ADD_ADVERTISING
struct mgmt_cp_add_advertising {} __packed;
#define MGMT_ADD_ADVERTISING_SIZE
struct mgmt_rp_add_advertising {} __packed;

#define MGMT_ADV_FLAG_CONNECTABLE
#define MGMT_ADV_FLAG_DISCOV
#define MGMT_ADV_FLAG_LIMITED_DISCOV
#define MGMT_ADV_FLAG_MANAGED_FLAGS
#define MGMT_ADV_FLAG_TX_POWER
#define MGMT_ADV_FLAG_APPEARANCE
#define MGMT_ADV_FLAG_LOCAL_NAME
#define MGMT_ADV_FLAG_SEC_1M
#define MGMT_ADV_FLAG_SEC_2M
#define MGMT_ADV_FLAG_SEC_CODED
#define MGMT_ADV_FLAG_CAN_SET_TX_POWER
#define MGMT_ADV_FLAG_HW_OFFLOAD
#define MGMT_ADV_PARAM_DURATION
#define MGMT_ADV_PARAM_TIMEOUT
#define MGMT_ADV_PARAM_INTERVALS
#define MGMT_ADV_PARAM_TX_POWER
#define MGMT_ADV_PARAM_SCAN_RSP

#define MGMT_ADV_FLAG_SEC_MASK

#define MGMT_OP_REMOVE_ADVERTISING
struct mgmt_cp_remove_advertising {} __packed;
#define MGMT_REMOVE_ADVERTISING_SIZE
struct mgmt_rp_remove_advertising {} __packed;

#define MGMT_OP_GET_ADV_SIZE_INFO
struct mgmt_cp_get_adv_size_info {} __packed;
#define MGMT_GET_ADV_SIZE_INFO_SIZE
struct mgmt_rp_get_adv_size_info {} __packed;

#define MGMT_OP_START_LIMITED_DISCOVERY

#define MGMT_OP_READ_EXT_INFO
#define MGMT_READ_EXT_INFO_SIZE
struct mgmt_rp_read_ext_info {} __packed;

#define MGMT_OP_SET_APPEARANCE
struct mgmt_cp_set_appearance {} __packed;
#define MGMT_SET_APPEARANCE_SIZE

#define MGMT_OP_GET_PHY_CONFIGURATION
struct mgmt_rp_get_phy_configuration {} __packed;
#define MGMT_GET_PHY_CONFIGURATION_SIZE

#define MGMT_PHY_BR_1M_1SLOT
#define MGMT_PHY_BR_1M_3SLOT
#define MGMT_PHY_BR_1M_5SLOT
#define MGMT_PHY_EDR_2M_1SLOT
#define MGMT_PHY_EDR_2M_3SLOT
#define MGMT_PHY_EDR_2M_5SLOT
#define MGMT_PHY_EDR_3M_1SLOT
#define MGMT_PHY_EDR_3M_3SLOT
#define MGMT_PHY_EDR_3M_5SLOT
#define MGMT_PHY_LE_1M_TX
#define MGMT_PHY_LE_1M_RX
#define MGMT_PHY_LE_2M_TX
#define MGMT_PHY_LE_2M_RX
#define MGMT_PHY_LE_CODED_TX
#define MGMT_PHY_LE_CODED_RX

#define MGMT_PHY_BREDR_MASK
#define MGMT_PHY_LE_MASK
#define MGMT_PHY_LE_TX_MASK
#define MGMT_PHY_LE_RX_MASK

#define MGMT_OP_SET_PHY_CONFIGURATION
struct mgmt_cp_set_phy_configuration {} __packed;
#define MGMT_SET_PHY_CONFIGURATION_SIZE

#define MGMT_OP_SET_BLOCKED_KEYS

#define HCI_BLOCKED_KEY_TYPE_LINKKEY
#define HCI_BLOCKED_KEY_TYPE_LTK
#define HCI_BLOCKED_KEY_TYPE_IRK

struct mgmt_blocked_key_info {} __packed;

struct mgmt_cp_set_blocked_keys {} __packed;
#define MGMT_OP_SET_BLOCKED_KEYS_SIZE

#define MGMT_OP_SET_WIDEBAND_SPEECH

#define MGMT_CAP_SEC_FLAGS
#define MGMT_CAP_MAX_ENC_KEY_SIZE
#define MGMT_CAP_SMP_MAX_ENC_KEY_SIZE
#define MGMT_CAP_LE_TX_PWR

#define MGMT_OP_READ_CONTROLLER_CAP
#define MGMT_READ_CONTROLLER_CAP_SIZE
struct mgmt_rp_read_controller_cap {} __packed;

#define MGMT_OP_READ_EXP_FEATURES_INFO
#define MGMT_READ_EXP_FEATURES_INFO_SIZE
struct mgmt_rp_read_exp_features_info {} __packed;

#define MGMT_OP_SET_EXP_FEATURE
struct mgmt_cp_set_exp_feature {} __packed;
#define MGMT_SET_EXP_FEATURE_SIZE
struct mgmt_rp_set_exp_feature {} __packed;

#define MGMT_OP_READ_DEF_SYSTEM_CONFIG
#define MGMT_READ_DEF_SYSTEM_CONFIG_SIZE

#define MGMT_OP_SET_DEF_SYSTEM_CONFIG
#define MGMT_SET_DEF_SYSTEM_CONFIG_SIZE

#define MGMT_OP_READ_DEF_RUNTIME_CONFIG
#define MGMT_READ_DEF_RUNTIME_CONFIG_SIZE

#define MGMT_OP_SET_DEF_RUNTIME_CONFIG
#define MGMT_SET_DEF_RUNTIME_CONFIG_SIZE

#define MGMT_OP_GET_DEVICE_FLAGS
#define MGMT_GET_DEVICE_FLAGS_SIZE
struct mgmt_cp_get_device_flags {} __packed;
struct mgmt_rp_get_device_flags {} __packed;

#define MGMT_OP_SET_DEVICE_FLAGS
#define MGMT_SET_DEVICE_FLAGS_SIZE
struct mgmt_cp_set_device_flags {} __packed;
struct mgmt_rp_set_device_flags {} __packed;

#define MGMT_ADV_MONITOR_FEATURE_MASK_OR_PATTERNS

#define MGMT_OP_READ_ADV_MONITOR_FEATURES
#define MGMT_READ_ADV_MONITOR_FEATURES_SIZE
struct mgmt_rp_read_adv_monitor_features {}  __packed;

struct mgmt_adv_pattern {} __packed;

#define MGMT_OP_ADD_ADV_PATTERNS_MONITOR
struct mgmt_cp_add_adv_patterns_monitor {} __packed;
#define MGMT_ADD_ADV_PATTERNS_MONITOR_SIZE
struct mgmt_rp_add_adv_patterns_monitor {} __packed;

#define MGMT_OP_REMOVE_ADV_MONITOR
struct mgmt_cp_remove_adv_monitor {} __packed;
#define MGMT_REMOVE_ADV_MONITOR_SIZE
struct mgmt_rp_remove_adv_monitor {} __packed;

#define MGMT_OP_ADD_EXT_ADV_PARAMS
struct mgmt_cp_add_ext_adv_params {} __packed;
#define MGMT_ADD_EXT_ADV_PARAMS_MIN_SIZE
struct mgmt_rp_add_ext_adv_params {} __packed;

#define MGMT_OP_ADD_EXT_ADV_DATA
struct mgmt_cp_add_ext_adv_data {} __packed;
#define MGMT_ADD_EXT_ADV_DATA_SIZE
struct mgmt_rp_add_ext_adv_data {} __packed;

struct mgmt_adv_rssi_thresholds {} __packed;

#define MGMT_OP_ADD_ADV_PATTERNS_MONITOR_RSSI
struct mgmt_cp_add_adv_patterns_monitor_rssi {} __packed;
#define MGMT_ADD_ADV_PATTERNS_MONITOR_RSSI_SIZE
#define MGMT_OP_SET_MESH_RECEIVER
struct mgmt_cp_set_mesh {} __packed;
#define MGMT_SET_MESH_RECEIVER_SIZE

#define MGMT_OP_MESH_READ_FEATURES
#define MGMT_MESH_READ_FEATURES_SIZE
#define MESH_HANDLES_MAX
struct mgmt_rp_mesh_read_features {} __packed;

#define MGMT_OP_MESH_SEND
struct mgmt_cp_mesh_send {} __packed;
#define MGMT_MESH_SEND_SIZE

#define MGMT_OP_MESH_SEND_CANCEL
struct mgmt_cp_mesh_send_cancel {} __packed;
#define MGMT_MESH_SEND_CANCEL_SIZE

#define MGMT_EV_CMD_COMPLETE
struct mgmt_ev_cmd_complete {} __packed;

#define MGMT_EV_CMD_STATUS
struct mgmt_ev_cmd_status {} __packed;

#define MGMT_EV_CONTROLLER_ERROR
struct mgmt_ev_controller_error {} __packed;

#define MGMT_EV_INDEX_ADDED

#define MGMT_EV_INDEX_REMOVED

#define MGMT_EV_NEW_SETTINGS

#define MGMT_EV_CLASS_OF_DEV_CHANGED
struct mgmt_ev_class_of_dev_changed {};

#define MGMT_EV_LOCAL_NAME_CHANGED
struct mgmt_ev_local_name_changed {} __packed;

#define MGMT_EV_NEW_LINK_KEY
struct mgmt_ev_new_link_key {} __packed;

#define MGMT_EV_NEW_LONG_TERM_KEY
struct mgmt_ev_new_long_term_key {} __packed;

#define MGMT_EV_DEVICE_CONNECTED
struct mgmt_ev_device_connected {} __packed;

#define MGMT_DEV_DISCONN_UNKNOWN
#define MGMT_DEV_DISCONN_TIMEOUT
#define MGMT_DEV_DISCONN_LOCAL_HOST
#define MGMT_DEV_DISCONN_REMOTE
#define MGMT_DEV_DISCONN_AUTH_FAILURE
#define MGMT_DEV_DISCONN_LOCAL_HOST_SUSPEND

#define MGMT_EV_DEVICE_DISCONNECTED
struct mgmt_ev_device_disconnected {} __packed;

#define MGMT_EV_CONNECT_FAILED
struct mgmt_ev_connect_failed {} __packed;

#define MGMT_EV_PIN_CODE_REQUEST
struct mgmt_ev_pin_code_request {} __packed;

#define MGMT_EV_USER_CONFIRM_REQUEST
struct mgmt_ev_user_confirm_request {} __packed;

#define MGMT_EV_USER_PASSKEY_REQUEST
struct mgmt_ev_user_passkey_request {} __packed;

#define MGMT_EV_AUTH_FAILED
struct mgmt_ev_auth_failed {} __packed;

#define MGMT_DEV_FOUND_CONFIRM_NAME
#define MGMT_DEV_FOUND_LEGACY_PAIRING
#define MGMT_DEV_FOUND_NOT_CONNECTABLE
#define MGMT_DEV_FOUND_INITIATED_CONN
#define MGMT_DEV_FOUND_NAME_REQUEST_FAILED
#define MGMT_DEV_FOUND_SCAN_RSP

#define MGMT_EV_DEVICE_FOUND
struct mgmt_ev_device_found {} __packed;

#define MGMT_EV_DISCOVERING
struct mgmt_ev_discovering {} __packed;

#define MGMT_EV_DEVICE_BLOCKED
struct mgmt_ev_device_blocked {} __packed;

#define MGMT_EV_DEVICE_UNBLOCKED
struct mgmt_ev_device_unblocked {} __packed;

#define MGMT_EV_DEVICE_UNPAIRED
struct mgmt_ev_device_unpaired {} __packed;

#define MGMT_EV_PASSKEY_NOTIFY
struct mgmt_ev_passkey_notify {} __packed;

#define MGMT_EV_NEW_IRK
struct mgmt_ev_new_irk {} __packed;

#define MGMT_CSRK_LOCAL_UNAUTHENTICATED
#define MGMT_CSRK_REMOTE_UNAUTHENTICATED
#define MGMT_CSRK_LOCAL_AUTHENTICATED
#define MGMT_CSRK_REMOTE_AUTHENTICATED

struct mgmt_csrk_info {} __packed;

#define MGMT_EV_NEW_CSRK
struct mgmt_ev_new_csrk {} __packed;

#define MGMT_EV_DEVICE_ADDED
struct mgmt_ev_device_added {} __packed;

#define MGMT_EV_DEVICE_REMOVED
struct mgmt_ev_device_removed {} __packed;

#define MGMT_EV_NEW_CONN_PARAM
struct mgmt_ev_new_conn_param {} __packed;

#define MGMT_EV_UNCONF_INDEX_ADDED

#define MGMT_EV_UNCONF_INDEX_REMOVED

#define MGMT_EV_NEW_CONFIG_OPTIONS

struct mgmt_ev_ext_index {} __packed;

#define MGMT_EV_EXT_INDEX_ADDED

#define MGMT_EV_EXT_INDEX_REMOVED

#define MGMT_EV_LOCAL_OOB_DATA_UPDATED
struct mgmt_ev_local_oob_data_updated {} __packed;

#define MGMT_EV_ADVERTISING_ADDED
struct mgmt_ev_advertising_added {} __packed;

#define MGMT_EV_ADVERTISING_REMOVED
struct mgmt_ev_advertising_removed {} __packed;

#define MGMT_EV_EXT_INFO_CHANGED
struct mgmt_ev_ext_info_changed {} __packed;

#define MGMT_EV_PHY_CONFIGURATION_CHANGED
struct mgmt_ev_phy_configuration_changed {} __packed;

#define MGMT_EV_EXP_FEATURE_CHANGED
struct mgmt_ev_exp_feature_changed {} __packed;

#define MGMT_EV_DEVICE_FLAGS_CHANGED
struct mgmt_ev_device_flags_changed {} __packed;

#define MGMT_EV_ADV_MONITOR_ADDED
struct mgmt_ev_adv_monitor_added {}  __packed;

#define MGMT_EV_ADV_MONITOR_REMOVED
struct mgmt_ev_adv_monitor_removed {}  __packed;

#define MGMT_EV_CONTROLLER_SUSPEND
struct mgmt_ev_controller_suspend {} __packed;

#define MGMT_EV_CONTROLLER_RESUME
struct mgmt_ev_controller_resume {} __packed;

#define MGMT_WAKE_REASON_NON_BT_WAKE
#define MGMT_WAKE_REASON_UNEXPECTED
#define MGMT_WAKE_REASON_REMOTE_WAKE

#define MGMT_EV_ADV_MONITOR_DEVICE_FOUND
struct mgmt_ev_adv_monitor_device_found {} __packed;

#define MGMT_EV_ADV_MONITOR_DEVICE_LOST
struct mgmt_ev_adv_monitor_device_lost {} __packed;

#define MGMT_EV_MESH_DEVICE_FOUND
struct mgmt_ev_mesh_device_found {} __packed;


#define MGMT_EV_MESH_PACKET_CMPLT
struct mgmt_ev_mesh_pkt_cmplt {} __packed;