Lines Matching refs:cmd

936 	struct mgmt_pending_cmd *cmd;  in get_adv_discov_flags()  local
941 cmd = pending_find(MGMT_OP_SET_DISCOVERABLE, hdev); in get_adv_discov_flags()
942 if (cmd) { in get_adv_discov_flags()
943 struct mgmt_mode *cp = cmd->param; in get_adv_discov_flags()
960 struct mgmt_pending_cmd *cmd; in get_connectable() local
965 cmd = pending_find(MGMT_OP_SET_CONNECTABLE, hdev); in get_connectable()
966 if (cmd) { in get_connectable()
967 struct mgmt_mode *cp = cmd->param; in get_connectable()
1657 struct mgmt_pending_cmd *cmd; in set_powered() local
1690 cmd = mgmt_pending_add(sk, MGMT_OP_SET_POWERED, hdev, data, len); in set_powered()
1691 if (!cmd) { in set_powered()
1738 static void settings_rsp(struct mgmt_pending_cmd *cmd, void *data) in settings_rsp() argument
1742 send_settings_rsp(cmd->sk, cmd->opcode, match->hdev); in settings_rsp()
1744 list_del(&cmd->list); in settings_rsp()
1747 match->sk = cmd->sk; in settings_rsp()
1751 mgmt_pending_free(cmd); in settings_rsp()
1754 static void cmd_status_rsp(struct mgmt_pending_cmd *cmd, void *data) in cmd_status_rsp() argument
1758 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, *status); in cmd_status_rsp()
1759 mgmt_pending_remove(cmd); in cmd_status_rsp()
1762 static void cmd_complete_rsp(struct mgmt_pending_cmd *cmd, void *data) in cmd_complete_rsp() argument
1764 if (cmd->cmd_complete) { in cmd_complete_rsp()
1767 cmd->cmd_complete(cmd, *status); in cmd_complete_rsp()
1768 mgmt_pending_remove(cmd); in cmd_complete_rsp()
1773 cmd_status_rsp(cmd, data); in cmd_complete_rsp()
1776 static int generic_cmd_complete(struct mgmt_pending_cmd *cmd, u8 status) in generic_cmd_complete() argument
1778 return mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, in generic_cmd_complete()
1779 cmd->param, cmd->param_len); in generic_cmd_complete()
1782 static int addr_cmd_complete(struct mgmt_pending_cmd *cmd, u8 status) in addr_cmd_complete() argument
1784 return mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, in addr_cmd_complete()
1785 cmd->param, sizeof(struct mgmt_addr_info)); in addr_cmd_complete()
1811 struct mgmt_pending_cmd *cmd; in set_discoverable_complete() local
1820 cmd = pending_find(MGMT_OP_SET_DISCOVERABLE, hdev); in set_discoverable_complete()
1821 if (!cmd) in set_discoverable_complete()
1826 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, mgmt_err); in set_discoverable_complete()
1831 cp = cmd->param; 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()
1860 mgmt_pending_remove(cmd); in set_discoverable_complete()
1870 struct mgmt_pending_cmd *cmd; in set_discoverable() local
1960 cmd = mgmt_pending_add(sk, MGMT_OP_SET_DISCOVERABLE, hdev, data, len); in set_discoverable()
1961 if (!cmd) { in set_discoverable()
2024 mgmt_pending_remove(cmd); in set_discoverable()
2069 struct mgmt_pending_cmd *cmd; in set_connectable_complete() local
2077 cmd = pending_find(MGMT_OP_SET_CONNECTABLE, hdev); in set_connectable_complete()
2078 if (!cmd) in set_connectable_complete()
2083 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, mgmt_err); in set_connectable_complete()
2087 cp = cmd->param; 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()
2110 mgmt_pending_remove(cmd); in set_connectable_complete()
2149 struct mgmt_pending_cmd *cmd; in set_connectable() local
2179 cmd = mgmt_pending_add(sk, MGMT_OP_SET_CONNECTABLE, hdev, data, len); in set_connectable()
2180 if (!cmd) { in set_connectable()
2230 mgmt_pending_remove(cmd); in set_connectable()
2278 struct mgmt_pending_cmd *cmd; in set_link_security() local
2326 cmd = mgmt_pending_add(sk, MGMT_OP_SET_LINK_SECURITY, hdev, data, len); in set_link_security()
2327 if (!cmd) { in set_link_security()
2334 mgmt_pending_remove(cmd); in set_link_security()
2346 struct mgmt_pending_cmd *cmd; in set_ssp() local
2403 cmd = mgmt_pending_add(sk, MGMT_OP_SET_SSP, hdev, data, len); in set_ssp()
2404 if (!cmd) { in set_ssp()
2415 mgmt_pending_remove(cmd); in set_ssp()
2525 struct mgmt_pending_cmd *cmd; in set_le() local
2595 cmd = mgmt_pending_add(sk, MGMT_OP_SET_LE, hdev, data, len); in set_le()
2596 if (!cmd) { in set_le()
2618 mgmt_pending_remove(cmd); in set_le()
2633 struct mgmt_pending_cmd *cmd; in pending_eir_or_class() local
2635 list_for_each_entry(cmd, &hdev->mgmt_pending, list) { in pending_eir_or_class()
2636 switch (cmd->opcode) { in pending_eir_or_class()
2669 struct mgmt_pending_cmd *cmd; in mgmt_class_complete() local
2673 cmd = pending_find(mgmt_op, hdev); in mgmt_class_complete()
2674 if (!cmd) in mgmt_class_complete()
2677 mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, in mgmt_class_complete()
2680 mgmt_pending_remove(cmd); in mgmt_class_complete()
2696 struct mgmt_pending_cmd *cmd; in add_uuid() local
2738 cmd = mgmt_pending_add(sk, MGMT_OP_ADD_UUID, hdev, data, len); in add_uuid()
2739 if (!cmd) { in add_uuid()
2776 struct mgmt_pending_cmd *cmd; in remove_uuid() local
2838 cmd = mgmt_pending_add(sk, MGMT_OP_REMOVE_UUID, hdev, data, len); in remove_uuid()
2839 if (!cmd) { in remove_uuid()
2862 struct mgmt_pending_cmd *cmd; in set_dev_class() local
2916 cmd = mgmt_pending_add(sk, MGMT_OP_SET_DEV_CLASS, hdev, data, len); in set_dev_class()
2917 if (!cmd) { in set_dev_class()
3029 struct mgmt_pending_cmd *cmd; in unpair_device() local
3136 cmd = mgmt_pending_add(sk, MGMT_OP_UNPAIR_DEVICE, hdev, cp, in unpair_device()
3138 if (!cmd) { in unpair_device()
3143 cmd->cmd_complete = addr_cmd_complete; in unpair_device()
3147 mgmt_pending_remove(cmd); in unpair_device()
3159 struct mgmt_pending_cmd *cmd; in disconnect() local
3203 cmd = mgmt_pending_add(sk, MGMT_OP_DISCONNECT, hdev, data, len); in disconnect()
3204 if (!cmd) { in disconnect()
3209 cmd->cmd_complete = generic_cmd_complete; in disconnect()
3213 mgmt_pending_remove(cmd); in disconnect()
3300 struct mgmt_pending_cmd *cmd; in send_pin_code_neg_reply() local
3303 cmd = mgmt_pending_add(sk, MGMT_OP_PIN_CODE_NEG_REPLY, hdev, cp, in send_pin_code_neg_reply()
3305 if (!cmd) in send_pin_code_neg_reply()
3311 mgmt_pending_remove(cmd); in send_pin_code_neg_reply()
3322 struct mgmt_pending_cmd *cmd; in pin_code_reply() local
3357 cmd = mgmt_pending_add(sk, MGMT_OP_PIN_CODE_REPLY, hdev, data, len); in pin_code_reply()
3358 if (!cmd) { in pin_code_reply()
3363 cmd->cmd_complete = addr_cmd_complete; in pin_code_reply()
3371 mgmt_pending_remove(cmd); in pin_code_reply()
3405 struct mgmt_pending_cmd *cmd; in find_pairing() local
3407 list_for_each_entry(cmd, &hdev->mgmt_pending, list) { in find_pairing()
3408 if (cmd->opcode != MGMT_OP_PAIR_DEVICE) in find_pairing()
3411 if (cmd->user_data != conn) in find_pairing()
3414 return cmd; in find_pairing()
3420 static int pairing_complete(struct mgmt_pending_cmd *cmd, u8 status) in pairing_complete() argument
3423 struct hci_conn *conn = cmd->user_data; in pairing_complete()
3429 err = mgmt_cmd_complete(cmd->sk, cmd->index, MGMT_OP_PAIR_DEVICE, in pairing_complete()
3452 struct mgmt_pending_cmd *cmd; in mgmt_smp_complete() local
3454 cmd = find_pairing(conn); in mgmt_smp_complete()
3455 if (cmd) { in mgmt_smp_complete()
3456 cmd->cmd_complete(cmd, status); in mgmt_smp_complete()
3457 mgmt_pending_remove(cmd); in mgmt_smp_complete()
3463 struct mgmt_pending_cmd *cmd; in pairing_complete_cb() local
3467 cmd = find_pairing(conn); in pairing_complete_cb()
3468 if (!cmd) { in pairing_complete_cb()
3473 cmd->cmd_complete(cmd, mgmt_status(status)); in pairing_complete_cb()
3474 mgmt_pending_remove(cmd); in pairing_complete_cb()
3479 struct mgmt_pending_cmd *cmd; in le_pairing_complete_cb() local
3486 cmd = find_pairing(conn); in le_pairing_complete_cb()
3487 if (!cmd) { in le_pairing_complete_cb()
3492 cmd->cmd_complete(cmd, mgmt_status(status)); in le_pairing_complete_cb()
3493 mgmt_pending_remove(cmd); in le_pairing_complete_cb()
3501 struct mgmt_pending_cmd *cmd; in pair_device() local
3592 cmd = mgmt_pending_add(sk, MGMT_OP_PAIR_DEVICE, hdev, data, len); in pair_device()
3593 if (!cmd) { in pair_device()
3599 cmd->cmd_complete = pairing_complete; in pair_device()
3613 cmd->user_data = hci_conn_get(conn); in pair_device()
3617 cmd->cmd_complete(cmd, 0); in pair_device()
3618 mgmt_pending_remove(cmd); in pair_device()
3632 struct mgmt_pending_cmd *cmd; in cancel_pair_device() local
3646 cmd = pending_find(MGMT_OP_PAIR_DEVICE, hdev); in cancel_pair_device()
3647 if (!cmd) { in cancel_pair_device()
3653 conn = cmd->user_data; in cancel_pair_device()
3661 cmd->cmd_complete(cmd, MGMT_STATUS_CANCELLED); in cancel_pair_device()
3662 mgmt_pending_remove(cmd); in cancel_pair_device()
3675 struct mgmt_pending_cmd *cmd; in user_pairing_resp() local
3715 cmd = mgmt_pending_add(sk, mgmt_op, hdev, addr, sizeof(*addr)); in user_pairing_resp()
3716 if (!cmd) { in user_pairing_resp()
3721 cmd->cmd_complete = addr_cmd_complete; in user_pairing_resp()
3735 mgmt_pending_remove(cmd); in user_pairing_resp()
3819 struct mgmt_pending_cmd *cmd; in set_name_complete() local
3825 cmd = pending_find(MGMT_OP_SET_LOCAL_NAME, hdev); in set_name_complete()
3826 if (!cmd) in set_name_complete()
3829 cp = cmd->param; in set_name_complete()
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()
3838 mgmt_pending_remove(cmd); in set_name_complete()
3848 struct mgmt_pending_cmd *cmd; in set_local_name() local
3883 cmd = mgmt_pending_add(sk, MGMT_OP_SET_LOCAL_NAME, hdev, data, len); in set_local_name()
3884 if (!cmd) { in set_local_name()
3906 mgmt_pending_remove(cmd); in set_local_name()
3918 struct mgmt_pending_cmd *cmd; in read_local_oob_data_complete() local
3922 cmd = pending_find(MGMT_OP_READ_LOCAL_OOB_DATA, hdev); in read_local_oob_data_complete()
3923 if (!cmd) in read_local_oob_data_complete()
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()
3969 mgmt_pending_remove(cmd); in read_local_oob_data_complete()
3975 struct mgmt_pending_cmd *cmd; in read_local_oob_data() local
4001 cmd = mgmt_pending_add(sk, MGMT_OP_READ_LOCAL_OOB_DATA, hdev, NULL, 0); in read_local_oob_data()
4002 if (!cmd) { in read_local_oob_data()
4016 mgmt_pending_remove(cmd); in read_local_oob_data()
4304 struct mgmt_pending_cmd *cmd; in start_discovery_complete() local
4311 cmd = pending_find(MGMT_OP_START_DISCOVERY, hdev); in start_discovery_complete()
4312 if (!cmd) in start_discovery_complete()
4313 cmd = pending_find(MGMT_OP_START_SERVICE_DISCOVERY, hdev); in start_discovery_complete()
4315 if (cmd) { in start_discovery_complete()
4316 cmd->cmd_complete(cmd, mgmt_status(status)); in start_discovery_complete()
4317 mgmt_pending_remove(cmd); in start_discovery_complete()
4382 struct mgmt_pending_cmd *cmd; in start_discovery() local
4406 cmd = mgmt_pending_add(sk, MGMT_OP_START_DISCOVERY, hdev, data, len); in start_discovery()
4407 if (!cmd) { in start_discovery()
4412 cmd->cmd_complete = generic_cmd_complete; in start_discovery()
4427 mgmt_pending_remove(cmd); in start_discovery()
4433 mgmt_pending_remove(cmd); in start_discovery()
4444 static int service_discovery_cmd_complete(struct mgmt_pending_cmd *cmd, in service_discovery_cmd_complete() argument
4447 return mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, in service_discovery_cmd_complete()
4448 cmd->param, 1); in service_discovery_cmd_complete()
4455 struct mgmt_pending_cmd *cmd; in start_service_discovery() local
4505 cmd = mgmt_pending_add(sk, MGMT_OP_START_SERVICE_DISCOVERY, in start_service_discovery()
4507 if (!cmd) { in start_service_discovery()
4512 cmd->cmd_complete = service_discovery_cmd_complete; in start_service_discovery()
4532 mgmt_pending_remove(cmd); in start_service_discovery()
4543 mgmt_pending_remove(cmd); in start_service_discovery()
4549 mgmt_pending_remove(cmd); in start_service_discovery()
4562 struct mgmt_pending_cmd *cmd; in stop_discovery_complete() local
4568 cmd = pending_find(MGMT_OP_STOP_DISCOVERY, hdev); in stop_discovery_complete()
4569 if (cmd) { in stop_discovery_complete()
4570 cmd->cmd_complete(cmd, mgmt_status(status)); in stop_discovery_complete()
4571 mgmt_pending_remove(cmd); in stop_discovery_complete()
4584 struct mgmt_pending_cmd *cmd; in stop_discovery() local
4606 cmd = mgmt_pending_add(sk, MGMT_OP_STOP_DISCOVERY, hdev, data, len); in stop_discovery()
4607 if (!cmd) { in stop_discovery()
4612 cmd->cmd_complete = generic_cmd_complete; in stop_discovery()
4624 mgmt_pending_remove(cmd); in stop_discovery()
4861 struct mgmt_pending_cmd *cmd; in set_advertising() local
4922 cmd = mgmt_pending_add(sk, MGMT_OP_SET_ADVERTISING, hdev, data, len); in set_advertising()
4923 if (!cmd) { in set_advertising()
4951 mgmt_pending_remove(cmd); in set_advertising()
5062 struct mgmt_pending_cmd *cmd; in fast_connectable_complete() local
5068 cmd = pending_find(MGMT_OP_SET_FAST_CONNECTABLE, hdev); in fast_connectable_complete()
5069 if (!cmd) in fast_connectable_complete()
5073 mgmt_cmd_status(cmd->sk, hdev->id, MGMT_OP_SET_FAST_CONNECTABLE, in fast_connectable_complete()
5076 struct mgmt_mode *cp = cmd->param; 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()
5087 mgmt_pending_remove(cmd); in fast_connectable_complete()
5097 struct mgmt_pending_cmd *cmd; in set_fast_connectable() local
5134 cmd = mgmt_pending_add(sk, MGMT_OP_SET_FAST_CONNECTABLE, hdev, in set_fast_connectable()
5136 if (!cmd) { in set_fast_connectable()
5149 mgmt_pending_remove(cmd); in set_fast_connectable()
5160 struct mgmt_pending_cmd *cmd; in set_bredr_complete() local
5166 cmd = pending_find(MGMT_OP_SET_BREDR, hdev); in set_bredr_complete()
5167 if (!cmd) in set_bredr_complete()
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()
5184 mgmt_pending_remove(cmd); in set_bredr_complete()
5193 struct mgmt_pending_cmd *cmd; in set_bredr() local
5272 cmd = mgmt_pending_add(sk, MGMT_OP_SET_BREDR, hdev, data, len); in set_bredr()
5273 if (!cmd) { in set_bredr()
5295 mgmt_pending_remove(cmd); in set_bredr()
5304 struct mgmt_pending_cmd *cmd; in sc_enable_complete() local
5311 cmd = pending_find(MGMT_OP_SET_SECURE_CONN, hdev); in sc_enable_complete()
5312 if (!cmd) in sc_enable_complete()
5316 mgmt_cmd_status(cmd->sk, cmd->index, cmd->opcode, in sc_enable_complete()
5321 cp = cmd->param; 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()
5342 mgmt_pending_remove(cmd); in sc_enable_complete()
5351 struct mgmt_pending_cmd *cmd; in set_secure_conn() local
5416 cmd = mgmt_pending_add(sk, MGMT_OP_SET_SECURE_CONN, hdev, data, len); in set_secure_conn()
5417 if (!cmd) { in set_secure_conn()
5426 mgmt_pending_remove(cmd); in set_secure_conn()
5716 static int conn_info_cmd_complete(struct mgmt_pending_cmd *cmd, u8 status) in conn_info_cmd_complete() argument
5718 struct hci_conn *conn = cmd->user_data; in conn_info_cmd_complete()
5722 memcpy(&rp.addr, cmd->param, sizeof(rp.addr)); in conn_info_cmd_complete()
5734 err = mgmt_cmd_complete(cmd->sk, cmd->index, MGMT_OP_GET_CONN_INFO, in conn_info_cmd_complete()
5747 struct mgmt_pending_cmd *cmd; in conn_info_refresh_complete() local
5785 cmd = pending_find_data(MGMT_OP_GET_CONN_INFO, hdev, conn); in conn_info_refresh_complete()
5786 if (!cmd) in conn_info_refresh_complete()
5789 cmd->cmd_complete(cmd, status); in conn_info_refresh_complete()
5790 mgmt_pending_remove(cmd); in conn_info_refresh_complete()
5860 struct mgmt_pending_cmd *cmd; in get_conn_info() local
5890 cmd = mgmt_pending_add(sk, MGMT_OP_GET_CONN_INFO, hdev, in get_conn_info()
5892 if (!cmd) { in get_conn_info()
5898 cmd->user_data = hci_conn_get(conn); in get_conn_info()
5899 cmd->cmd_complete = conn_info_cmd_complete; in get_conn_info()
5917 static int clock_info_cmd_complete(struct mgmt_pending_cmd *cmd, u8 status) in clock_info_cmd_complete() argument
5919 struct hci_conn *conn = cmd->user_data; in clock_info_cmd_complete()
5925 memcpy(&rp.addr, &cmd->param, sizeof(rp.addr)); in clock_info_cmd_complete()
5930 hdev = hci_dev_get(cmd->index); in clock_info_cmd_complete()
5942 err = mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, status, &rp, in clock_info_cmd_complete()
5956 struct mgmt_pending_cmd *cmd; in get_clock_info_complete() local
5974 cmd = pending_find_data(MGMT_OP_GET_CLOCK_INFO, hdev, conn); in get_clock_info_complete()
5975 if (!cmd) in get_clock_info_complete()
5978 cmd->cmd_complete(cmd, mgmt_status(status)); in get_clock_info_complete()
5979 mgmt_pending_remove(cmd); in get_clock_info_complete()
5991 struct mgmt_pending_cmd *cmd; in get_clock_info() local
6030 cmd = mgmt_pending_add(sk, MGMT_OP_GET_CLOCK_INFO, hdev, data, len); in get_clock_info()
6031 if (!cmd) { in get_clock_info()
6036 cmd->cmd_complete = clock_info_cmd_complete; in get_clock_info()
6045 cmd->user_data = hci_conn_get(conn); in get_clock_info()
6054 mgmt_pending_remove(cmd); in get_clock_info()
6147 struct mgmt_pending_cmd *cmd; in add_device_complete() local
6153 cmd = pending_find(MGMT_OP_ADD_DEVICE, hdev); in add_device_complete()
6154 if (!cmd) in add_device_complete()
6157 cmd->cmd_complete(cmd, mgmt_status(status)); in add_device_complete()
6158 mgmt_pending_remove(cmd); in add_device_complete()
6168 struct mgmt_pending_cmd *cmd; in add_device() local
6190 cmd = mgmt_pending_add(sk, MGMT_OP_ADD_DEVICE, hdev, data, len); in add_device()
6191 if (!cmd) { in add_device()
6196 cmd->cmd_complete = addr_cmd_complete; in add_device()
6201 err = cmd->cmd_complete(cmd, in add_device()
6203 mgmt_pending_remove(cmd); in add_device()
6232 err = cmd->cmd_complete(cmd, MGMT_STATUS_INVALID_PARAMS); in add_device()
6233 mgmt_pending_remove(cmd); in add_device()
6242 err = cmd->cmd_complete(cmd, MGMT_STATUS_FAILED); in add_device()
6243 mgmt_pending_remove(cmd); in add_device()
6256 err = cmd->cmd_complete(cmd, MGMT_STATUS_SUCCESS); in add_device()
6257 mgmt_pending_remove(cmd); in add_device()
6278 struct mgmt_pending_cmd *cmd; in remove_device_complete() local
6284 cmd = pending_find(MGMT_OP_REMOVE_DEVICE, hdev); in remove_device_complete()
6285 if (!cmd) in remove_device_complete()
6288 cmd->cmd_complete(cmd, mgmt_status(status)); in remove_device_complete()
6289 mgmt_pending_remove(cmd); in remove_device_complete()
6299 struct mgmt_pending_cmd *cmd; in remove_device() local
6309 cmd = mgmt_pending_add(sk, MGMT_OP_REMOVE_DEVICE, hdev, data, len); in remove_device()
6310 if (!cmd) { in remove_device()
6315 cmd->cmd_complete = addr_cmd_complete; in remove_device()
6322 err = cmd->cmd_complete(cmd, in remove_device()
6324 mgmt_pending_remove(cmd); in remove_device()
6333 err = cmd->cmd_complete(cmd, in remove_device()
6335 mgmt_pending_remove(cmd); in remove_device()
6354 err = cmd->cmd_complete(cmd, in remove_device()
6356 mgmt_pending_remove(cmd); in remove_device()
6363 err = cmd->cmd_complete(cmd, in remove_device()
6365 mgmt_pending_remove(cmd); in remove_device()
6371 err = cmd->cmd_complete(cmd, in remove_device()
6373 mgmt_pending_remove(cmd); in remove_device()
6388 err = cmd->cmd_complete(cmd, in remove_device()
6390 mgmt_pending_remove(cmd); in remove_device()
6427 err = cmd->cmd_complete(cmd, MGMT_STATUS_SUCCESS); in remove_device()
6428 mgmt_pending_remove(cmd); in remove_device()
6647 struct mgmt_pending_cmd *cmd; in read_local_oob_ext_data_complete() local
6653 cmd = pending_find(MGMT_OP_READ_LOCAL_OOB_EXT_DATA, hdev); in read_local_oob_ext_data_complete()
6654 if (!cmd) in read_local_oob_ext_data_complete()
6657 mgmt_cp = cmd->param; in read_local_oob_ext_data_complete()
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()
6749 mgmt_pending_remove(cmd); in read_local_oob_ext_data_complete()
6755 struct mgmt_pending_cmd *cmd; in read_local_ssp_oob_req() local
6759 cmd = mgmt_pending_add(sk, MGMT_OP_READ_LOCAL_OOB_EXT_DATA, hdev, in read_local_ssp_oob_req()
6761 if (!cmd) in read_local_ssp_oob_req()
6773 mgmt_pending_remove(cmd); in read_local_ssp_oob_req()
7058 struct mgmt_pending_cmd *cmd; in add_advertising_complete() local
7068 cmd = pending_find(MGMT_OP_ADD_ADVERTISING, hdev); in add_advertising_complete()
7088 advertising_removed(cmd ? cmd->sk : NULL, hdev, instance); in add_advertising_complete()
7091 if (!cmd) in add_advertising_complete()
7094 cp = cmd->param; 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()
7104 mgmt_pending_remove(cmd); in add_advertising_complete()
7148 struct mgmt_pending_cmd *cmd; in add_advertising() local
7251 cmd = mgmt_pending_add(sk, MGMT_OP_ADD_ADVERTISING, hdev, data, in add_advertising()
7253 if (!cmd) { in add_advertising()
7266 mgmt_pending_remove(cmd); in add_advertising()
7277 struct mgmt_pending_cmd *cmd; in remove_advertising_complete() local
7289 cmd = pending_find(MGMT_OP_REMOVE_ADVERTISING, hdev); in remove_advertising_complete()
7290 if (!cmd) in remove_advertising_complete()
7293 cp = cmd->param; in remove_advertising_complete()
7296 mgmt_cmd_complete(cmd->sk, cmd->index, cmd->opcode, MGMT_STATUS_SUCCESS, in remove_advertising_complete()
7298 mgmt_pending_remove(cmd); in remove_advertising_complete()
7309 struct mgmt_pending_cmd *cmd; in remove_advertising() local
7359 cmd = mgmt_pending_add(sk, MGMT_OP_REMOVE_ADVERTISING, hdev, data, in remove_advertising()
7361 if (!cmd) { in remove_advertising()
7368 mgmt_pending_remove(cmd); in remove_advertising()
7723 struct mgmt_pending_cmd *cmd; in mgmt_set_powered_failed() local
7726 cmd = pending_find(MGMT_OP_SET_POWERED, hdev); in mgmt_set_powered_failed()
7727 if (!cmd) in mgmt_set_powered_failed()
7735 mgmt_cmd_status(cmd->sk, hdev->id, MGMT_OP_SET_POWERED, status); in mgmt_set_powered_failed()
7737 mgmt_pending_remove(cmd); in mgmt_set_powered_failed()
7960 static void disconnect_rsp(struct mgmt_pending_cmd *cmd, void *data) in disconnect_rsp() argument
7964 cmd->cmd_complete(cmd, 0); in disconnect_rsp()
7966 *sk = cmd->sk; in disconnect_rsp()
7969 mgmt_pending_remove(cmd); in disconnect_rsp()
7972 static void unpair_device_rsp(struct mgmt_pending_cmd *cmd, void *data) in unpair_device_rsp() argument
7975 struct mgmt_cp_unpair_device *cp = cmd->param; in unpair_device_rsp()
7977 device_unpaired(hdev, &cp->addr.bdaddr, cp->addr.type, cmd->sk); in unpair_device_rsp()
7979 cmd->cmd_complete(cmd, 0); in unpair_device_rsp()
7980 mgmt_pending_remove(cmd); in unpair_device_rsp()
7985 struct mgmt_pending_cmd *cmd; in mgmt_powering_down() local
7988 cmd = pending_find(MGMT_OP_SET_POWERED, hdev); in mgmt_powering_down()
7989 if (!cmd) in mgmt_powering_down()
7992 cp = cmd->param; in mgmt_powering_down()
8040 struct mgmt_pending_cmd *cmd; in mgmt_disconnect_failed() local
8045 cmd = pending_find(MGMT_OP_DISCONNECT, hdev); in mgmt_disconnect_failed()
8046 if (!cmd) in mgmt_disconnect_failed()
8049 cp = cmd->param; in mgmt_disconnect_failed()
8057 cmd->cmd_complete(cmd, mgmt_status(status)); in mgmt_disconnect_failed()
8058 mgmt_pending_remove(cmd); in mgmt_disconnect_failed()
8095 struct mgmt_pending_cmd *cmd; in mgmt_pin_code_reply_complete() local
8097 cmd = pending_find(MGMT_OP_PIN_CODE_REPLY, hdev); in mgmt_pin_code_reply_complete()
8098 if (!cmd) in mgmt_pin_code_reply_complete()
8101 cmd->cmd_complete(cmd, mgmt_status(status)); in mgmt_pin_code_reply_complete()
8102 mgmt_pending_remove(cmd); in mgmt_pin_code_reply_complete()
8108 struct mgmt_pending_cmd *cmd; in mgmt_pin_code_neg_reply_complete() local
8110 cmd = pending_find(MGMT_OP_PIN_CODE_NEG_REPLY, hdev); in mgmt_pin_code_neg_reply_complete()
8111 if (!cmd) in mgmt_pin_code_neg_reply_complete()
8114 cmd->cmd_complete(cmd, mgmt_status(status)); in mgmt_pin_code_neg_reply_complete()
8115 mgmt_pending_remove(cmd); in mgmt_pin_code_neg_reply_complete()
8153 struct mgmt_pending_cmd *cmd; in user_pairing_resp_complete() local
8155 cmd = pending_find(opcode, hdev); in user_pairing_resp_complete()
8156 if (!cmd) in user_pairing_resp_complete()
8159 cmd->cmd_complete(cmd, mgmt_status(status)); in user_pairing_resp_complete()
8160 mgmt_pending_remove(cmd); in user_pairing_resp_complete()
8214 struct mgmt_pending_cmd *cmd; in mgmt_auth_failed() local
8221 cmd = find_pairing(conn); in mgmt_auth_failed()
8224 cmd ? cmd->sk : NULL); in mgmt_auth_failed()
8226 if (cmd) { in mgmt_auth_failed()
8227 cmd->cmd_complete(cmd, status); in mgmt_auth_failed()
8228 mgmt_pending_remove(cmd); in mgmt_auth_failed()
8327 static void sk_lookup(struct mgmt_pending_cmd *cmd, void *data) in sk_lookup() argument
8332 match->sk = cmd->sk; in sk_lookup()
8357 struct mgmt_pending_cmd *cmd; in mgmt_set_local_name_complete() local
8366 cmd = pending_find(MGMT_OP_SET_LOCAL_NAME, hdev); in mgmt_set_local_name_complete()
8367 if (!cmd) { in mgmt_set_local_name_complete()
8378 cmd ? cmd->sk : NULL); in mgmt_set_local_name_complete()