1 /* 2 * Copyright (C) 2021 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef OHOS_SIM_CONSTANT_H 17 #define OHOS_SIM_CONSTANT_H 18 19 namespace OHOS { 20 namespace Telephony { 21 enum ControllerType { 22 ICC_CONTROLLER_REQ_BASE = 0x16EFF0, 23 ICC_CONTROLLER_REQ_NONE, 24 ICC_CONTROLLER_REQ_SEND_RESPONSE 25 }; 26 27 // mnc Length type 28 enum MncType { 29 UNINITIALIZED_MNC = -1, 30 UNKNOWN_MNC = 0, 31 }; 32 33 enum MWIType { 34 MSG_SIM_MWI = 0, 35 MSG_SIM_CFI = 1, 36 MSG_SIM_SPN = 2 37 }; 38 39 enum StateMessage { 40 MSG_SIM_OBTAIN_ICC_FILE_DONE = 100, 41 MSG_ICC_REFRESH = 31, 42 MSG_SIM_APP_READY = 1 43 }; 44 45 enum CallForwardType { 46 ICC_CALL_FORWARD_TYPE_DISABLED = 0, 47 ICC_CALL_FORWARD_TYPE_ENABLED = 1, 48 ICC_CALL_FORWARD_TYPE_UNKNOWN = -1 49 }; 50 51 enum SimMessage { 52 MSG_ID_DEFAULT = 0, 53 MSG_SIM_OBTAIN_IMSI_DONE = 0x03, 54 MSG_SIM_OBTAIN_ICCID_DONE, 55 MSG_SIM_OBTAIN_MBI_DONE, 56 MSG_SIM_OBTAIN_MBDN_DONE, 57 MSG_SIM_OBTAIN_MWIS_DONE, 58 MSG_SIM_OBTAIN_VOICE_MAIL_INDICATOR_CPHS_DONE, 59 MSG_SIM_OBTAIN_AD_DONE, // Admin data 60 MSG_SIM_OBTAIN_MSISDN_DONE, 61 MSG_SIM_OBTAIN_CPHS_MAILBOX_DONE, 62 MSG_SIM_OBTAIN_SPN_DONE, 63 MSG_SIM_OBTAIN_LI_LANGUAGE_DONE, 64 MSG_SIM_OBTAIN_PL_LANGUAGE_DONE, 65 MSG_SIM_OBTAIN_SPDI_DONE, 66 MSG_SIM_UPDATE_DONE, 67 MSG_SIM_OBTAIN_PNN_DONE, 68 MSG_SIM_OBTAIN_SST_DONE, 69 MSG_SIM_OBTAIN_ALL_SMS_DONE, 70 MSG_SIM_MARK_SMS_READ_DONE, 71 MSG_SIM_SET_MBDN_DONE, 72 MSG_SIM_SMS_ON_SIM, 73 MSG_SIM_OBTAIN_SMS_DONE, 74 MSG_SIM_OBTAIN_CFF_DONE, 75 MSG_SIM_SET_CPHS_MAILBOX_DONE, 76 MSG_SIM_OBTAIN_INFO_CPHS_DONE, 77 MSG_SIM_SET_MSISDN_DONE, 78 MSG_SIM_OBTAIN_CFIS_DONE, 79 MSG_SIM_OBTAIN_CSP_CPHS_DONE, 80 MSG_SIM_OBTAIN_GID1_DONE, 81 MSG_SIM_OBTAIN_GID2_DONE, 82 MSG_SIM_OBTAIN_PLMN_W_ACT_DONE, 83 MSG_SIM_OBTAIN_OPLMN_W_ACT_DONE, 84 MSG_SIM_OBTAIN_HPLMN_W_ACT_DONE, 85 MSG_SIM_OBTAIN_EHPLMN_DONE, 86 MSG_SIM_OBTAIN_FPLMN_DONE, 87 MSG_SIM_OBTAIN_DEVICE_IDENTITY_DONE, 88 MSG_SIM_OBTAIN_CDMA_SUBSCRIPTION_DONE, 89 MSG_SIM_SMS_ON_RUIM, 90 MSG_SIM_OBTAIN_OPL_DONE, 91 MSG_SIM_OBTAIN_OPL5G_DONE, 92 MSG_SIM_OBTAIN_IMPI_DONE, 93 MSG_SIM_OBTAIN_CSIM_SPN_DONE, 94 MSG_SIM_OBTAIN_IST_DONE, 95 #ifdef CORE_SERVICE_SUPPORT_ESIM 96 MSG_ESIM_OPEN_CHANNEL_DONE, 97 MSG_ESIM_CLOSE_CHANNEL_DONE, 98 MSG_ESIM_OBTAIN_EID_DONE, 99 MSG_ESIM_OBTAIN_EUICC_CHALLENGE_DONE, 100 MSG_ESIM_OBTAIN_EUICC_INFO2_DONE, 101 MSG_ESIM_OBTAIN_EUICC_INFO_1_DONE, 102 MSG_ESIM_OBTAIN_DEFAULT_SMDP_ADDRESS_DONE, 103 MSG_ESIM_ESTABLISH_DEFAULT_SMDP_ADDRESS_DONE, 104 MSG_ESIM_DELETE_PROFILE, 105 MSG_ESIM_SWITCH_PROFILE, 106 MSG_ESIM_DISABLE_PROFILE, 107 MSG_ESIM_RESET_MEMORY, 108 MSG_ESIM_REMOVE_NOTIFICATION, 109 MSG_ESIM_REQUEST_ALL_PROFILES, 110 MSG_ESIM_LIST_NOTIFICATION, 111 MSG_ESIM_SET_NICK_NAME, 112 MSG_ESIM_CANCEL_SESSION, 113 MSG_ESIM_OBTAIN_SMDS_ADDRESS, 114 MSG_ESIM_GET_PROFILE, 115 MSG_ESIM_RETRIEVE_NOTIFICATION_DONE, 116 MSG_ESIM_RETRIEVE_NOTIFICATION_LIST, 117 MSG_ESIM_AUTHENTICATE_SERVER, 118 MSG_ESIM_PREPARE_DOWNLOAD_DONE, 119 MSG_ESIM_SEND_APUD_DATA, 120 MSG_ESIM_LOAD_BOUND_PROFILE_PACKAGE, 121 MSG_ESIM_REQUEST_RULES_AUTH_TABLE, 122 #endif 123 }; 124 125 enum ElementaryFile { 126 // ETSI TS 102 221 V3.3.0 section 13.3 Preferred Languages 127 ELEMENTARY_FILE_PL = 0x2F05, 128 // CPHS V4.2 section B.3.1.1, B.4.1 - B.4.7 CPHS information Call forwarding flags and so on 129 ELEMENTARY_FILE_VOICE_MAIL_INDICATOR_CPHS = 0x6F11, 130 ELEMENTARY_FILE_CFF_CPHS = 0x6F13, 131 ELEMENTARY_FILE_SPN_CPHS = 0x6F14, 132 ELEMENTARY_FILE_CSP_CPHS = 0x6F15, 133 ELEMENTARY_FILE_INFO_CPHS = 0x6F16, 134 ELEMENTARY_FILE_MAILBOX_CPHS = 0x6F17, 135 ELEMENTARY_FILE_SPN_SHORT_CPHS = 0x6F18, 136 // 3GPP TS 51.011 V4.1.0 section 10 contents of the Elementary Files 137 ELEMENTARY_FILE_ICCID = 0x2FE2, 138 ELEMENTARY_FILE_OPL5G = 0x4F08, 139 ELEMENTARY_FILE_IMG = 0x4F20, 140 ELEMENTARY_FILE_HPLMN = 0x6F31, 141 ELEMENTARY_FILE_SST = 0x6F38, 142 ELEMENTARY_FILE_ADN = 0x6F3A, 143 ELEMENTARY_FILE_FDN = 0x6F3B, 144 ELEMENTARY_FILE_SMS = 0x6F3C, 145 ELEMENTARY_FILE_GID1 = 0x6F3E, 146 ELEMENTARY_FILE_GID2 = 0x6F3F, 147 ELEMENTARY_FILE_MSISDN = 0x6F40, 148 ELEMENTARY_FILE_SPN = 0x6F46, 149 ELEMENTARY_FILE_SDN = 0x6F49, 150 ELEMENTARY_FILE_EXT1 = 0x6F4A, 151 ELEMENTARY_FILE_EXT2 = 0x6F4B, 152 ELEMENTARY_FILE_EXT3 = 0x6F4C, 153 ELEMENTARY_FILE_EXT4 = 0x6F4E, 154 ELEMENTARY_FILE_PLMN_W_ACT = 0x6F60, 155 ELEMENTARY_FILE_OPLMN_W_ACT = 0x6F61, 156 ELEMENTARY_FILE_HPLMN_W_ACT = 0x6F62, 157 ELEMENTARY_FILE_FPLMN = 0x6F7B, 158 ELEMENTARY_FILE_AD = 0x6FAD, 159 ELEMENTARY_FILE_PNN = 0x6FC5, 160 ELEMENTARY_FILE_OPL = 0x6FC6, 161 ELEMENTARY_FILE_MBDN = 0x6FC7, 162 ELEMENTARY_FILE_EXT6 = 0x6FC8, 163 ELEMENTARY_FILE_MBI = 0x6FC9, 164 ELEMENTARY_FILE_MWIS = 0x6FCA, 165 ELEMENTARY_FILE_CFIS = 0x6FCB, 166 // 3GPP TS 31.102 V3.5.0 section 4.7 files of ADF USIM 167 ELEMENTARY_FILE_PBR = 0x4F30, 168 ELEMENTARY_FILE_LI = 0x6F05, 169 // for usim extensiom 170 ELEMENTARY_FILE_EXT5 = 0x6F4E, 171 ELEMENTARY_FILE_SPDI = 0x6FCD, 172 ELEMENTARY_FILE_EHPLMN = 0x6FD9, 173 ELEMENTARY_FILE_LRPLMNSI = 0x6FDC, 174 ELEMENTARY_FILE_HPPLMN = 0x6F31, 175 ELEMENTARY_FILE_USIM_ADN = 0x4F3A, 176 ELEMENTARY_FILE_USIM_IAP = 0x4F3B, 177 // CDMA RUIM file ids from 3GPP2 C.S0023-0 178 ELEMENTARY_FILE_CST = 0x6F32, 179 ELEMENTARY_FILE_RUIM_SPN = 0x6F41, 180 ELEMENTARY_FILE_CSIM_LI = 0x6F3A, 181 ELEMENTARY_FILE_CSIM_SPN = 0x6F41, 182 ELEMENTARY_FILE_CSIM_MDN = 0x6F44, 183 ELEMENTARY_FILE_CSIM_IMSIM = 0x6F22, 184 ELEMENTARY_FILE_CSIM_CDMAHOME = 0x6F28, 185 ELEMENTARY_FILE_CSIM_EPRL = 0x6F5A, 186 ELEMENTARY_FILE_CSIM_MIPUPP = 0x6F4D, 187 // ISIM access 188 ELEMENTARY_FILE_IMPU = 0x6F04, 189 ELEMENTARY_FILE_IMPI = 0x6F02, 190 ELEMENTARY_FILE_DOMAIN = 0x6F03, 191 ELEMENTARY_FILE_IST = 0x6F07, 192 ELEMENTARY_FILE_PCSCF = 0x6F09 193 }; 194 195 // file controller constant 196 enum ControllerRequest { 197 CONTROLLER_REQ_READ_BINARY = 0xb0, 198 CONTROLLER_REQ_UPDATE_BINARY = 0xd6, 199 CONTROLLER_REQ_READ_RECORD = 0xb2, 200 CONTROLLER_REQ_UPDATE_RECORD = 0xdc, 201 CONTROLLER_REQ_SEEK = 0xa2, 202 CONTROLLER_REQ_GET_RESPONSE = 0xc0 203 }; 204 205 enum ElementaryFileTile { 206 ELEMENTARY_FILE_TYPE_TRANSPARENT = 0, 207 ELEMENTARY_FILE_TYPE_LINEAR_FIXED = 1, 208 ELEMENTARY_FILE_TYPE_CYCLIC = 3 209 }; 210 211 enum MainFile { 212 ICC_MASTER_FILE = 1, 213 ICC_DEDICATED_FILE = 2, 214 ICC_ELEMENTARY_FILE = 4 215 }; 216 217 enum ResponseFile { 218 GET_RESPONSE_ELEMENTARY_FILE_SIZE_BYTES = 15, 219 GET_RESPONSE_ELEMENTARY_FILE_IMG_SIZE_BYTES = 10 220 }; 221 222 // controller file type 223 enum SizeType { 224 SIZE_ONE_OF_FILE = 2, 225 SIZE_TWO_OF_FILE = 3, 226 TYPE_OF_FILE = 6, 227 STRUCTURE_OF_DATA = 13, 228 LENGTH_OF_RECORD = 14 229 }; 230 231 enum ControllerMessage { 232 MSG_SIM_OBTAIN_SIZE_OF_FIXED_ELEMENTARY_FILE_DONE = 1, 233 MSG_SIM_OBTAIN_FIXED_ELEMENTARY_FILE_DONE = 2, 234 MSG_SIM_OBTAIN_SIZE_OF_TRANSPARENT_ELEMENTARY_FILE_DONE = 3, 235 MSG_SIM_OBTAIN_TRANSPARENT_ELEMENTARY_FILE_DONE = 4, 236 MSG_SIM_OBTAIN_SIZE_OF_LINEAR_ELEMENTARY_FILE_DONE = 5, 237 MSG_SIM_UPDATE_TRANSPARENT_ELEMENTARY_FILE_DONE = 6, 238 MSG_SIM_UPDATE_LINEAR_FIXED_FILE_DONE = 7, 239 MSG_SIM_OBTAIN_ICON_DONE = 10 240 }; 241 242 enum { 243 INVALID_VALUE = -1, 244 BYTE_LENGTH = 8, 245 BYTE_VALUE = 0xFF 246 }; 247 248 enum LockMsg { 249 MSG_SIM_LOCKED_RECORDS_LOADED = 0xf3, 250 MSG_SIM_NETWORK_LOCKED_RECORDS_LOADED = 0xf4, 251 MSG_SIM_SPN_UPDATED = 0xf5 252 }; 253 254 enum SpnType { SPN_INVALID = -1, SPN_COND_PLMN = 1, SPN_COND = 2 }; 255 256 enum SpnShowType { 257 SPN_CONDITION_DISPLAY_SPN = 0x01, 258 SPN_CONDITION_DISPLAY_PLMN = 0x02 259 }; 260 261 enum ActiveState { 262 DEACTIVE = 0, 263 ACTIVE = 1 264 }; 265 266 enum CardShape { 267 ENTITY_CARD = 1, 268 VIRTUAL_CARD = 11 269 }; 270 271 enum CardStand { 272 NOT_MAIN = 0, 273 MAIN_CARD = 1 274 }; 275 276 enum IccStatus { 277 ICC_STATE_UNKNOWN = 0, 278 ICC_STATE_NOT_READY = 1, 279 ICC_STATE_ABSENT = 2, 280 ICC_STATE_READY = 3, 281 ICC_STATE_LOADED = 4, 282 ICC_STATE_IMSI = 5, 283 ICC_STATE_PIN = 6, 284 ICC_STATE_PUK = 7, 285 ICC_STATE_SIMLOCK = 8 286 }; 287 288 enum IccDiallingNumberConstant { 289 LOADER_ERROR = 200, 290 PARAMETER_INCORRECT = 201, 291 NAME_CHAR_POS = 36, 292 CSIM_SPN_OCTET = 0x00, 293 CSIM_SPN_7BIT_ASCII = 0x02, 294 CSIM_SPN_IA5 = 0x03, 295 CSIM_SPN_UNICODE_16 = 0x04, 296 CSIM_SPN_LATIN = 0x08, 297 CSIM_SPN_7BIT_ALPHABET = 0x09 298 }; 299 300 enum RadioProtocolEvent { 301 MSG_SIM_TIME_OUT_ACTIVE = 2000, 302 MSG_SIM_SET_ACTIVE = 2001, 303 MSG_SIM_FORGET_ALLDATA = 2002, 304 }; 305 306 enum VoiceMailConstant { 307 DEFAULT_VOICE_MAIL_COUNT = -2, 308 UNKNOWN_VOICE_MAIL_COUNT = -1, 309 }; 310 311 enum CallForwardingStatus { 312 CALL_FORWARDING_STATUS_DISABLED = 0, 313 CALL_FORWARDING_STATUS_ENABLED = 1, 314 CALL_FORWARDING_STATUS_UNKNOWN = -1, 315 }; 316 317 inline const std::string DATASHARE_READY_EVENT = "usual.event.DATA_SHARE_READY"; 318 inline const std::string BUNDLE_SCAN_FINISHED_EVENT = "usual.event.BUNDLE_SCAN_FINISHED"; 319 } // namespace Telephony 320 } // namespace OHOS 321 #endif // OHOS_SIM_CONSTANT_H 322