1 /*
2  * Copyright (C) 2023 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 
17 #include "RefRadioModem.h"
18 #include "ril_service.h"
19 
20 using ::android::hardware::hidl_string;
21 
22 namespace cf::ril {
23 
24     using ::ndk::ScopedAStatus;
25     using namespace ::aidl::android::hardware::radio;
26     constexpr auto ok = &ScopedAStatus::ok;
27 
responseInfo(int32_t serial,RadioError error=RadioError::NONE)28     static RadioResponseInfo responseInfo(int32_t serial, RadioError error = RadioError::NONE) {
29         return {
30                 .type = RadioResponseType::SOLICITED,
31                 .serial = serial,
32                 .error = error,
33         };
34     }
35 
getImei(int32_t serial)36     ScopedAStatus RefRadioModem::getImei(int32_t serial) {
37         ::aidl::android::hardware::radio::modem::ImeiInfo imeiInfo = {};
38         imeiInfo.type = (::aidl::android::hardware::radio::modem::ImeiInfo::ImeiType) 1;
39         imeiInfo.imei = "867400022047199";
40         imeiInfo.svn = "01";
41         respond()->getImeiResponse(responseInfo(serial), imeiInfo);
42         return ok();
43     }
44 }
45