blob: ff2b9f6cf854de19e66a5195dfb7a455fe932648 [file] [log] [blame]
rjw6c1fd8f2022-11-30 14:33:01 +08001/*****************************************************************************
2* Copyright Statement:
3* --------------------
4* This software is protected by Copyright and the information contained
5* herein is confidential. The software may not be copied and the information
6* contained herein may not be used or disclosed except with the written
7* permission of MediaTek Inc. (C) 2012
8*
9* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
10* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
11* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
12* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
13* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
14* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
15* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
16* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
17* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
18* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
19* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
20* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
21*
22* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
23* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
24* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
25* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
26* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
27*
28* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
29* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
30* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
31* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
32* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
33*
34*****************************************************************************/
35
36/*******************************************************************************
37 * Filename:
38 * ---------
39 * xcap_if.h
40 *
41 * Project:
42 * --------
43 * UMOLYA
44 *
45 * Description:
46 * ------------
47 *
48 *
49 * Author:
50 * -------
51 * -------
52 *
53 * ==========================================================================
54 * $Log$
55 *
yu.donge372c322023-08-30 20:25:04 -070056 * 09 13 2022 zhuocheng.jiang
57 * [MOLY00903465] [Remote][Type1][MT6879][Figeac][R0][SQC Excluded][RDIT][TCID :Test_2][SQC][LiveNW][TIM][Brazil]SET CLIR over PS failed
58 *
59 * .
60 *
rjw04b9c952023-03-28 14:35:43 +080061 * 08 11 2022 panu.peisa
62 * [MOLY00844196] [CR Review Excluded][SV Focus][Internal][MT6895][Pichon][S0][Pre-DCP][IMS][France][Orange][LiveNW][TCID: 59x.1.4.1.1.b] XCAP failures in flight mode + WFC
63 *
64 * XCAP IF.
65 *
rjw6c1fd8f2022-11-30 14:33:01 +080066 * 04 22 2022 jani.manninen
67 * [MOLY00759459] [IMS][IMS-SS] TIM (VoLTE_IMS Smartphone and Tablet v2.2) - XCAP If-Match header support
68 *
69 * XCAP If-match header support - IF/Config
70 *
71 * 03 16 2022 ot_gang.zhang
72 * [MOLY00804303] [Moto][TMO][Austin][RCS] GBA failed
73 *
74 * .
75 *
76 * 02 10 2022 ot_yaoxing.li
77 * [MOLY00721691] ��6833�����п�2ȥ����������æ����ǰת�����óɹ��󱻽�ʧ�ܣ�������ʾ����ͨ���У���2���䵽GSM-1037
78 *
79 * .
80 *
81 * 11 09 2020 mika.kaikkonen
82 * [MOLY00578248] [Remote][Type1][MT6875][Margaux][Q0][MP7][SQC][A1][WW FT][Austria][Vienna][WW FT_Static][FreeTest][MDST][Auto][CAT]Externel (EE).c line:1784 p1:0x0000a9e3 p2:0x00000006 p3:0x00000000 ELM r/wlat:PASS AP detect MDEE time:44530.985336 MD:unlwctg
83 *
84 * XCAP Reset fix. SWRD part.
85 *
86 * 09 18 2020 xiaolong.rao
87 * [MOLY00565295] Telus requirement TELUS-v11.0_VoLTE-137 and TELUS-v11.0_VoLTE-138 DNS Failover
88 *
89 * DNS failover - SWRD.
90 *
91 * 09 18 2020 xiaolong.rao
92 * [MOLY00563448] [98 XCAP][Telus][Requirement] Request update Noreplytimer only feature
93 *
94 * Update no reply timer - SWRD.
95 *
96 * 06 30 2020 deepti.singh
97 * [MOLY00535515] NAPTR/SRv check-in
98 * NVRAM, custom-config & interface changes
99 *
100 * 05 07 2020 deepti.singh
101 * [MOLY00516694] [Blocking][MT6875][Margaux][Q0][MP5][R3][SQC][India][Delhi][IMS][Regression][VoLTE][Static][TCID: V-SS-023][RJIO] DUT receives error while accessing call forwarding setting after disabling data.
102 *
103 * 04 16 2020 howen.pu
104 * [MOLY00500885] [Gen97][XCAP][CM] Concurrent PDN support across SIM & FSM changes due to Gen97 re-arch
105 * CL 10971946 sync from VMOLY.0316.DEV to NR15.R3.MP
106 *
107 * 04 15 2020 deepti.singh
108 * [MOLY00500885] [Gen97][XCAP][CM] Concurrent PDN support across SIM & FSM changes due to Gen97 re-arch
109 *
110 * 04 15 2020 ya.li
111 * [MOLY00470399] [Gen97]HTTP Delete function
112 *
113 * .
114 *
115 * 03 26 2020 ya.li
116 * [MOLY00470399] [Gen97]HTTP Delete function
117 *
118 * [SWRD domain].
119 *
120 * 01 10 2020 ya.li
121 * [MOLY00470399] [Gen97]HTTP Delete function
122 *
123 * .
124 * 03 31 2020 ya.li
125 * [MOLY00508536] [Rose][Margaux][Q0][BSP+][[TE-MTBF]The md1:(MCU_core0.vpe0.tc0(VPE0)) [ASSERT] file:mcu/protocol/xcap/cm/src/xcap_cm.c line:1122 p1:0x00003e68 p2:0x00000001 p3:0x00000000 pops up.
126 *
127 * .
128 *
129 * 01 09 2020 deepti.singh
130 * [MOLY00470924] ?19301-IN??Operator-feedback??IMS-JIO? In case of Dual Jio sim card, device sends PDN Disconnect Request for QCI 5 i.e. [Jionet] for SIM1 when supplementary service of SIM2 are accessed and vice versa.
131 *
132 * 09 24 2019 howen.pu
133 * [MOLY00440880] EM info with XCAP information
134 *
135 * XCAP - Interface Part
136 *
137 * 07 10 2019 can.lin
138 * [MOLY00420639] Sync XCAP UMOLYE CRs to VMOLY 2
139 * Sync UMOLYE CRs to VMOLY - Interface part
140 *
141 * [MOLY00405483]
142 * [MOLY00407914]
143 * [MOLY00407776]
144 * [MOLY00414355]
145 * [MOLY00416017]
146 * [MOLY00414964]
147 *
148 * 07 04 2019 actory.ou
149 * [MOLY00418376] [XCAP 2.0] Enhance XCAP feature
150 * [VMOLY][OA] sync patch from gen95
151 *
152 * 07 04 2019 can.lin
153 * [MOLY00418376] [Sync to VMOLY][XCAP 2.0] Enhance XCAP feature
154 *
155 * XCAP interface part
156 *
157 * 05 22 2019 howen.pu
158 * [MOLY00406575] Dump XCAP configuraion when exiting flight mode
159 * Patch back UMOLYE MOLY004041553 & MOLY00402624 & MOLY00403335
160 *
161 * 01 28 2019 cs.huang
162 * [MOLY00381872] [VMOLY] XCAP merge from UMOLYE
163 * XCAP sync from UMOLYE (OA part)
164 *
165 * 12 28 2018 howen.pu
166 * [MOLY00374881] Gen95 XCAP - USIR
167 * Gen 95 USIR - For XCAP.
168 *
169 * 12 28 2018 howen.pu
170 * [MOLY00374881] Gen95 XCAP - USIR
171 *
172 * Gen 95 USIR - For XCAP.
173 *
174 * 10 08 2018 howen.pu
175 * [MOLY00357240] Runtime dump XCAP Config
176 * DUMP runtime XCAP config by AT cmd and EELT test inject message.
177 *
178 * 08 02 2018 actory.ou
179 * [MOLY00343707] [MT3967][Eiger][O1][MP1][WW FT][Singapore][Sinagpore City][SingTel][Overnight][CAT] Externel (EE),0,0,99,/data/vendor/core/,1,modem, md1:(MCU_core0.vpe0.tc0(VPE0)) [ASSERT] file:mcu/protocol/xcap/cm/src/xcap_cm.c line:1104
180 * fix dual req
181 *
182 * 07 06 2018 can.lin
183 * [MOLY00337061] [HUAWEI Requirement] Handling specific response code by network
184 * [Huawei Requirement][95 XCAP] 843 error code handling
185 *
186 * XCAP receives error code 843 which indicates XCAP service of the current SIM is the not allowed
187 *
188 * 07 04 2018 can.lin
189 * [MOLY00336966] [95XCAP New Feature] XCAP Unprovisioned node config support
190 * [95 XCAP] New feature: XCAP Unprovisioned node config support
191 *
192 * 07 03 2018 actory.ou
193 * [MOLY00336746] [MT3967][Eiger][o1][CU FT][CD][CAT][SIM1:CU][SIM2:CU][ASSERT] file:mcu/protocol/xcap/cm/src/xcap_cm.c line:902
194 * [xcap] handle when disconnect req & deact ind come together
195 *
196 *
197****************************************************************************/
198#ifndef _XCAP_IF_H
199#define _XCAP_IF_H
200
201#include "kal_public_defs.h"
202#include "ps_public_enum.h"
203#include "xcap_nvram_def.h"
204#include "dns_common_defs.h"
205
206#define XCAP_XUI_MGR_INFO_MAX_SIZE 512 //IMC_ATCMD_MAX_CMDLINE_LEN
207
208typedef enum
209{
210 GBA_ME = 0,
211 GBA_U,
212}GBA_UB_GBA_TYPE;
213
214typedef enum
215{
216 GBA_USIM = 0,
217 GBA_ISIM = 1,
218}GBA_UB_SIM_TYPE;
219
220typedef enum
221{
222 GBA_STATE_MACHINE_NONE,
223 GBA_STATE_MACHINE_NEXT_ACTION,
224 GBA_STATE_MACHINE_CHANGE_ACTION,
225 GBA_STATE_MACHINE_STOP,
226}GBA_STATE_MACHINE_ACTION;
227
228typedef enum
229{
230 GBA_SEND_HTTP_STATUS_IDLE,
231 GBA_SEND_HTTP_STATUS_SEND_BY_UA,
232 GBA_SEND_HTTP_STATUS_SEND_BY_UB,
233}GBA_SEND_HTTP_STATUS;
234
235typedef enum
236{
237 GBA_SIM_RSP_OK = 0,
238 GBA_SIM_RSP_FAIL = 1,
239 GBA_AKA_RSP_OK = 0xDB,
240 GBA_AKA_RSP_FAIL = 0xDC,
241}GBA_SIM_RESULT_CODE;
242
243typedef enum
244{
245 HTTP_GENERIC_ERROR = 0,
246 //************* HTTP spec **************
247 HTTP_RESPONSE_SPEC_DEFINED_START = 100,
248 // 1xx Informational responses
249 HTTP_RESPONSE_100_CONTINUE = 100,
250 HTTP_RESPONSE_101_SWITCHING_PROTOCOLS = 101,
251 HTTP_RESPONSE_102_PROCESSING = 102,
252 // 2xx Success
253 HTTP_RESPONSE_200_OK = 200,
254 HTTP_RESPONSE_201_CREATED = 201,
255 HTTP_RESPONSE_202_ACCEPTED = 202,
256 HTTP_RESPONSE_203_NON_AUTHORITATICE_INFORMATION = 203,
257 HTTP_RESPONSE_204_NO_CONTENT = 204,
258 HTTP_RESPONSE_205_RESET_CONTENT = 205,
259 HTTP_RESPONSE_206_PARTIAL_CONTENT = 206,
260 HTTP_RESPONSE_207_MULTI_STATUS = 207,
261 HTTP_RESPONSE_208_ALREADY_REPORTED = 208,
262 HTTP_RESPONSE_226_IM_USED = 226,
263 // 3xx Redirection
264 HTTP_RESPONSE_300_MULTIPLE_CHOICES = 300,
265 HTTP_RESPONSE_301_MOVED_PERMANENTLY = 301,
266 HTTP_RESPONSE_302_FOUND = 302,
267 HTTP_RESPONSE_303_SEE_OTHER = 303,
268 HTTP_RESPONSE_304_NOT_MODIFIED = 304,
269 HTTP_RESPONSE_305_USE_PROXY = 305,
270 HTTP_RESPONSE_306_SWITCH_PROXY = 306,
271 HTTP_RESPONSE_307_TEMPORARY_REDIRECT = 307,
272 HTTP_RESPONSE_308_PERMANENT_REDIRECT = 308,
273 // 4xx Client errors
274 HTTP_RESPONSE_400_BAD_REQUEST = 400,
275 HTTP_RESPONSE_401_UNAUTHORIZED = 401,
276 HTTP_RESPONSE_403_FORBIDDEN = 403,
277 HTTP_RESPONSE_404_NOT_FOUND = 404,
278 HTTP_RESPONSE_405_METHOD_NOT_ALLOWED = 405,
279 HTTP_RESPONSE_406_NOT_ACCEPTABLE = 406,
280 HTTP_RESPONSE_407_PROXY_AUTHENTICATION_REQUIRED = 407,
281 HTTP_RESPONSE_408_REQUEST_TIMEOUT = 408,
282 HTTP_RESPONSE_409_CONFLICT = 409,
283 HTTP_RESPONSE_410_GONE = 410,
284 HTTP_RESPONSE_411_LENGTH_REQUIRED = 411,
285 HTTP_RESPONSE_412_PRECONDITION_FAILED = 412,
286 HTTP_RESPONSE_413_REQUEST_ENTITY_TOO_LARGE = 413,
287 HTTP_RESPONSE_414_REQUEST_URI_TOO_LONG = 414,
288 HTTP_RESPONSE_415_UNSUPPORTED_MEDIA_TYPE = 415,
289 HTTP_RESPONSE_416_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
290 HTTP_RESPONSE_417_EXPECTATION_FAILED = 417,
291 HTTP_RESPONSE_418_IM_A_TEAPOT = 418,
292 HTTP_RESPONSE_420_ENHANCE_YOUR_CAIM = 420,
293 HTTP_RESPONSE_421_MISDIRECTED_REQUEST = 421,
294 HTTP_RESPONSE_422_UNPROCESSABLE_ENTITY = 422,
295 HTTP_RESPONSE_423_LOCKED = 423,
296 HTTP_RESPONSE_424_FAILED_DEPENDENCY = 424,
297 HTTP_RESPONSE_425_UNORDERED_COLLECTION = 425,
298 HTTP_RESPONSE_426_UPGRADE_REQUIRED = 426,
299 HTTP_RESPONSE_428_PRECONDITION_REQUIRED = 428,
300 HTTP_RESPONSE_429_TOO_MANY_REQUESTS = 429,
301 HTTP_RESPONSE_431_REQUEST_HEADER_FIELDS_TOO_LARGE = 431,
302 HTTP_RESPONSE_444_NO_RESPONSE = 444,
303 HTTP_RESPONSE_450_BLOCKED_BY_WINDOWS_PARENTAL_CONTROLS = 450,
304 HTTP_RESPONSE_451_UNAVAILABLE_FOR_LEGAL_REASONS = 451,
305 HTTP_RESPONSE_494_REQUEST_HEADER_TOO_LARGE = 494,
306 // 5xx Server errors
307 HTTP_RESPONSE_500_INTERNAL_SERVER_ERROR = 500,
308 HTTP_RESPONSE_501_NOT_IMPLEMETED = 501,
309 HTTP_RESPONSE_502_BAD_GATEWAY = 502,
310 HTTP_RESPONSE_503_SERVICE_UNAVAILABLE = 503,
311 HTTP_RESPONSE_504_GATEWAY_TIMEOUT = 504,
312 HTTP_RESPONSE_505_HTTP_VERSION_NOT_SUPPORTED = 505,
313 HTTP_RESPONSE_506_VARIANT_ALSO_NEGOTIATES = 506,
314 HTTP_RESPONSE_507_INSUFFICIENT_STORAGE = 507,
315 HTTP_RESPONSE_508_LOOP_DETECTED = 508,
316 HTTP_RESPONSE_510_NOT_EXTENDED = 510,
317 HTTP_RESPONSE_511_NETWORK_AUTHENTICATION_REQUIRED = 511,
318 HTTP_RESPONSE_SPEC_DEFINED_MAX = 600,
319 // 8xx Network errors
320 HTTP_RESPONSE_831_NETWORK_TIMEOUT = 831,
321 // 95 XCAP defined
322 XCAP_RESPONSE_840_CANNOT_SERVICE_NOW = 840,
323 XCAP_RESPONSE_841_SIM_ERROR = 841,
324 XCAP_RESPONSE_842_UNEXPECTED_ATCMD = 842,
325 XCAP_RESPONSE_843_SERVICE_NOT_SUPPORTED = 843,
326 XCAP_RESPONSE_844_UNPROVISIONED_SERVICE = 844,
327 //************* MTK defined ***************
328 HTTP_RESPONSE_MTK_DEFINED_START = 1000,
329 // 10xx XCAP internal errors
330 // 11xx GBA internal errors
331 HTTP_RESPONSE_1101_BTID_NULL = 1101,
332 HTTP_RESPONSE_1102_SIM_AKA_CALC_ERROR = 1102,
333 HTTP_RESPONSE_1103_SERVER_NONCE_ERROR = 1103,
334 HTTP_RESPONSE_1104_UA_ERROR = 1104,
335 HTTP_RESPONSE_1105_UB_ERROR = 1105,
336 HTTP_RESPONSE_1106_NAF_KEY_ERROR = 1106,
337 HTTP_RESPONSE_MTK_DEFINED_MAX = 2000,
338 HTTP_RESPONSE_ENUM_MAX = 0x7FFFFFFF,
339}HTTP_RESPONSE_CODE;
340
341typedef enum {
342 XCAP_NW_ERROR_NONE = 0,
343 XCAP_NW_ERROR_NW_NO_RESPONSE = 1,
344 XCAP_NW_ERROR_GEMINI_ISSUE = 2,
345 XCAP_NW_ERROR_CANNOT_CONNECT_TO_SERVER = 3,
346 XCAP_NW_ERROR_PS_ALWAYS_FAIL = 4,
347 XCAP_NW_EEROR_SERVICE_NOT_SUPPORTED = 5, // network not support this sim do xcap
348} XCAP_NW_ERROR_DETAIL_INFO;
349
350//XCAP CM ENUM
351typedef enum {
352 XCAP_CM_STATE_NONE = 0,
353 XCAP_CM_STATE_NO_PDN,
354 XCAP_CM_STATE_ACQUIRING_RF_SEMAPHORE,
355 XCAP_CM_STATE_PROFILE,
356 XCAP_CM_STATE_HAS_PROFILE_ACQUIRING_RF_SEMAPHORE,
357 XCAP_CM_STATE_ACT_DATA_CALL,
358 XCAP_CM_STATE_HAS_PDN_CONNECTION,
359 XCAP_CM_STATE_HAS_PDN_CONNECTION_ACQUIRING_RF_SEMAPHORE,
360 XCAP_CM_STATE_WAIT_ACT_DATA_CALL_DONE = -1,
361 XCAP_CM_STATE_PDN_RELEASING = -2,
362 XCAP_CM_STATE_PDN_RELEASE_DONE = -3,
363 XCAP_CM_STATE_WAIT_ACQUIRE_RF_SEMAPHORE_CNF = -4,
364 XCAP_CM_STATE_HAS_PDN_CONNECTION_WAIT_ACQUIRE_RF_SEMAPHORE_CNF = -5,
365} XCAP_CM_STATE_ENUM;
366//XCAP CM ENUM
367
368// XCAP Client
369typedef enum {
370 XCAP_STATE_MACHINE_NONE,
371 XCAP_STATE_MACHINE_NEXT_STATE,
372 XCAP_STATE_MACHINE_CHANEGE_STATE,
373 XCAP_STATE_MACHINE_STOP,
374}XCAP_STATE_MACHINE_ACTION;
375
376typedef enum {
377 XCAP_CLIP = 0,
378 XCAP_CLIR,
379 XCAP_COLP,
380 XCAP_COLR,
381 XCAP_CF,
382 XCAP_ICB,
383 XCAP_OCB,
384 XCAP_CB_ALL,
385 XCAP_CW,
386 XCAP_ROOT,
387}XCAP_SS_NAME;
388
389typedef enum {
390 MMI_DISABLE = 0,
391 MMI_ENABLE,
392 MMI_REGISTRATION,
393 MMI_ERASURE,
394 MMI_QUERY,
395 MMI_DELETE,
yu.donge372c322023-08-30 20:25:04 -0700396 MMI_NW_DEFAULT,
rjw6c1fd8f2022-11-30 14:33:01 +0800397 MMI_UNKNOWN,
398}XCAP_CLIENT_MMI_CODE;
399
400typedef enum {
401 XCAP_SS_CLIP = 0,
402 XCAP_SS_CLIR,
403 XCAP_SS_COLP,
404 XCAP_SS_COLR,
405 XCAP_SS_CF_UNCONDITIONAL,
406 XCAP_SS_CF_BUSY,
407 XCAP_SS_CF_NO_REPLY,
408 XCAP_SS_CF_NOT_REACHABLE,
409 XCAP_SS_CF_ALL,
410 XCAP_SS_CF_ALL_CONDITIONAL,
411 XCAP_SS_CF_NO_REPLY_TIMER,
412 XCAP_SS_CF_NOT_REGISTERED,
413 XCAP_SS_CB_BAOC,
414 XCAP_SS_CB_BAOIC,
415 XCAP_SS_CB_BAOICxH,
416 XCAP_SS_CB_BAIC,
417 XCAP_SS_CB_BAICr,
418 XCAP_SS_CB_BAICa, // incomming call barring anonymous
419 XCAP_SS_CB_BAIIC, // incomming call barring international
420 XCAP_SS_CB_ALL,
421 XCAP_SS_CB_BA_MO,
422 XCAP_SS_CB_BA_MT,
423 XCAP_SS_CB_BA_SIM,
424 XCAP_SS_CB_BA_FD,
425 XCAP_SS_CW,
426 XCAP_SS_UNKNOWN,
427}XCAP_CLIENT_SS_CODE;
428
429// XCAP Client
430
431// XCAP SIM MGR
432typedef enum {
433 XCAP_SIM_TYPE_USIM = 0,
434 XCAP_SIM_TYPE_ISIM,
435 XCAP_SIM_TYPE_GSIM, //GSM SIM
436 XCAP_SIM_TYPE_MAX,
437}XCAP_SIM_MGR_SIM_TYPE;
438
439typedef enum {
440 XCAP_SIM_STATE_NOT_READY = 0,
441 XCAP_SIM_STATE_READY,
442 XCAP_SIM_STATE_REFRESH,
443}XCAP_SIM_MGR_SIM_STATE;
444// XCAP SIM MGR
445
446typedef struct {
447 LOCAL_PARA_HDR
448 kal_uint8 sim_id;
449 kal_bool result;
450 XCAP_NW_ERROR_DETAIL_INFO nw_error_info;
451 kal_bool is_extend_timer_disable;
452}XCAP_LOCAL_PARA_STRUCT;
453
454typedef struct
455{
456 kal_char method[7];
457 kal_char *url;
458 kal_uint32 url_length;
459 kal_char *mime;
460 kal_uint32 mime_length;
461 kal_char *content;
462 kal_uint32 content_length;
463 kal_char *etag;
464 kal_uint32 etag_length;
465}GBA_UA_REQ_STRUCT;
466
467typedef struct
468{
469 XCAP_LOCAL_PARA_STRUCT local_param;
470 GBA_UA_REQ_STRUCT data;
471}GBA_UA_REQ_ILM_STRUCT;
472
473typedef struct
474{
475 HTTP_RESPONSE_CODE response;
476 char *response_body;
477 kal_uint32 response_body_length;
478 kal_char *etag;
479 kal_uint32 etag_length;
480}GBA_UA_RSP_STRUCT;
481
482typedef struct
483{
484 XCAP_LOCAL_PARA_STRUCT local_param;
485 GBA_UA_RSP_STRUCT data;
486}GBA_UA_RSP_ILM_STRUCT;
487
488typedef struct
489{
490 XCAP_LOCAL_PARA_STRUCT local_param;
491}GBA_UA_ERROR_STRUCT;
492
493typedef struct
494{
495 char naf_id[128];
496 kal_uint32 naf_id_len;
497}GBA_UA_NAF_INFO;
498
499typedef struct
500{
501 GBA_UA_NAF_INFO naf;
502 kal_bool is_ub_only;
503 kal_bool is_egba_force_run;
504}GBA_UB_REQ_STRUCT;
505
506typedef struct
507{
508 XCAP_LOCAL_PARA_STRUCT local_param;
509 GBA_UB_REQ_STRUCT data;
510}GBA_UB_REQ_ILM_STRUCT;
511
512typedef struct
513{
514 HTTP_RESPONSE_CODE response;
515 char *response_body;
516 kal_uint32 response_body_length;
517}GBA_UB_RSP_STRUCT;
518
519typedef struct
520{
521 XCAP_LOCAL_PARA_STRUCT local_param;
522 GBA_UB_RSP_STRUCT data;
523}GBA_UB_RSP_ILM_STRUCT;
524
525typedef struct
526{
527 XCAP_LOCAL_PARA_STRUCT local_param;
528}GBA_UB_ERROR_STRUCT;
529
530typedef struct
531{
532 XCAP_LOCAL_PARA_STRUCT local_param;
533 char at_cmd[512];
534}GBA_UB_AT_CMD_REQ_STRUCT;
535
536typedef struct
537{
538 XCAP_LOCAL_PARA_STRUCT local_param;
539 HTTP_RESPONSE_CODE response;
540 char at_cmd[512];
541}GBA_UB_AT_CMD_RSP_STRUCT;
542
543typedef struct {
544 kal_bool update;
545 kal_uint32 sbp_id;
546 kal_char mcc[MAX_MCC_STR_LEN];
547 kal_char mnc[MAX_MNC_STR_LEN];
548} DSBP_RECONFIG_INFO_STRUCT;
549
550typedef struct
551{
552 XCAP_LOCAL_PARA_STRUCT local_param;
553 DSBP_RECONFIG_INFO_STRUCT data;
554} CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT;
555
556typedef struct {
557 kal_uint32 sbp_id;
558 kal_char mcc[MAX_MCC_STR_LEN];
559 kal_char mnc[MAX_MNC_STR_LEN];
560 kal_bool test_sim;
561 kal_bool mcf_result;
562 xcap_cfg_t config;
563} XCAP_CONFIG_INFO_STRUCT;
564
565typedef struct
566{
567 XCAP_LOCAL_PARA_STRUCT local_param;
568} CONFIG_DUMP_REQ_ILM_STRUCT;
569
570typedef struct
571{
572 XCAP_LOCAL_PARA_STRUCT local_param;
573 XCAP_CONFIG_INFO_STRUCT data;
574} CONFIG_DUMP_CNF_ILM_STRUCT;
575
576typedef struct
577{
578#if defined(__HTTP_TLS_SUPPORT__)
579 XCAP_LOCAL_PARA_STRUCT local_param;
580#else
581 LOCAL_PARA_HDR
582#endif
583 void *data;
584 kal_uint32 data_length;
585} HTTP_REQ_ILM_STRUCT;
586
587typedef struct
588{
rjw04b9c952023-03-28 14:35:43 +0800589 XCAP_LOCAL_PARA_STRUCT local_param;
590 kal_bool is_wfc_only_pdn;
591} HTTP_IND_ILM_STRUCT;
592
593typedef struct
594{
rjw6c1fd8f2022-11-30 14:33:01 +0800595#if defined(__HTTP_TLS_SUPPORT__)
596 XCAP_LOCAL_PARA_STRUCT local_param;
597#else
598 LOCAL_PARA_HDR
599#endif
600 void *data;
601 kal_uint32 data_length;
602} HTTP_RSP_ILM_STRUCT;
603
604#define MAX_FQDN_LEN DNS_MAX_NAME_LENGTH
605#define MAX_DNS_NAMESPACE_LEN MAX_FQDN_LEN
606#define MAX_PROTOCOL_LEN 6
607#define MAX_NUM_OF_DNS_RESPONSE DNS_MAX_SRV_ENTRY * DNS_MAX_NAPTR_ENTRY //2*3 = 6
608
609typedef enum {
610 QUERY_TYPE_NONE,
611 QUERY_TYPE_SRV,
612 QUERY_TYPE_NAPTR,
613 QUERY_TYPE_A_AAA,
614 QUERY_TYPE_MAX
615} XCAP_DNS_QUERY_TYPE;
616
617typedef enum {
618 XCAP_DNS_CACHE_IP_STATUS_RECORD_EXPIRED = -3,
619 XCAP_DNS_CACHE_IP_STATUS_RUN_OF_OUT_RECORD = -2,
620 XCAP_DNS_CACHE_IP_STATUS_NO_RECORD = -1,
621 XCAP_DNS_CACHE_IP_STATUS_SUCCESS = 0,
622} XCAP_DNS_CACHE_IP_STATUS;
623
624typedef struct {
625 XCAP_DNS_QUERY_TYPE type;
626 kal_uint8 sim_id;
627 kal_uint32 intf_id;
628 kal_uint32 trans_id;
629 kal_char protocol[MAX_PROTOCOL_LEN];
630 kal_char ns[MAX_DNS_NAMESPACE_LEN];
631 kal_int16 family;
632 kal_int16 flags;
633 kal_uint8 dns_server_priority;
634 kal_uint32 default_ttl;
635} XCAP_DNS_REQ;
636
637typedef struct
638{
639 XCAP_LOCAL_PARA_STRUCT local_param;
640 XCAP_DNS_REQ data;
641} DNS_REQ_ILM_STRUCT;
642
643typedef struct {
644 kal_char protocol[MAX_PROTOCOL_LEN];
645 kal_char fqdn[MAX_FQDN_LEN];
646 kal_int32 port;
647 kal_uint64 ttl;
648 kal_uint32 priority;
649}XCAP_DNS_ADDR;
650
651typedef struct {
652 kal_int32 addr_count;
653 kal_uint32 req_id;
654 XCAP_DNS_REQ request;
655 XCAP_DNS_ADDR addr_list[MAX_NUM_OF_DNS_RESPONSE];
656}XCAP_DNS_RSP;
657
658typedef struct
659{
660 XCAP_LOCAL_PARA_STRUCT local_param;
661 kal_uint32 dns_result;
662} DNS_RSP_ILM_STRUCT;
663
yu.donge372c322023-08-30 20:25:04 -0700664typedef struct {
665 LOCAL_PARA_HDR
666 kal_uint8 sim_id;
667}XCAP_LOCAL_PARA_SIM_STRUCT;
668
669typedef struct
670{
671 XCAP_LOCAL_PARA_SIM_STRUCT local_param;
672} GBA_UB_KEY_EXPIRY_TIMER_TIMEOUT_IND_ILM_STRUCT;
673
rjw6c1fd8f2022-11-30 14:33:01 +0800674/******************** XML ILM structure parsing *************************/
675// MSGID = MSG_ID_HELLO_WORLD, struct name = hello_world_struct
676// MSGID = MSG_ID_HELLO_GOODBYE, struct name = hello_goodbye_struct
677typedef GBA_UA_REQ_ILM_STRUCT xcap_gba_ua_send_req_struct; // MSG_ID_XCAP_GBA_UA_SEND_REQ
678typedef GBA_UA_RSP_ILM_STRUCT xcap_gba_ua_send_rsp_struct; // MSG_ID_XCAP_GBA_UA_SEND_RSP
679typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_sim_error_ind_struct; // MSG_ID_XCAP_GBA_UA_SIM_ERROR_IND
680typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_sim_error_cnf_struct; // MSG_ID_XCAP_GBA_UA_SIM_ERROR_CNF
681typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_force_abort_ind_struct; // MSG_ID_XCAP_GBA_UA_FORCE_ABORT_IND
682typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_force_abort_cnf_struct; // MSG_ID_XCAP_GBA_UA_FORCE_ABORT_CNF
683typedef GBA_UB_REQ_ILM_STRUCT xcap_gba_ub_send_req_struct; // MSG_ID_XCAP_GBA_UB_SEND_REQ
684typedef GBA_UB_RSP_ILM_STRUCT xcap_gba_ub_send_rsp_struct; // MSG_ID_XCAP_GBA_UB_SEND_RSP
685typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_sim_error_ind_struct; // MSG_ID_XCAP_GBA_UB_SIM_ERROR_IND
686typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_sim_error_cnf_struct; // MSG_ID_XCAP_GBA_UB_SIM_ERROR_CNF
687typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_force_abort_ind_struct; // MSG_ID_XCAP_GBA_UB_FORCE_ABORT_IND
688typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_force_abort_cnf_struct; // MSG_ID_XCAP_GBA_UB_FORCE_ABORT_CNF
689typedef GBA_UB_AT_CMD_REQ_STRUCT xcap_gba_ub_at_egba_req_struct; // MSG_ID_XCAP_GBA_UB_AT_EGBA_REQ
690typedef GBA_UB_AT_CMD_RSP_STRUCT xcap_gba_ub_at_egba_rsp_struct; // MSG_ID_XCAP_GBA_UB_AT_EGBA_RSP
691typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_create_connection_req_struct; // MSG_ID_XCAP_CONN_MGR_CREATE_CONNECTION_REQ
692typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_create_connection_rsp_struct; // MSG_ID_XCAP_CONN_MGR_CREATE_CONNECTION_RSP
693typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_close_connection_ind_struct; // MSG_ID_XCAP_CONN_MGR_CLOSE_CONNECTION_IND
694typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_close_connection_cnf_struct; // MSG_ID_XCAP_CONN_MGR_CLOSE_CONNECTION_CNF
695typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_disconnection_req_struct; // MSG_ID_XCAP_CONN_MGR_DISCONNECTION_REQ
696typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_disconnection_rsp_struct; // MSG_ID_XCAP_CONN_MGR_DISCONNECTION_RSP
697typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_sim_error_ind_struct; // MSG_ID_XCAP_CONN_MGR_SIM_ERROR_IND
698typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_sim_error_cnf_struct; // MSG_ID_XCAP_CONN_MGR_SIM_ERROR_CNF
699typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_ss_atcmd_cnf_struct; // MSG_ID_XCAP_CONN_MGR_SS_ATCMD_CNF
700typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_query_sim_info_req_struct; // MSG_ID_XCAP_SIM_MGR_QUERY_SIM_INFO_REQ
701typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_query_sim_info_rsp_struct; // MSG_ID_XCAP_SIM_MGR_QUERY_SIM_INFO_RSP
702typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_sim_error_ind_struct; // MSG_ID_XCAP_SIM_MGR_SIM_ERROR_IND
703typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_sim_error_cnf_struct; // MSG_ID_XCAP_SIM_MGR_SIM_ERROR_CNF
704typedef CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT xcap_config_dsbp_reconfig_ind_struct; // MSG_ID_XCAP_CONFIG_DSBP_RECONFIG_IND
705typedef CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT xcap_config_reconfig_ind_struct; // MSG_ID_XCAP_CONFIG_RECONFIG_IND
706typedef CONFIG_DUMP_REQ_ILM_STRUCT xcap_config_dump_req_struct; // MSG_ID_XCAP_CONFIG_DUMP_REQ
707typedef CONFIG_DUMP_CNF_ILM_STRUCT xcap_config_dump_cnf_struct; // MSG_ID_XCAP_CONFIG_DUMP_CNF
708typedef HTTP_REQ_ILM_STRUCT xcap_http_delegate_send_http_req_struct; // MSG_ID_XCAP_HTTP_DELEGATE_SEND_HTTP_REQ
709typedef HTTP_RSP_ILM_STRUCT xcap_http_delegate_send_http_rsp_struct; // MSG_ID_XCAP_HTTP_DELEGATE_SEND_HTTP_RSP
710typedef HTTP_REQ_ILM_STRUCT xcap_http_connection_send_http_req_struct; // MSG_ID_XCAP_HTTP_CONNECTION_SEND_HTTP_REQ
711typedef HTTP_RSP_ILM_STRUCT xcap_http_connection_send_http_rsp_struct; // MSG_ID_XCAP_HTTP_CONNECTION_SEND_HTTP_RSP
rjw04b9c952023-03-28 14:35:43 +0800712typedef HTTP_IND_ILM_STRUCT xcap_http_connection_pdn_on_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_PDN_ON_IND
rjw6c1fd8f2022-11-30 14:33:01 +0800713typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_pdn_off_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_PDN_OFF_IND
714typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_abort_ind_struct; //MSG_ID_XCAP_HTTP_CONNECTION_FORCE_ABORT_IND
715typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_abort_cnf_struct; //MSG_ID_XCAP_HTTP_CONNECTION_FORCE_ABORT_CNF
716typedef DNS_REQ_ILM_STRUCT xcap_dns_naptr_resolve_req_struct; //MSG_ID_XCAP_DNS_NAPTR_RESOLVE_REQ
717typedef DNS_RSP_ILM_STRUCT xcap_dns_naptr_resolve_rsp_struct; //MSG_ID_XCAP_DNS_NAPTR_RESOLVE_RSP
718typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_close_connection_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_FORCE_CLOSE_CONNECTION_IND
719
720#endif