10825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/* 20825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Copyright (C) 2006 The Android Open Source Project 30825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 40825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Licensed under the Apache License, Version 2.0 (the "License"); 50825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * you may not use this file except in compliance with the License. 60825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * You may obtain a copy of the License at 70825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 80825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * http://www.apache.org/licenses/LICENSE-2.0 90825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unless required by applicable law or agreed to in writing, software 110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * distributed under the License is distributed on an "AS IS" BASIS, 120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * See the License for the specific language governing permissions and 140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * limitations under the License. 150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 170825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepackage com.android.internal.telephony; 180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 190825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport java.io.FileDescriptor; 200825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport java.io.PrintWriter; 210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 22a8467dd0c524787104b1ccdddc5e8af10ba729edWink Savilleimport android.os.RemoteException; 230825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.ServiceManager; 240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 260825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepublic class PhoneSubInfoProxy extends IPhoneSubInfo.Stub { 270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private PhoneSubInfo mPhoneSubInfo; 280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public PhoneSubInfoProxy(PhoneSubInfo phoneSubInfo) { 300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mPhoneSubInfo = phoneSubInfo; 310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setmPhoneSubInfo(PhoneSubInfo phoneSubInfo) { 3422d85a8e3a575a6d01d2c788587971657dfe20c6Wink Saville mPhoneSubInfo = phoneSubInfo; 350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 37cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getDeviceId() { 390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getDeviceId(); 400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 42054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan public String getImei() { 43054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan return mPhoneSubInfo.getImei(); 44054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan } 45054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan 462351b17aba5350004fc76707f3b3d2859ce773c8xinhe public String getNai() { 472351b17aba5350004fc76707f3b3d2859ce773c8xinhe return mPhoneSubInfo.getNai(); 482351b17aba5350004fc76707f3b3d2859ce773c8xinhe } 492351b17aba5350004fc76707f3b3d2859ce773c8xinhe 50cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getDeviceSvn() { 520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getDeviceSvn(); 530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the unique subscriber ID, e.g., IMSI for GSM phones. 570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 58cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getSubscriberId() { 600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getSubscriberId(); 610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 640e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi * Retrieves the Group Identifier Level1 for GSM phones. 650e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi */ 660e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi public String getGroupIdLevel1() { 670e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi return mPhoneSubInfo.getGroupIdLevel1(); 680e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi } 690e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi 700e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi /** 710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the serial number of the ICC, if applicable. 720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 73cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getIccSerialNumber() { 750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getIccSerialNumber(); 760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the phone number string for line 1. 800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 81cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getLine1Number() { 830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getLine1Number(); 840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the alpha identifier for line 1. 880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 89cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getLine1AlphaTag() { 910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getLine1AlphaTag(); 920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the MSISDN Number. 960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 97cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getMsisdn() { 990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getMsisdn(); 1000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the voice mail number. 1040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 105cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 1060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getVoiceMailNumber() { 1070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getVoiceMailNumber(); 1080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the complete voice mail number. 1120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 113cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 1140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getCompleteVoiceMailNumber() { 1150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getCompleteVoiceMailNumber(); 1160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the alpha identifier associated with the voice mail number. 1200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 121cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 1220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getVoiceMailAlphaTag() { 1230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getVoiceMailAlphaTag(); 1240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the IMS private user identity (IMPI) that was loaded from the ISIM. 1280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return the IMPI, or null if not present or not loaded 1290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 130cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 1310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getIsimImpi() { 1320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getIsimImpi(); 1330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the IMS home network domain name that was loaded from the ISIM. 1370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return the IMS domain name, or null if not present or not loaded 1380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 139cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 1400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getIsimDomain() { 1410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getIsimDomain(); 1420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the IMS public user identities (IMPU) that were loaded from the ISIM. 1460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return an array of IMPU strings, with one IMPU per string, or null if 1470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * not present or not loaded 1480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 149cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 1500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String[] getIsimImpu() { 1510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return mPhoneSubInfo.getIsimImpu(); 1520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 1530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 154cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville @Override 1555f8c9d88fe53b4b5fa9497a90302280e1b45ac3fStuart Scott public String getDeviceIdForPhone(int phoneId) throws RemoteException { 1565f8c9d88fe53b4b5fa9497a90302280e1b45ac3fStuart Scott // FIXME: getDeviceIdForPhone 157a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 158a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 159a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 160a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 161b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getImeiForSubscriber(int subId) throws RemoteException { 1626a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getImeiForSubscriber 163054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan return null; 164054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan } 165054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan 166054702be1e6900b20d825b24f34a4387572c2321Amit Mahajan @Override 167b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getDeviceSvnUsingSubId(int subId) throws RemoteException { 1686bc4098827f3070a44b5e51508b455d7c7be9c07Wink Saville // FIXME: getDeviceSvnUsingSubId 1696bc4098827f3070a44b5e51508b455d7c7be9c07Wink Saville return null; 1706bc4098827f3070a44b5e51508b455d7c7be9c07Wink Saville } 1716bc4098827f3070a44b5e51508b455d7c7be9c07Wink Saville 1726bc4098827f3070a44b5e51508b455d7c7be9c07Wink Saville @Override 173b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getNaiForSubscriber(int subId) throws RemoteException { 1742351b17aba5350004fc76707f3b3d2859ce773c8xinhe // FIXME: NaiForSubscriber 1752351b17aba5350004fc76707f3b3d2859ce773c8xinhe return null; 1762351b17aba5350004fc76707f3b3d2859ce773c8xinhe } 1772351b17aba5350004fc76707f3b3d2859ce773c8xinhe 1782351b17aba5350004fc76707f3b3d2859ce773c8xinhe @Override 179b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getSubscriberIdForSubscriber(int subId) throws RemoteException { 1806a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getSubscriberIdForSubscriber 181a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 182a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 183a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 184a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 185b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getGroupIdLevel1ForSubscriber(int subId) throws RemoteException { 1866a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getGroupIdLevel1ForSubscriber 187a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 188a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 189a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 190a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 191b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getIccSerialNumberForSubscriber(int subId) throws RemoteException { 1926a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getIccSerialNumberForSubscriber 193a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 194a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 195a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 196a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 197b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getLine1NumberForSubscriber(int subId) throws RemoteException { 1986a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getLine1NumberForSubscriber 199a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 200a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 201a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 202a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 203b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getLine1AlphaTagForSubscriber(int subId) throws RemoteException { 2046a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getLine1AlphaTagForSubscriber 205a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 206a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 207a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 208a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 209b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getMsisdnForSubscriber(int subId) throws RemoteException { 2106a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getMsisdnForSubscriber 211a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 212a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 213a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 214a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 215b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getVoiceMailNumberForSubscriber(int subId) throws RemoteException { 2166a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getVoiceMailNumberForSubscriber 217a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 218a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 219a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 220a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 221b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getCompleteVoiceMailNumberForSubscriber(int subId) throws RemoteException { 2226a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getCompleteVoiceMailNumberForSubscriber 223a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 224a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 225a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 226a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 227b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getVoiceMailAlphaTagForSubscriber(int subId) throws RemoteException { 2286a5ef38e6ae3d3a3ad90ae180388fe85de0495a2Wink Saville // FIXME: getVoiceMailAlphaTagForSubscriber 229a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return null; 230a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 231a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 232a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 233a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Returns the IMS Service Table (IST) that was loaded from the ISIM. 234a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @return IMS Service Table or null if not present or not loaded 235a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 236a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 237a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public String getIsimIst() { 238a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return mPhoneSubInfo.getIsimIst(); 239a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 240a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 241a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 242a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Returns the IMS Proxy Call Session Control Function(PCSCF) that were loaded from the ISIM. 243a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @return an array of PCSCF strings with one PCSCF per string, or null if 244a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * not present or not loaded 245a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 246a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 247a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public String[] getIsimPcscf() { 248a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return mPhoneSubInfo.getIsimPcscf(); 249a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 250a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 251a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 252a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Returns the response of ISIM Authetification through RIL. 253a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Returns null if the Authentification hasn't been successed or isn't present iphonesubinfo. 254a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @return the response of ISIM Authetification, or null if not available 255a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @deprecated 256a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @see getIccSimChallengeResponse 257a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 258a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public String getIsimChallengeResponse(String nonce) { 259a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return mPhoneSubInfo.getIsimChallengeResponse(nonce); 260a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 261a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 262a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 263a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Returns the response of the SIM application on the UICC to authentication 264a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * challenge/response algorithm. The data string and challenge response are 265a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Base64 encoded Strings. 266a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Can support EAP-SIM, EAP-AKA with results encoded per 3GPP TS 31.102. 267a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * 268a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @param appType ICC application type (@see com.android.internal.telephony.PhoneConstants#APPTYPE_xxx) 269a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @param data authentication challenge data 270a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @return challenge response 271a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 272b237a11044ed842d2865ff8c8716befb06b6ca25Wink Saville public String getIccSimChallengeResponse(int subId, int appType, String data) { 273a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville return mPhoneSubInfo.getIccSimChallengeResponse(subId, appType, data); 274a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville } 275a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 276a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville @Override 2770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville protected void dump(FileDescriptor fd, PrintWriter pw, String[] args) { 2780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mPhoneSubInfo.dump(fd, pw, args); 2790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 2800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville} 281