1 /* 2 * Copyright (C) 2018 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 package com.android.internal.telephony.euicc; 18 19 import com.android.internal.telephony.euicc.IGetAllProfilesCallback; 20 import com.android.internal.telephony.euicc.IGetProfileCallback; 21 import com.android.internal.telephony.euicc.IDisableProfileCallback; 22 import com.android.internal.telephony.euicc.ISwitchToProfileCallback; 23 import com.android.internal.telephony.euicc.ISetNicknameCallback; 24 import com.android.internal.telephony.euicc.IDeleteProfileCallback; 25 import com.android.internal.telephony.euicc.IResetMemoryCallback; 26 import com.android.internal.telephony.euicc.IGetDefaultSmdpAddressCallback; 27 import com.android.internal.telephony.euicc.IGetSmdsAddressCallback; 28 import com.android.internal.telephony.euicc.ISetDefaultSmdpAddressCallback; 29 import com.android.internal.telephony.euicc.IAuthenticateServerCallback; 30 import com.android.internal.telephony.euicc.ICancelSessionCallback; 31 import com.android.internal.telephony.euicc.IGetEuiccChallengeCallback; 32 import com.android.internal.telephony.euicc.IGetEuiccInfo1Callback; 33 import com.android.internal.telephony.euicc.IGetEuiccInfo2Callback; 34 import com.android.internal.telephony.euicc.IGetRulesAuthTableCallback; 35 import com.android.internal.telephony.euicc.IListNotificationsCallback; 36 import com.android.internal.telephony.euicc.ILoadBoundProfilePackageCallback; 37 import com.android.internal.telephony.euicc.IPrepareDownloadCallback; 38 import com.android.internal.telephony.euicc.IRemoveNotificationFromListCallback; 39 import com.android.internal.telephony.euicc.IRetrieveNotificationCallback; 40 import com.android.internal.telephony.euicc.IRetrieveNotificationListCallback; 41 42 /** @hide */ 43 interface IEuiccCardController { getAllProfiles(String callingPackage, String cardId, in IGetAllProfilesCallback callback)44 oneway void getAllProfiles(String callingPackage, String cardId, 45 in IGetAllProfilesCallback callback); getProfile(String callingPackage, String cardId, String iccid, in IGetProfileCallback callback)46 oneway void getProfile(String callingPackage, String cardId, String iccid, 47 in IGetProfileCallback callback); disableProfile(String callingPackage, String cardId, String iccid, boolean refresh, in IDisableProfileCallback callback)48 oneway void disableProfile(String callingPackage, String cardId, String iccid, boolean refresh, 49 in IDisableProfileCallback callback); switchToProfile(String callingPackage, String cardId, String iccid, boolean refresh, in ISwitchToProfileCallback callback)50 oneway void switchToProfile(String callingPackage, String cardId, String iccid, boolean refresh, 51 in ISwitchToProfileCallback callback); setNickname(String callingPackage, String cardId, String iccid, String nickname, in ISetNicknameCallback callback)52 oneway void setNickname(String callingPackage, String cardId, String iccid, String nickname, 53 in ISetNicknameCallback callback); deleteProfile(String callingPackage, String cardId, String iccid, in IDeleteProfileCallback callback)54 oneway void deleteProfile(String callingPackage, String cardId, String iccid, 55 in IDeleteProfileCallback callback); resetMemory(String callingPackage, String cardId, int options, in IResetMemoryCallback callback)56 oneway void resetMemory(String callingPackage, String cardId, int options, in IResetMemoryCallback callback); getDefaultSmdpAddress(String callingPackage, String cardId, in IGetDefaultSmdpAddressCallback callback)57 oneway void getDefaultSmdpAddress(String callingPackage, String cardId, 58 in IGetDefaultSmdpAddressCallback callback); getSmdsAddress(String callingPackage, String cardId, in IGetSmdsAddressCallback callback)59 oneway void getSmdsAddress(String callingPackage, String cardId, 60 in IGetSmdsAddressCallback callback); setDefaultSmdpAddress(String callingPackage, String cardId, String address, in ISetDefaultSmdpAddressCallback callback)61 oneway void setDefaultSmdpAddress(String callingPackage, String cardId, String address, 62 in ISetDefaultSmdpAddressCallback callback); getRulesAuthTable(String callingPackage, String cardId, in IGetRulesAuthTableCallback callback)63 oneway void getRulesAuthTable(String callingPackage, String cardId, 64 in IGetRulesAuthTableCallback callback); getEuiccChallenge(String callingPackage, String cardId, in IGetEuiccChallengeCallback callback)65 oneway void getEuiccChallenge(String callingPackage, String cardId, 66 in IGetEuiccChallengeCallback callback); getEuiccInfo1(String callingPackage, String cardId, in IGetEuiccInfo1Callback callback)67 oneway void getEuiccInfo1(String callingPackage, String cardId, 68 in IGetEuiccInfo1Callback callback); getEuiccInfo2(String callingPackage, String cardId, in IGetEuiccInfo2Callback callback)69 oneway void getEuiccInfo2(String callingPackage, String cardId, 70 in IGetEuiccInfo2Callback callback); authenticateServer(String callingPackage, String cardId, String matchingId, in byte[] serverSigned1, in byte[] serverSignature1, in byte[] euiccCiPkIdToBeUsed, in byte[] serverCertificatein, in IAuthenticateServerCallback callback)71 oneway void authenticateServer(String callingPackage, String cardId, String matchingId, 72 in byte[] serverSigned1, in byte[] serverSignature1, in byte[] euiccCiPkIdToBeUsed, 73 in byte[] serverCertificatein, in IAuthenticateServerCallback callback); prepareDownload(String callingPackage, String cardId, in byte[] hashCc, in byte[] smdpSigned2, in byte[] smdpSignature2, in byte[] smdpCertificate, in IPrepareDownloadCallback callback)74 oneway void prepareDownload(String callingPackage, String cardId, in byte[] hashCc, 75 in byte[] smdpSigned2, in byte[] smdpSignature2, in byte[] smdpCertificate, 76 in IPrepareDownloadCallback callback); loadBoundProfilePackage(String callingPackage, String cardId, in byte[] boundProfilePackage, in ILoadBoundProfilePackageCallback callback)77 oneway void loadBoundProfilePackage(String callingPackage, String cardId, 78 in byte[] boundProfilePackage, in ILoadBoundProfilePackageCallback callback); cancelSession(String callingPackage, String cardId, in byte[] transactionId, int reason, in ICancelSessionCallback callback)79 oneway void cancelSession(String callingPackage, String cardId, in byte[] transactionId, 80 int reason, in ICancelSessionCallback callback); listNotifications(String callingPackage, String cardId, int events, in IListNotificationsCallback callback)81 oneway void listNotifications(String callingPackage, String cardId, int events, 82 in IListNotificationsCallback callback); retrieveNotificationList(String callingPackage, String cardId, int events, in IRetrieveNotificationListCallback callback)83 oneway void retrieveNotificationList(String callingPackage, String cardId, int events, 84 in IRetrieveNotificationListCallback callback); retrieveNotification(String callingPackage, String cardId, int seqNumber, in IRetrieveNotificationCallback callback)85 oneway void retrieveNotification(String callingPackage, String cardId, int seqNumber, 86 in IRetrieveNotificationCallback callback); removeNotificationFromList(String callingPackage, String cardId, int seqNumber, in IRemoveNotificationFromListCallback callback)87 oneway void removeNotificationFromList(String callingPackage, String cardId, int seqNumber, 88 in IRemoveNotificationFromListCallback callback); 89 } 90