1 /*
2 * Copyright (C) 2022 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16 #include "radio_sap_utils.h"
17
18 #include <android-base/logging.h>
19
SapCallback(SapTest & parent)20 SapCallback::SapCallback(SapTest& parent) : parent_sap(parent) {}
21
apduResponse(int32_t serialNumber,SapResultCode resultCode,const std::vector<uint8_t> &)22 ::ndk::ScopedAStatus SapCallback::apduResponse(int32_t serialNumber, SapResultCode resultCode,
23 const std::vector<uint8_t>& /*apduRsp*/) {
24 sapResponseSerial = serialNumber;
25 sapResultCode = resultCode;
26 parent_sap.notify(serialNumber);
27 return ndk::ScopedAStatus::ok();
28 }
connectResponse(int32_t serialNumber,SapConnectRsp,int32_t)29 ::ndk::ScopedAStatus SapCallback::connectResponse(int32_t serialNumber,
30 SapConnectRsp /*sapConnectRsp*/,
31 int32_t /*maxMsgSize*/) {
32 sapResponseSerial = serialNumber;
33 parent_sap.notify(serialNumber);
34 return ndk::ScopedAStatus::ok();
35 }
36
disconnectIndication(int32_t,SapDisconnectType)37 ::ndk::ScopedAStatus SapCallback::disconnectIndication(int32_t /*serialNumber*/,
38 SapDisconnectType /*sapDisconnectType*/) {
39 return ndk::ScopedAStatus::ok();
40 }
41
disconnectResponse(int32_t serialNumber)42 ::ndk::ScopedAStatus SapCallback::disconnectResponse(int32_t serialNumber) {
43 sapResponseSerial = serialNumber;
44 parent_sap.notify(serialNumber);
45 return ndk::ScopedAStatus::ok();
46 }
47
errorResponse(int32_t)48 ::ndk::ScopedAStatus SapCallback::errorResponse(int32_t /*serialNumber*/) {
49 return ndk::ScopedAStatus::ok();
50 }
51
powerResponse(int32_t serialNumber,SapResultCode resultCode)52 ::ndk::ScopedAStatus SapCallback::powerResponse(int32_t serialNumber, SapResultCode resultCode) {
53 sapResponseSerial = serialNumber;
54 sapResultCode = resultCode;
55 parent_sap.notify(serialNumber);
56 return ndk::ScopedAStatus::ok();
57 }
58
resetSimResponse(int32_t serialNumber,SapResultCode resultCode)59 ::ndk::ScopedAStatus SapCallback::resetSimResponse(int32_t serialNumber, SapResultCode resultCode) {
60 sapResponseSerial = serialNumber;
61 sapResultCode = resultCode;
62 parent_sap.notify(serialNumber);
63 return ndk::ScopedAStatus::ok();
64 }
65
statusIndication(int32_t,SapStatus)66 ::ndk::ScopedAStatus SapCallback::statusIndication(int32_t /*serialNumber*/,
67 SapStatus /*sapStatus*/) {
68 return ndk::ScopedAStatus::ok();
69 }
70
transferAtrResponse(int32_t serialNumber,SapResultCode resultCode,const std::vector<uint8_t> &)71 ::ndk::ScopedAStatus SapCallback::transferAtrResponse(int32_t serialNumber,
72 SapResultCode resultCode,
73 const std::vector<uint8_t>& /*atr*/) {
74 sapResponseSerial = serialNumber;
75 sapResultCode = resultCode;
76 parent_sap.notify(serialNumber);
77 return ndk::ScopedAStatus::ok();
78 }
79
transferCardReaderStatusResponse(int32_t serialNumber,SapResultCode resultCode,int32_t)80 ::ndk::ScopedAStatus SapCallback::transferCardReaderStatusResponse(int32_t serialNumber,
81 SapResultCode resultCode,
82 int32_t /*cardReaderStatus*/) {
83 sapResponseSerial = serialNumber;
84 sapResultCode = resultCode;
85 parent_sap.notify(serialNumber);
86 return ndk::ScopedAStatus::ok();
87 }
88
transferProtocolResponse(int32_t serialNumber,SapResultCode resultCode)89 ::ndk::ScopedAStatus SapCallback::transferProtocolResponse(int32_t serialNumber,
90 SapResultCode resultCode) {
91 sapResponseSerial = serialNumber;
92 sapResultCode = resultCode;
93 parent_sap.notify(serialNumber);
94 return ndk::ScopedAStatus::ok();
95 }
96