Lines Matching refs:sk
279 static int read_version(struct sock *sk, struct hci_dev *hdev, void *data, in read_version() argument
284 BT_DBG("sock %p", sk); in read_version()
289 return mgmt_cmd_complete(sk, MGMT_INDEX_NONE, MGMT_OP_READ_VERSION, 0, in read_version()
293 static int read_commands(struct sock *sk, struct hci_dev *hdev, void *data, in read_commands() argument
301 BT_DBG("sock %p", sk); in read_commands()
303 if (hci_sock_test_flag(sk, HCI_SOCK_TRUSTED)) { in read_commands()
320 if (hci_sock_test_flag(sk, HCI_SOCK_TRUSTED)) { in read_commands()
338 err = mgmt_cmd_complete(sk, MGMT_INDEX_NONE, MGMT_OP_READ_COMMANDS, 0, in read_commands()
345 static int read_index_list(struct sock *sk, struct hci_dev *hdev, void *data, in read_index_list() argument
354 BT_DBG("sock %p", sk); in read_index_list()
397 err = mgmt_cmd_complete(sk, MGMT_INDEX_NONE, MGMT_OP_READ_INDEX_LIST, in read_index_list()
405 static int read_unconf_index_list(struct sock *sk, struct hci_dev *hdev, in read_unconf_index_list() argument
414 BT_DBG("sock %p", sk); in read_unconf_index_list()
457 err = mgmt_cmd_complete(sk, MGMT_INDEX_NONE, in read_unconf_index_list()
465 static int read_ext_index_list(struct sock *sk, struct hci_dev *hdev, in read_ext_index_list() argument
474 BT_DBG("sock %p", sk); in read_ext_index_list()
529 hci_sock_set_flag(sk, HCI_MGMT_EXT_INDEX_EVENTS); in read_ext_index_list()
530 hci_sock_clear_flag(sk, HCI_MGMT_INDEX_EVENTS); in read_ext_index_list()
531 hci_sock_clear_flag(sk, HCI_MGMT_UNCONF_INDEX_EVENTS); in read_ext_index_list()
533 err = mgmt_cmd_complete(sk, MGMT_INDEX_NONE, in read_ext_index_list()
577 static int send_options_rsp(struct sock *sk, u16 opcode, struct hci_dev *hdev) in send_options_rsp() argument
581 return mgmt_cmd_complete(sk, hdev->id, opcode, 0, &options, in send_options_rsp()
585 static int read_config_info(struct sock *sk, struct hci_dev *hdev, in read_config_info() argument
591 BT_DBG("sock %p %s", sk, hdev->name); in read_config_info()
609 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_READ_CONFIG_INFO, 0, in read_config_info()
1355 static void mgmt_init_hdev(struct sock *sk, struct hci_dev *hdev) in mgmt_init_hdev() argument
1371 static int read_controller_info(struct sock *sk, struct hci_dev *hdev, in read_controller_info() argument
1376 BT_DBG("sock %p %s", sk, hdev->name); in read_controller_info()
1397 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_READ_INFO, 0, &rp, in read_controller_info()
1401 static int send_settings_rsp(struct sock *sk, u16 opcode, struct hci_dev *hdev) in send_settings_rsp() argument
1405 return mgmt_cmd_complete(sk, hdev->id, opcode, 0, &settings, in send_settings_rsp()
1462 static void advertising_added(struct sock *sk, struct hci_dev *hdev, in advertising_added() argument
1469 mgmt_event(MGMT_EV_ADVERTISING_ADDED, hdev, &ev, sizeof(ev), sk); in advertising_added()
1472 static void advertising_removed(struct sock *sk, struct hci_dev *hdev, in advertising_removed() argument
1479 mgmt_event(MGMT_EV_ADVERTISING_REMOVED, hdev, &ev, sizeof(ev), sk); in advertising_removed()
1653 static int set_powered(struct sock *sk, struct hci_dev *hdev, void *data, in set_powered() argument
1663 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_POWERED, in set_powered()
1669 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_POWERED, in set_powered()
1678 mgmt_pending_add(sk, MGMT_OP_SET_POWERED, hdev, in set_powered()
1686 err = send_settings_rsp(sk, MGMT_OP_SET_POWERED, hdev); in set_powered()
1690 cmd = mgmt_pending_add(sk, MGMT_OP_SET_POWERED, hdev, data, len); in set_powered()
1733 struct sock *sk; member
1742 send_settings_rsp(cmd->sk, cmd->opcode, match->hdev); in settings_rsp()
1746 if (match->sk == NULL) { in settings_rsp()
1747 match->sk = cmd->sk; in settings_rsp()
1748 sock_hold(match->sk); in settings_rsp()
1758 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, *status); in cmd_status_rsp()
1778 return mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, in generic_cmd_complete()
1784 return mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, in addr_cmd_complete()
1826 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, mgmt_err); in set_discoverable_complete()
1844 send_settings_rsp(cmd->sk, MGMT_OP_SET_DISCOVERABLE, hdev); in set_discoverable_complete()
1847 new_settings(hdev, cmd->sk); in set_discoverable_complete()
1866 static int set_discoverable(struct sock *sk, struct hci_dev *hdev, void *data, in set_discoverable() argument
1880 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DISCOVERABLE, in set_discoverable()
1884 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DISCOVERABLE, in set_discoverable()
1894 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DISCOVERABLE, in set_discoverable()
1900 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DISCOVERABLE, in set_discoverable()
1907 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DISCOVERABLE, in set_discoverable()
1913 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DISCOVERABLE, in set_discoverable()
1930 err = send_settings_rsp(sk, MGMT_OP_SET_DISCOVERABLE, hdev); in set_discoverable()
1935 err = new_settings(hdev, sk); in set_discoverable()
1956 err = send_settings_rsp(sk, MGMT_OP_SET_DISCOVERABLE, hdev); in set_discoverable()
1960 cmd = mgmt_pending_add(sk, MGMT_OP_SET_DISCOVERABLE, hdev, data, len); in set_discoverable()
2083 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, mgmt_err); in set_connectable_complete()
2099 send_settings_rsp(cmd->sk, MGMT_OP_SET_CONNECTABLE, hdev); in set_connectable_complete()
2102 new_settings(hdev, cmd->sk); in set_connectable_complete()
2117 struct sock *sk, u8 val) in set_connectable_update_settings() argument
2132 err = send_settings_rsp(sk, MGMT_OP_SET_CONNECTABLE, hdev); in set_connectable_update_settings()
2139 return new_settings(hdev, sk); in set_connectable_update_settings()
2145 static int set_connectable(struct sock *sk, struct hci_dev *hdev, void *data, in set_connectable() argument
2158 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_CONNECTABLE, in set_connectable()
2162 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_CONNECTABLE, in set_connectable()
2168 err = set_connectable_update_settings(hdev, sk, cp->val); in set_connectable()
2174 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_CONNECTABLE, in set_connectable()
2179 cmd = mgmt_pending_add(sk, MGMT_OP_SET_CONNECTABLE, hdev, data, len); in set_connectable()
2232 err = set_connectable_update_settings(hdev, sk, in set_connectable()
2242 static int set_bondable(struct sock *sk, struct hci_dev *hdev, void *data, in set_bondable() argument
2252 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_BONDABLE, in set_bondable()
2262 err = send_settings_rsp(sk, MGMT_OP_SET_BONDABLE, hdev); in set_bondable()
2267 err = new_settings(hdev, sk); in set_bondable()
2274 static int set_link_security(struct sock *sk, struct hci_dev *hdev, void *data, in set_link_security() argument
2286 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_LINK_SECURITY, in set_link_security()
2290 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_LINK_SECURITY, in set_link_security()
2303 err = send_settings_rsp(sk, MGMT_OP_SET_LINK_SECURITY, hdev); in set_link_security()
2308 err = new_settings(hdev, sk); in set_link_security()
2314 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_LINK_SECURITY, in set_link_security()
2322 err = send_settings_rsp(sk, MGMT_OP_SET_LINK_SECURITY, hdev); in set_link_security()
2326 cmd = mgmt_pending_add(sk, MGMT_OP_SET_LINK_SECURITY, hdev, data, len); in set_link_security()
2343 static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len) in set_ssp() argument
2354 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SSP, status); in set_ssp()
2357 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SSP, in set_ssp()
2361 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SSP, in set_ssp()
2382 err = send_settings_rsp(sk, MGMT_OP_SET_SSP, hdev); in set_ssp()
2387 err = new_settings(hdev, sk); in set_ssp()
2393 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SSP, in set_ssp()
2399 err = send_settings_rsp(sk, MGMT_OP_SET_SSP, hdev); in set_ssp()
2403 cmd = mgmt_pending_add(sk, MGMT_OP_SET_SSP, hdev, data, len); in set_ssp()
2424 static int set_hs(struct sock *sk, struct hci_dev *hdev, void *data, u16 len) in set_hs() argument
2435 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, status); in set_hs()
2438 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, in set_hs()
2442 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, in set_hs()
2446 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, in set_hs()
2452 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, in set_hs()
2461 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_HS, in set_hs()
2469 err = send_settings_rsp(sk, MGMT_OP_SET_HS, hdev); in set_hs()
2474 err = new_settings(hdev, sk); in set_hs()
2497 new_settings(hdev, match.sk); in le_enable_complete()
2499 if (match.sk) in le_enable_complete()
2500 sock_put(match.sk); in le_enable_complete()
2521 static int set_le(struct sock *sk, struct hci_dev *hdev, void *data, u16 len) in set_le() argument
2533 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_LE, in set_le()
2537 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_LE, in set_le()
2551 return send_settings_rsp(sk, MGMT_OP_SET_LE, hdev); in set_le()
2553 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_LE, in set_le()
2578 err = send_settings_rsp(sk, MGMT_OP_SET_LE, hdev); in set_le()
2583 err = new_settings(hdev, sk); in set_le()
2590 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_LE, in set_le()
2595 cmd = mgmt_pending_add(sk, MGMT_OP_SET_LE, hdev, data, len); in set_le()
2677 mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, in mgmt_class_complete()
2693 static int add_uuid(struct sock *sk, struct hci_dev *hdev, void *data, u16 len) in add_uuid() argument
2706 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_UUID, in add_uuid()
2733 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_ADD_UUID, 0, in add_uuid()
2738 cmd = mgmt_pending_add(sk, MGMT_OP_ADD_UUID, hdev, data, len); in add_uuid()
2772 static int remove_uuid(struct sock *sk, struct hci_dev *hdev, void *data, in remove_uuid() argument
2787 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_REMOVE_UUID, in remove_uuid()
2796 err = mgmt_cmd_complete(sk, hdev->id, in remove_uuid()
2817 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_REMOVE_UUID, in remove_uuid()
2833 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_REMOVE_UUID, 0, in remove_uuid()
2838 cmd = mgmt_pending_add(sk, MGMT_OP_REMOVE_UUID, hdev, data, len); in remove_uuid()
2858 static int set_dev_class(struct sock *sk, struct hci_dev *hdev, void *data, in set_dev_class() argument
2869 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DEV_CLASS, in set_dev_class()
2875 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DEV_CLASS, in set_dev_class()
2881 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DEV_CLASS, in set_dev_class()
2890 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_DEV_CLASS, 0, in set_dev_class()
2911 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_DEV_CLASS, 0, in set_dev_class()
2916 cmd = mgmt_pending_add(sk, MGMT_OP_SET_DEV_CLASS, hdev, data, len); in set_dev_class()
2929 static int load_link_keys(struct sock *sk, struct hci_dev *hdev, void *data, in load_link_keys() argument
2942 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_LINK_KEYS, in load_link_keys()
2949 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_LINK_KEYS, in load_link_keys()
2958 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_LINK_KEYS, in load_link_keys()
2963 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_LINK_KEYS, in load_link_keys()
2973 return mgmt_cmd_status(sk, hdev->id, in load_link_keys()
3004 mgmt_cmd_complete(sk, hdev->id, MGMT_OP_LOAD_LINK_KEYS, 0, NULL, 0); in load_link_keys()
3023 static int unpair_device(struct sock *sk, struct hci_dev *hdev, void *data, in unpair_device() argument
3039 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_UNPAIR_DEVICE, in unpair_device()
3044 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_UNPAIR_DEVICE, in unpair_device()
3051 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_UNPAIR_DEVICE, in unpair_device()
3073 err = mgmt_cmd_complete(sk, hdev->id, in unpair_device()
3090 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_UNPAIR_DEVICE, in unpair_device()
3130 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_UNPAIR_DEVICE, 0, in unpair_device()
3132 device_unpaired(hdev, &cp->addr.bdaddr, cp->addr.type, sk); in unpair_device()
3136 cmd = mgmt_pending_add(sk, MGMT_OP_UNPAIR_DEVICE, hdev, cp, in unpair_device()
3154 static int disconnect(struct sock *sk, struct hci_dev *hdev, void *data, in disconnect() argument
3170 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_DISCONNECT, in disconnect()
3177 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_DISCONNECT, in disconnect()
3184 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_DISCONNECT, in disconnect()
3197 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_DISCONNECT, in disconnect()
3203 cmd = mgmt_pending_add(sk, MGMT_OP_DISCONNECT, hdev, data, len); in disconnect()
3239 static int get_connections(struct sock *sk, struct hci_dev *hdev, void *data, in get_connections() argument
3253 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_GET_CONNECTIONS, in get_connections()
3287 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CONNECTIONS, 0, rp, in get_connections()
3297 static int send_pin_code_neg_reply(struct sock *sk, struct hci_dev *hdev, in send_pin_code_neg_reply() argument
3303 cmd = mgmt_pending_add(sk, MGMT_OP_PIN_CODE_NEG_REPLY, hdev, cp, in send_pin_code_neg_reply()
3316 static int pin_code_reply(struct sock *sk, struct hci_dev *hdev, void *data, in pin_code_reply() argument
3330 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_PIN_CODE_REPLY, in pin_code_reply()
3337 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_PIN_CODE_REPLY, in pin_code_reply()
3349 err = send_pin_code_neg_reply(sk, hdev, &ncp); in pin_code_reply()
3351 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_PIN_CODE_REPLY, in pin_code_reply()
3357 cmd = mgmt_pending_add(sk, MGMT_OP_PIN_CODE_REPLY, hdev, data, len); in pin_code_reply()
3378 static int set_io_capability(struct sock *sk, struct hci_dev *hdev, void *data, in set_io_capability() argument
3386 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_IO_CAPABILITY, in set_io_capability()
3398 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_IO_CAPABILITY, 0, in set_io_capability()
3429 err = mgmt_cmd_complete(cmd->sk, cmd->index, MGMT_OP_PAIR_DEVICE, in pairing_complete()
3496 static int pair_device(struct sock *sk, struct hci_dev *hdev, void *data, in pair_device() argument
3513 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_PAIR_DEVICE, in pair_device()
3518 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_PAIR_DEVICE, in pair_device()
3525 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_PAIR_DEVICE, in pair_device()
3532 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_PAIR_DEVICE, in pair_device()
3580 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_PAIR_DEVICE, in pair_device()
3587 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_PAIR_DEVICE, in pair_device()
3592 cmd = mgmt_pending_add(sk, MGMT_OP_PAIR_DEVICE, hdev, data, len); in pair_device()
3628 static int cancel_pair_device(struct sock *sk, struct hci_dev *hdev, void *data, in cancel_pair_device() argument
3641 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_CANCEL_PAIR_DEVICE, in cancel_pair_device()
3648 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_CANCEL_PAIR_DEVICE, in cancel_pair_device()
3656 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_CANCEL_PAIR_DEVICE, in cancel_pair_device()
3664 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_CANCEL_PAIR_DEVICE, 0, in cancel_pair_device()
3671 static int user_pairing_resp(struct sock *sk, struct hci_dev *hdev, in user_pairing_resp() argument
3682 err = mgmt_cmd_complete(sk, hdev->id, mgmt_op, in user_pairing_resp()
3695 err = mgmt_cmd_complete(sk, hdev->id, mgmt_op, in user_pairing_resp()
3704 err = mgmt_cmd_complete(sk, hdev->id, mgmt_op, in user_pairing_resp()
3708 err = mgmt_cmd_complete(sk, hdev->id, mgmt_op, in user_pairing_resp()
3715 cmd = mgmt_pending_add(sk, mgmt_op, hdev, addr, sizeof(*addr)); in user_pairing_resp()
3742 static int pin_code_neg_reply(struct sock *sk, struct hci_dev *hdev, in pin_code_neg_reply() argument
3749 return user_pairing_resp(sk, hdev, &cp->addr, in pin_code_neg_reply()
3754 static int user_confirm_reply(struct sock *sk, struct hci_dev *hdev, void *data, in user_confirm_reply() argument
3762 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_USER_CONFIRM_REPLY, in user_confirm_reply()
3765 return user_pairing_resp(sk, hdev, &cp->addr, in user_confirm_reply()
3770 static int user_confirm_neg_reply(struct sock *sk, struct hci_dev *hdev, in user_confirm_neg_reply() argument
3777 return user_pairing_resp(sk, hdev, &cp->addr, in user_confirm_neg_reply()
3782 static int user_passkey_reply(struct sock *sk, struct hci_dev *hdev, void *data, in user_passkey_reply() argument
3789 return user_pairing_resp(sk, hdev, &cp->addr, in user_passkey_reply()
3794 static int user_passkey_neg_reply(struct sock *sk, struct hci_dev *hdev, in user_passkey_neg_reply() argument
3801 return user_pairing_resp(sk, hdev, &cp->addr, in user_passkey_neg_reply()
3832 mgmt_cmd_status(cmd->sk, hdev->id, MGMT_OP_SET_LOCAL_NAME, in set_name_complete()
3835 mgmt_cmd_complete(cmd->sk, hdev->id, MGMT_OP_SET_LOCAL_NAME, 0, in set_name_complete()
3844 static int set_local_name(struct sock *sk, struct hci_dev *hdev, void *data, in set_local_name() argument
3862 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_LOCAL_NAME, 0, in set_local_name()
3872 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_LOCAL_NAME, 0, in set_local_name()
3878 data, len, sk); in set_local_name()
3883 cmd = mgmt_pending_add(sk, MGMT_OP_SET_LOCAL_NAME, hdev, data, len); in set_local_name()
3927 mgmt_cmd_status(cmd->sk, hdev->id, MGMT_OP_READ_LOCAL_OOB_DATA, in read_local_oob_data_complete()
3938 mgmt_cmd_status(cmd->sk, hdev->id, in read_local_oob_data_complete()
3952 mgmt_cmd_status(cmd->sk, hdev->id, in read_local_oob_data_complete()
3965 mgmt_cmd_complete(cmd->sk, hdev->id, MGMT_OP_READ_LOCAL_OOB_DATA, in read_local_oob_data_complete()
3972 static int read_local_oob_data(struct sock *sk, struct hci_dev *hdev, in read_local_oob_data() argument
3984 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_READ_LOCAL_OOB_DATA, in read_local_oob_data()
3990 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_READ_LOCAL_OOB_DATA, in read_local_oob_data()
3996 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_READ_LOCAL_OOB_DATA, in read_local_oob_data()
4001 cmd = mgmt_pending_add(sk, MGMT_OP_READ_LOCAL_OOB_DATA, hdev, NULL, 0); in read_local_oob_data()
4023 static int add_remote_oob_data(struct sock *sk, struct hci_dev *hdev, in add_remote_oob_data() argument
4032 return mgmt_cmd_complete(sk, hdev->id, in add_remote_oob_data()
4044 err = mgmt_cmd_complete(sk, hdev->id, in add_remote_oob_data()
4059 err = mgmt_cmd_complete(sk, hdev->id, in add_remote_oob_data()
4073 err = mgmt_cmd_complete(sk, hdev->id, in add_remote_oob_data()
4116 err = mgmt_cmd_complete(sk, hdev->id, in add_remote_oob_data()
4121 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_REMOTE_OOB_DATA, in add_remote_oob_data()
4130 static int remove_remote_oob_data(struct sock *sk, struct hci_dev *hdev, in remove_remote_oob_data() argument
4140 return mgmt_cmd_complete(sk, hdev->id, in remove_remote_oob_data()
4160 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_REMOVE_REMOTE_OOB_DATA, in remove_remote_oob_data()
4378 static int start_discovery(struct sock *sk, struct hci_dev *hdev, in start_discovery() argument
4392 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_START_DISCOVERY, in start_discovery()
4400 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_START_DISCOVERY, in start_discovery()
4406 cmd = mgmt_pending_add(sk, MGMT_OP_START_DISCOVERY, hdev, data, len); in start_discovery()
4425 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_START_DISCOVERY, in start_discovery()
4447 return mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, in service_discovery_cmd_complete()
4451 static int start_service_discovery(struct sock *sk, struct hci_dev *hdev, in start_service_discovery() argument
4467 err = mgmt_cmd_complete(sk, hdev->id, in start_service_discovery()
4476 err = mgmt_cmd_complete(sk, hdev->id, in start_service_discovery()
4487 err = mgmt_cmd_complete(sk, hdev->id, in start_service_discovery()
4498 err = mgmt_cmd_complete(sk, hdev->id, in start_service_discovery()
4505 cmd = mgmt_pending_add(sk, MGMT_OP_START_SERVICE_DISCOVERY, in start_service_discovery()
4528 err = mgmt_cmd_complete(sk, hdev->id, in start_service_discovery()
4540 err = mgmt_cmd_complete(sk, hdev->id, in start_service_discovery()
4580 static int stop_discovery(struct sock *sk, struct hci_dev *hdev, void *data, in stop_discovery() argument
4593 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_STOP_DISCOVERY, in stop_discovery()
4600 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_STOP_DISCOVERY, in stop_discovery()
4606 cmd = mgmt_pending_add(sk, MGMT_OP_STOP_DISCOVERY, hdev, data, len); in stop_discovery()
4628 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_STOP_DISCOVERY, 0, in stop_discovery()
4638 static int confirm_name(struct sock *sk, struct hci_dev *hdev, void *data, in confirm_name() argument
4650 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_CONFIRM_NAME, in confirm_name()
4658 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_CONFIRM_NAME, in confirm_name()
4672 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_CONFIRM_NAME, 0, in confirm_name()
4680 static int block_device(struct sock *sk, struct hci_dev *hdev, void *data, in block_device() argument
4690 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_BLOCK_DEVICE, in block_device()
4704 sk); in block_device()
4708 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_BLOCK_DEVICE, status, in block_device()
4716 static int unblock_device(struct sock *sk, struct hci_dev *hdev, void *data, in unblock_device() argument
4726 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_UNBLOCK_DEVICE, in unblock_device()
4740 sk); in unblock_device()
4744 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_UNBLOCK_DEVICE, status, in unblock_device()
4752 static int set_device_id(struct sock *sk, struct hci_dev *hdev, void *data, in set_device_id() argument
4765 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DEVICE_ID, in set_device_id()
4775 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_DEVICE_ID, 0, in set_device_id()
4820 new_settings(hdev, match.sk); in set_advertising_complete()
4822 if (match.sk) in set_advertising_complete()
4823 sock_put(match.sk); in set_advertising_complete()
4857 static int set_advertising(struct sock *sk, struct hci_dev *hdev, void *data, in set_advertising() argument
4870 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_ADVERTISING, in set_advertising()
4874 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_ADVERTISING, in set_advertising()
4905 err = send_settings_rsp(sk, MGMT_OP_SET_ADVERTISING, hdev); in set_advertising()
4910 err = new_settings(hdev, sk); in set_advertising()
4917 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_ADVERTISING, in set_advertising()
4922 cmd = mgmt_pending_add(sk, MGMT_OP_SET_ADVERTISING, hdev, data, len); in set_advertising()
4958 static int set_static_address(struct sock *sk, struct hci_dev *hdev, in set_static_address() argument
4967 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_STATIC_ADDRESS, in set_static_address()
4971 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_STATIC_ADDRESS, in set_static_address()
4976 return mgmt_cmd_status(sk, hdev->id, in set_static_address()
4982 return mgmt_cmd_status(sk, hdev->id, in set_static_address()
4991 err = send_settings_rsp(sk, MGMT_OP_SET_STATIC_ADDRESS, hdev); in set_static_address()
4995 err = new_settings(hdev, sk); in set_static_address()
5002 static int set_scan_params(struct sock *sk, struct hci_dev *hdev, in set_scan_params() argument
5012 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SCAN_PARAMS, in set_scan_params()
5018 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SCAN_PARAMS, in set_scan_params()
5024 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SCAN_PARAMS, in set_scan_params()
5028 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SCAN_PARAMS, in set_scan_params()
5036 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_SET_SCAN_PARAMS, 0, in set_scan_params()
5073 mgmt_cmd_status(cmd->sk, hdev->id, MGMT_OP_SET_FAST_CONNECTABLE, in fast_connectable_complete()
5083 send_settings_rsp(cmd->sk, MGMT_OP_SET_FAST_CONNECTABLE, hdev); in fast_connectable_complete()
5084 new_settings(hdev, cmd->sk); in fast_connectable_complete()
5093 static int set_fast_connectable(struct sock *sk, struct hci_dev *hdev, in set_fast_connectable() argument
5105 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_FAST_CONNECTABLE, in set_fast_connectable()
5109 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_FAST_CONNECTABLE, in set_fast_connectable()
5115 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_FAST_CONNECTABLE, in set_fast_connectable()
5121 err = send_settings_rsp(sk, MGMT_OP_SET_FAST_CONNECTABLE, in set_fast_connectable()
5128 err = send_settings_rsp(sk, MGMT_OP_SET_FAST_CONNECTABLE, in set_fast_connectable()
5130 new_settings(hdev, sk); in set_fast_connectable()
5134 cmd = mgmt_pending_add(sk, MGMT_OP_SET_FAST_CONNECTABLE, hdev, in set_fast_connectable()
5147 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_FAST_CONNECTABLE, in set_fast_connectable()
5178 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, mgmt_err); in set_bredr_complete()
5180 send_settings_rsp(cmd->sk, MGMT_OP_SET_BREDR, hdev); in set_bredr_complete()
5181 new_settings(hdev, cmd->sk); in set_bredr_complete()
5190 static int set_bredr(struct sock *sk, struct hci_dev *hdev, void *data, u16 len) in set_bredr() argument
5200 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_BREDR, in set_bredr()
5204 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_BREDR, in set_bredr()
5208 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_BREDR, in set_bredr()
5214 err = send_settings_rsp(sk, MGMT_OP_SET_BREDR, hdev); in set_bredr()
5229 err = send_settings_rsp(sk, MGMT_OP_SET_BREDR, hdev); in set_bredr()
5233 err = new_settings(hdev, sk); in set_bredr()
5239 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_BREDR, in set_bredr()
5260 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_BREDR, in set_bredr()
5267 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_BREDR, in set_bredr()
5272 cmd = mgmt_pending_add(sk, MGMT_OP_SET_BREDR, hdev, data, len); in set_bredr()
5316 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, in sc_enable_complete()
5338 send_settings_rsp(cmd->sk, MGMT_OP_SET_SECURE_CONN, hdev); in sc_enable_complete()
5339 new_settings(hdev, cmd->sk); in sc_enable_complete()
5347 static int set_secure_conn(struct sock *sk, struct hci_dev *hdev, in set_secure_conn() argument
5360 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SECURE_CONN, in set_secure_conn()
5366 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SECURE_CONN, in set_secure_conn()
5370 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SECURE_CONN, in set_secure_conn()
5392 err = send_settings_rsp(sk, MGMT_OP_SET_SECURE_CONN, hdev); in set_secure_conn()
5397 err = new_settings(hdev, sk); in set_secure_conn()
5403 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_SECURE_CONN, in set_secure_conn()
5412 err = send_settings_rsp(sk, MGMT_OP_SET_SECURE_CONN, hdev); in set_secure_conn()
5416 cmd = mgmt_pending_add(sk, MGMT_OP_SET_SECURE_CONN, hdev, data, len); in set_secure_conn()
5435 static int set_debug_keys(struct sock *sk, struct hci_dev *hdev, in set_debug_keys() argument
5445 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_DEBUG_KEYS, in set_debug_keys()
5470 err = send_settings_rsp(sk, MGMT_OP_SET_DEBUG_KEYS, hdev); in set_debug_keys()
5475 err = new_settings(hdev, sk); in set_debug_keys()
5482 static int set_privacy(struct sock *sk, struct hci_dev *hdev, void *cp_data, in set_privacy() argument
5492 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_PRIVACY, in set_privacy()
5496 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_PRIVACY, in set_privacy()
5500 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_PRIVACY, in set_privacy()
5520 err = send_settings_rsp(sk, MGMT_OP_SET_PRIVACY, hdev); in set_privacy()
5525 err = new_settings(hdev, sk); in set_privacy()
5548 static int load_irks(struct sock *sk, struct hci_dev *hdev, void *cp_data, in load_irks() argument
5560 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_IRKS, in load_irks()
5566 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_IRKS, in load_irks()
5574 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_IRKS, in load_irks()
5584 return mgmt_cmd_status(sk, hdev->id, in load_irks()
5603 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_LOAD_IRKS, 0, NULL, 0); in load_irks()
5629 static int load_long_term_keys(struct sock *sk, struct hci_dev *hdev, in load_long_term_keys() argument
5641 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_LONG_TERM_KEYS, in load_long_term_keys()
5647 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_LONG_TERM_KEYS, in load_long_term_keys()
5656 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_LONG_TERM_KEYS, in load_long_term_keys()
5666 return mgmt_cmd_status(sk, hdev->id, in load_long_term_keys()
5708 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_LOAD_LONG_TERM_KEYS, 0, in load_long_term_keys()
5734 err = mgmt_cmd_complete(cmd->sk, cmd->index, MGMT_OP_GET_CONN_INFO, in conn_info_cmd_complete()
5796 static int get_conn_info(struct sock *sk, struct hci_dev *hdev, void *data, in get_conn_info() argument
5812 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CONN_INFO, in get_conn_info()
5819 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CONN_INFO, in get_conn_info()
5832 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CONN_INFO, in get_conn_info()
5839 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CONN_INFO, in get_conn_info()
5890 cmd = mgmt_pending_add(sk, MGMT_OP_GET_CONN_INFO, hdev, in get_conn_info()
5908 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CONN_INFO, in get_conn_info()
5942 err = mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, &rp, in clock_info_cmd_complete()
5985 static int get_clock_info(struct sock *sk, struct hci_dev *hdev, void *data, in get_clock_info() argument
6003 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CLOCK_INFO, in get_clock_info()
6010 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_GET_CLOCK_INFO, in get_clock_info()
6020 err = mgmt_cmd_complete(sk, hdev->id, in get_clock_info()
6030 cmd = mgmt_pending_add(sk, MGMT_OP_GET_CLOCK_INFO, hdev, data, len); in get_clock_info()
6133 static void device_added(struct sock *sk, struct hci_dev *hdev, in device_added() argument
6142 mgmt_event(MGMT_EV_DEVICE_ADDED, hdev, &ev, sizeof(ev), sk); in device_added()
6164 static int add_device(struct sock *sk, struct hci_dev *hdev, in add_device() argument
6177 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_ADD_DEVICE, in add_device()
6182 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_ADD_DEVICE, in add_device()
6190 cmd = mgmt_pending_add(sk, MGMT_OP_ADD_DEVICE, hdev, data, len); in add_device()
6248 device_added(sk, hdev, &cp->addr.bdaddr, cp->addr.type, cp->action); in add_device()
6265 static void device_removed(struct sock *sk, struct hci_dev *hdev, in device_removed() argument
6273 mgmt_event(MGMT_EV_DEVICE_REMOVED, hdev, &ev, sizeof(ev), sk); in device_removed()
6295 static int remove_device(struct sock *sk, struct hci_dev *hdev, in remove_device() argument
6309 cmd = mgmt_pending_add(sk, MGMT_OP_REMOVE_DEVICE, hdev, data, len); in remove_device()
6341 device_removed(sk, hdev, &cp->addr.bdaddr, in remove_device()
6382 device_removed(sk, hdev, &cp->addr.bdaddr, cp->addr.type); in remove_device()
6395 device_removed(sk, hdev, &b->bdaddr, b->bdaddr_type); in remove_device()
6405 device_removed(sk, hdev, &p->addr, p->addr_type); in remove_device()
6436 static int load_conn_param(struct sock *sk, struct hci_dev *hdev, void *data, in load_conn_param() argument
6446 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_CONN_PARAM, in load_conn_param()
6453 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_CONN_PARAM, in load_conn_param()
6462 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_LOAD_CONN_PARAM, in load_conn_param()
6518 return mgmt_cmd_complete(sk, hdev->id, MGMT_OP_LOAD_CONN_PARAM, 0, in load_conn_param()
6522 static int set_external_config(struct sock *sk, struct hci_dev *hdev, in set_external_config() argument
6532 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_EXTERNAL_CONFIG, in set_external_config()
6536 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_EXTERNAL_CONFIG, in set_external_config()
6540 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_EXTERNAL_CONFIG, in set_external_config()
6550 err = send_options_rsp(sk, MGMT_OP_SET_EXTERNAL_CONFIG, hdev); in set_external_config()
6557 err = new_options(hdev, sk); in set_external_config()
6578 static int set_public_address(struct sock *sk, struct hci_dev *hdev, in set_public_address() argument
6588 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_PUBLIC_ADDRESS, in set_public_address()
6592 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_PUBLIC_ADDRESS, in set_public_address()
6596 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_SET_PUBLIC_ADDRESS, in set_public_address()
6604 err = send_options_rsp(sk, MGMT_OP_SET_PUBLIC_ADDRESS, hdev); in set_public_address()
6612 err = new_options(hdev, sk); in set_public_address()
6736 err = mgmt_cmd_complete(cmd->sk, hdev->id, in read_local_oob_ext_data_complete()
6742 hci_sock_set_flag(cmd->sk, HCI_MGMT_OOB_DATA_EVENTS); in read_local_oob_ext_data_complete()
6746 HCI_MGMT_OOB_DATA_EVENTS, cmd->sk); in read_local_oob_ext_data_complete()
6752 static int read_local_ssp_oob_req(struct hci_dev *hdev, struct sock *sk, in read_local_ssp_oob_req() argument
6759 cmd = mgmt_pending_add(sk, MGMT_OP_READ_LOCAL_OOB_EXT_DATA, hdev, in read_local_ssp_oob_req()
6780 static int read_local_oob_ext_data(struct sock *sk, struct hci_dev *hdev, in read_local_oob_ext_data() argument
6832 err = read_local_ssp_oob_req(hdev, sk, cp); in read_local_oob_ext_data()
6913 hci_sock_set_flag(sk, HCI_MGMT_OOB_DATA_EVENTS); in read_local_oob_ext_data()
6921 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_READ_LOCAL_OOB_EXT_DATA, in read_local_oob_ext_data()
6928 HCI_MGMT_OOB_DATA_EVENTS, sk); in read_local_oob_ext_data()
6951 static int read_adv_features(struct sock *sk, struct hci_dev *hdev, in read_adv_features() argument
6964 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_READ_ADV_FEATURES, in read_adv_features()
7004 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_READ_ADV_FEATURES, in read_adv_features()
7088 advertising_removed(cmd ? cmd->sk : NULL, hdev, instance); in add_advertising_complete()
7098 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, in add_advertising_complete()
7101 mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, in add_advertising_complete()
7135 static int add_advertising(struct sock *sk, struct hci_dev *hdev, in add_advertising() argument
7155 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7159 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7171 return mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7177 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7185 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7193 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7204 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7213 advertising_added(sk, hdev, cp->instance); in add_advertising()
7243 err = mgmt_cmd_complete(sk, hdev->id, MGMT_OP_ADD_ADVERTISING, in add_advertising()
7251 cmd = mgmt_pending_add(sk, MGMT_OP_ADD_ADVERTISING, hdev, data, in add_advertising()
7296 mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, MGMT_STATUS_SUCCESS, in remove_advertising_complete()
7304 static int remove_advertising(struct sock *sk, struct hci_dev *hdev, in remove_advertising() argument
7318 err = mgmt_cmd_status(sk, hdev->id, in remove_advertising()
7327 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_REMOVE_ADVERTISING, in remove_advertising()
7333 err = mgmt_cmd_status(sk, hdev->id, MGMT_OP_REMOVE_ADVERTISING, in remove_advertising()
7353 err = mgmt_cmd_complete(sk, hdev->id, in remove_advertising()
7359 cmd = mgmt_pending_add(sk, MGMT_OP_REMOVE_ADVERTISING, hdev, data, in remove_advertising()
7579 new_settings(hdev, match.sk); in powered_complete()
7583 if (match.sk) in powered_complete()
7584 sock_put(match.sk); in powered_complete()
7713 err = new_settings(hdev, match.sk); in mgmt_powered()
7715 if (match.sk) in mgmt_powered()
7716 sock_put(match.sk); in mgmt_powered()
7735 mgmt_cmd_status(cmd->sk, hdev->id, MGMT_OP_SET_POWERED, status); in mgmt_set_powered_failed()
7962 struct sock **sk = data; in disconnect_rsp() local
7966 *sk = cmd->sk; in disconnect_rsp()
7967 sock_hold(*sk); in disconnect_rsp()
7977 device_unpaired(hdev, &cp->addr.bdaddr, cp->addr.type, cmd->sk); in unpair_device_rsp()
8004 struct sock *sk = NULL; in mgmt_device_disconnected() local
8020 mgmt_pending_foreach(MGMT_OP_DISCONNECT, hdev, disconnect_rsp, &sk); in mgmt_device_disconnected()
8026 mgmt_event(MGMT_EV_DEVICE_DISCONNECTED, hdev, &ev, sizeof(ev), sk); in mgmt_device_disconnected()
8028 if (sk) in mgmt_device_disconnected()
8029 sock_put(sk); in mgmt_device_disconnected()
8224 cmd ? cmd->sk : NULL); in mgmt_auth_failed()
8253 new_settings(hdev, match.sk); in mgmt_auth_enable_complete()
8255 if (match.sk) in mgmt_auth_enable_complete()
8256 sock_put(match.sk); in mgmt_auth_enable_complete()
8308 new_settings(hdev, match.sk); in mgmt_ssp_enable_complete()
8310 if (match.sk) in mgmt_ssp_enable_complete()
8311 sock_put(match.sk); in mgmt_ssp_enable_complete()
8331 if (match->sk == NULL) { in sk_lookup()
8332 match->sk = cmd->sk; in sk_lookup()
8333 sock_hold(match->sk); in sk_lookup()
8350 if (match.sk) in mgmt_set_class_of_dev_complete()
8351 sock_put(match.sk); in mgmt_set_class_of_dev_complete()
8378 cmd ? cmd->sk : NULL); in mgmt_set_local_name_complete()