blob: 9fb4cb2203113b06264c6cd57f78a3d862b156e4 [file] [log] [blame]
yu.dongc33b3072024-08-21 23:14:49 -07001/*****************************************************************************
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 *
56 * 04 22 2022 jani.manninen
57 * [MOLY00759459] [IMS][IMS-SS] TIM (VoLTE_IMS Smartphone and Tablet v2.2) - XCAP If-Match header support
58 *
59 * XCAP If-match header support - IF/Config
60 *
61 * 03 16 2022 ot_gang.zhang
62 * [MOLY00804303] [Moto][TMO][Austin][RCS] GBA failed
63 *
64 * .
65 *
66 * 02 10 2022 ot_yaoxing.li
67 * [MOLY00721691] ��6833�����п�2ȥ����������æ����ǰת�����óɹ��󱻽�ʧ�ܣ�������ʾ����ͨ���У���2���䵽GSM-1037
68 *
69 * .
70 *
71 * 11 09 2020 mika.kaikkonen
72 * [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
73 *
74 * XCAP Reset fix. SWRD part.
75 *
76 * 09 18 2020 xiaolong.rao
77 * [MOLY00565295] Telus requirement TELUS-v11.0_VoLTE-137 and TELUS-v11.0_VoLTE-138 DNS Failover
78 *
79 * DNS failover - SWRD.
80 *
81 * 09 18 2020 xiaolong.rao
82 * [MOLY00563448] [98 XCAP][Telus][Requirement] Request update Noreplytimer only feature
83 *
84 * Update no reply timer - SWRD.
85 *
86 * 06 30 2020 deepti.singh
87 * [MOLY00535515] NAPTR/SRv check-in
88 * NVRAM, custom-config & interface changes
89 *
90 * 05 07 2020 deepti.singh
91 * [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.
92 *
93 * 04 16 2020 howen.pu
94 * [MOLY00500885] [Gen97][XCAP][CM] Concurrent PDN support across SIM & FSM changes due to Gen97 re-arch
95 * CL 10971946 sync from VMOLY.0316.DEV to NR15.R3.MP
96 *
97 * 04 15 2020 deepti.singh
98 * [MOLY00500885] [Gen97][XCAP][CM] Concurrent PDN support across SIM & FSM changes due to Gen97 re-arch
99 *
100 * 04 15 2020 ya.li
101 * [MOLY00470399] [Gen97]HTTP Delete function
102 *
103 * .
104 *
105 * 03 26 2020 ya.li
106 * [MOLY00470399] [Gen97]HTTP Delete function
107 *
108 * [SWRD domain].
109 *
110 * 01 10 2020 ya.li
111 * [MOLY00470399] [Gen97]HTTP Delete function
112 *
113 * .
114 * 03 31 2020 ya.li
115 * [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.
116 *
117 * .
118 *
119 * 01 09 2020 deepti.singh
120 * [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.
121 *
122 * 09 24 2019 howen.pu
123 * [MOLY00440880] EM info with XCAP information
124 *
125 * XCAP - Interface Part
126 *
127 * 07 10 2019 can.lin
128 * [MOLY00420639] Sync XCAP UMOLYE CRs to VMOLY 2
129 * Sync UMOLYE CRs to VMOLY - Interface part
130 *
131 * [MOLY00405483]
132 * [MOLY00407914]
133 * [MOLY00407776]
134 * [MOLY00414355]
135 * [MOLY00416017]
136 * [MOLY00414964]
137 *
138 * 07 04 2019 actory.ou
139 * [MOLY00418376] [XCAP 2.0] Enhance XCAP feature
140 * [VMOLY][OA] sync patch from gen95
141 *
142 * 07 04 2019 can.lin
143 * [MOLY00418376] [Sync to VMOLY][XCAP 2.0] Enhance XCAP feature
144 *
145 * XCAP interface part
146 *
147 * 05 22 2019 howen.pu
148 * [MOLY00406575] Dump XCAP configuraion when exiting flight mode
149 * Patch back UMOLYE MOLY004041553 & MOLY00402624 & MOLY00403335
150 *
151 * 01 28 2019 cs.huang
152 * [MOLY00381872] [VMOLY] XCAP merge from UMOLYE
153 * XCAP sync from UMOLYE (OA part)
154 *
155 * 12 28 2018 howen.pu
156 * [MOLY00374881] Gen95 XCAP - USIR
157 * Gen 95 USIR - For XCAP.
158 *
159 * 12 28 2018 howen.pu
160 * [MOLY00374881] Gen95 XCAP - USIR
161 *
162 * Gen 95 USIR - For XCAP.
163 *
164 * 10 08 2018 howen.pu
165 * [MOLY00357240] Runtime dump XCAP Config
166 * DUMP runtime XCAP config by AT cmd and EELT test inject message.
167 *
168 * 08 02 2018 actory.ou
169 * [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
170 * fix dual req
171 *
172 * 07 06 2018 can.lin
173 * [MOLY00337061] [HUAWEI Requirement] Handling specific response code by network
174 * [Huawei Requirement][95 XCAP] 843 error code handling
175 *
176 * XCAP receives error code 843 which indicates XCAP service of the current SIM is the not allowed
177 *
178 * 07 04 2018 can.lin
179 * [MOLY00336966] [95XCAP New Feature] XCAP Unprovisioned node config support
180 * [95 XCAP] New feature: XCAP Unprovisioned node config support
181 *
182 * 07 03 2018 actory.ou
183 * [MOLY00336746] [MT3967][Eiger][o1][CU FT][CD][CAT][SIM1:CU][SIM2:CU][ASSERT] file:mcu/protocol/xcap/cm/src/xcap_cm.c line:902
184 * [xcap] handle when disconnect req & deact ind come together
185 *
186 *
187****************************************************************************/
188#ifndef _XCAP_IF_H
189#define _XCAP_IF_H
190
191#include "kal_public_defs.h"
192#include "ps_public_enum.h"
193#include "xcap_nvram_def.h"
194#include "dns_common_defs.h"
195
196#define XCAP_XUI_MGR_INFO_MAX_SIZE 512 //IMC_ATCMD_MAX_CMDLINE_LEN
197
198typedef enum
199{
200 GBA_ME = 0,
201 GBA_U,
202}GBA_UB_GBA_TYPE;
203
204typedef enum
205{
206 GBA_USIM = 0,
207 GBA_ISIM = 1,
208}GBA_UB_SIM_TYPE;
209
210typedef enum
211{
212 GBA_STATE_MACHINE_NONE,
213 GBA_STATE_MACHINE_NEXT_ACTION,
214 GBA_STATE_MACHINE_CHANGE_ACTION,
215 GBA_STATE_MACHINE_STOP,
216}GBA_STATE_MACHINE_ACTION;
217
218typedef enum
219{
220 GBA_SEND_HTTP_STATUS_IDLE,
221 GBA_SEND_HTTP_STATUS_SEND_BY_UA,
222 GBA_SEND_HTTP_STATUS_SEND_BY_UB,
223}GBA_SEND_HTTP_STATUS;
224
225typedef enum
226{
227 GBA_SIM_RSP_OK = 0,
228 GBA_SIM_RSP_FAIL = 1,
229 GBA_AKA_RSP_OK = 0xDB,
230 GBA_AKA_RSP_FAIL = 0xDC,
231}GBA_SIM_RESULT_CODE;
232
233typedef enum
234{
235 HTTP_GENERIC_ERROR = 0,
236 //************* HTTP spec **************
237 HTTP_RESPONSE_SPEC_DEFINED_START = 100,
238 // 1xx Informational responses
239 HTTP_RESPONSE_100_CONTINUE = 100,
240 HTTP_RESPONSE_101_SWITCHING_PROTOCOLS = 101,
241 HTTP_RESPONSE_102_PROCESSING = 102,
242 // 2xx Success
243 HTTP_RESPONSE_200_OK = 200,
244 HTTP_RESPONSE_201_CREATED = 201,
245 HTTP_RESPONSE_202_ACCEPTED = 202,
246 HTTP_RESPONSE_203_NON_AUTHORITATICE_INFORMATION = 203,
247 HTTP_RESPONSE_204_NO_CONTENT = 204,
248 HTTP_RESPONSE_205_RESET_CONTENT = 205,
249 HTTP_RESPONSE_206_PARTIAL_CONTENT = 206,
250 HTTP_RESPONSE_207_MULTI_STATUS = 207,
251 HTTP_RESPONSE_208_ALREADY_REPORTED = 208,
252 HTTP_RESPONSE_226_IM_USED = 226,
253 // 3xx Redirection
254 HTTP_RESPONSE_300_MULTIPLE_CHOICES = 300,
255 HTTP_RESPONSE_301_MOVED_PERMANENTLY = 301,
256 HTTP_RESPONSE_302_FOUND = 302,
257 HTTP_RESPONSE_303_SEE_OTHER = 303,
258 HTTP_RESPONSE_304_NOT_MODIFIED = 304,
259 HTTP_RESPONSE_305_USE_PROXY = 305,
260 HTTP_RESPONSE_306_SWITCH_PROXY = 306,
261 HTTP_RESPONSE_307_TEMPORARY_REDIRECT = 307,
262 HTTP_RESPONSE_308_PERMANENT_REDIRECT = 308,
263 // 4xx Client errors
264 HTTP_RESPONSE_400_BAD_REQUEST = 400,
265 HTTP_RESPONSE_401_UNAUTHORIZED = 401,
266 HTTP_RESPONSE_403_FORBIDDEN = 403,
267 HTTP_RESPONSE_404_NOT_FOUND = 404,
268 HTTP_RESPONSE_405_METHOD_NOT_ALLOWED = 405,
269 HTTP_RESPONSE_406_NOT_ACCEPTABLE = 406,
270 HTTP_RESPONSE_407_PROXY_AUTHENTICATION_REQUIRED = 407,
271 HTTP_RESPONSE_408_REQUEST_TIMEOUT = 408,
272 HTTP_RESPONSE_409_CONFLICT = 409,
273 HTTP_RESPONSE_410_GONE = 410,
274 HTTP_RESPONSE_411_LENGTH_REQUIRED = 411,
275 HTTP_RESPONSE_412_PRECONDITION_FAILED = 412,
276 HTTP_RESPONSE_413_REQUEST_ENTITY_TOO_LARGE = 413,
277 HTTP_RESPONSE_414_REQUEST_URI_TOO_LONG = 414,
278 HTTP_RESPONSE_415_UNSUPPORTED_MEDIA_TYPE = 415,
279 HTTP_RESPONSE_416_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
280 HTTP_RESPONSE_417_EXPECTATION_FAILED = 417,
281 HTTP_RESPONSE_418_IM_A_TEAPOT = 418,
282 HTTP_RESPONSE_420_ENHANCE_YOUR_CAIM = 420,
283 HTTP_RESPONSE_421_MISDIRECTED_REQUEST = 421,
284 HTTP_RESPONSE_422_UNPROCESSABLE_ENTITY = 422,
285 HTTP_RESPONSE_423_LOCKED = 423,
286 HTTP_RESPONSE_424_FAILED_DEPENDENCY = 424,
287 HTTP_RESPONSE_425_UNORDERED_COLLECTION = 425,
288 HTTP_RESPONSE_426_UPGRADE_REQUIRED = 426,
289 HTTP_RESPONSE_428_PRECONDITION_REQUIRED = 428,
290 HTTP_RESPONSE_429_TOO_MANY_REQUESTS = 429,
291 HTTP_RESPONSE_431_REQUEST_HEADER_FIELDS_TOO_LARGE = 431,
292 HTTP_RESPONSE_444_NO_RESPONSE = 444,
293 HTTP_RESPONSE_450_BLOCKED_BY_WINDOWS_PARENTAL_CONTROLS = 450,
294 HTTP_RESPONSE_451_UNAVAILABLE_FOR_LEGAL_REASONS = 451,
295 HTTP_RESPONSE_494_REQUEST_HEADER_TOO_LARGE = 494,
296 // 5xx Server errors
297 HTTP_RESPONSE_500_INTERNAL_SERVER_ERROR = 500,
298 HTTP_RESPONSE_501_NOT_IMPLEMETED = 501,
299 HTTP_RESPONSE_502_BAD_GATEWAY = 502,
300 HTTP_RESPONSE_503_SERVICE_UNAVAILABLE = 503,
301 HTTP_RESPONSE_504_GATEWAY_TIMEOUT = 504,
302 HTTP_RESPONSE_505_HTTP_VERSION_NOT_SUPPORTED = 505,
303 HTTP_RESPONSE_506_VARIANT_ALSO_NEGOTIATES = 506,
304 HTTP_RESPONSE_507_INSUFFICIENT_STORAGE = 507,
305 HTTP_RESPONSE_508_LOOP_DETECTED = 508,
306 HTTP_RESPONSE_510_NOT_EXTENDED = 510,
307 HTTP_RESPONSE_511_NETWORK_AUTHENTICATION_REQUIRED = 511,
308 HTTP_RESPONSE_SPEC_DEFINED_MAX = 600,
309 // 8xx Network errors
310 HTTP_RESPONSE_831_NETWORK_TIMEOUT = 831,
311 // 95 XCAP defined
312 XCAP_RESPONSE_840_CANNOT_SERVICE_NOW = 840,
313 XCAP_RESPONSE_841_SIM_ERROR = 841,
314 XCAP_RESPONSE_842_UNEXPECTED_ATCMD = 842,
315 XCAP_RESPONSE_843_SERVICE_NOT_SUPPORTED = 843,
316 XCAP_RESPONSE_844_UNPROVISIONED_SERVICE = 844,
317 //************* MTK defined ***************
318 HTTP_RESPONSE_MTK_DEFINED_START = 1000,
319 // 10xx XCAP internal errors
320 // 11xx GBA internal errors
321 HTTP_RESPONSE_1101_BTID_NULL = 1101,
322 HTTP_RESPONSE_1102_SIM_AKA_CALC_ERROR = 1102,
323 HTTP_RESPONSE_1103_SERVER_NONCE_ERROR = 1103,
324 HTTP_RESPONSE_1104_UA_ERROR = 1104,
325 HTTP_RESPONSE_1105_UB_ERROR = 1105,
326 HTTP_RESPONSE_1106_NAF_KEY_ERROR = 1106,
327 HTTP_RESPONSE_MTK_DEFINED_MAX = 2000,
328 HTTP_RESPONSE_ENUM_MAX = 0x7FFFFFFF,
329}HTTP_RESPONSE_CODE;
330
331typedef enum {
332 XCAP_NW_ERROR_NONE = 0,
333 XCAP_NW_ERROR_NW_NO_RESPONSE = 1,
334 XCAP_NW_ERROR_GEMINI_ISSUE = 2,
335 XCAP_NW_ERROR_CANNOT_CONNECT_TO_SERVER = 3,
336 XCAP_NW_ERROR_PS_ALWAYS_FAIL = 4,
337 XCAP_NW_EEROR_SERVICE_NOT_SUPPORTED = 5, // network not support this sim do xcap
338} XCAP_NW_ERROR_DETAIL_INFO;
339
340//XCAP CM ENUM
341typedef enum {
342 XCAP_CM_STATE_NONE = 0,
343 XCAP_CM_STATE_NO_PDN,
344 XCAP_CM_STATE_ACQUIRING_RF_SEMAPHORE,
345 XCAP_CM_STATE_PROFILE,
346 XCAP_CM_STATE_HAS_PROFILE_ACQUIRING_RF_SEMAPHORE,
347 XCAP_CM_STATE_ACT_DATA_CALL,
348 XCAP_CM_STATE_HAS_PDN_CONNECTION,
349 XCAP_CM_STATE_HAS_PDN_CONNECTION_ACQUIRING_RF_SEMAPHORE,
350 XCAP_CM_STATE_WAIT_ACT_DATA_CALL_DONE = -1,
351 XCAP_CM_STATE_PDN_RELEASING = -2,
352 XCAP_CM_STATE_PDN_RELEASE_DONE = -3,
353 XCAP_CM_STATE_WAIT_ACQUIRE_RF_SEMAPHORE_CNF = -4,
354 XCAP_CM_STATE_HAS_PDN_CONNECTION_WAIT_ACQUIRE_RF_SEMAPHORE_CNF = -5,
355} XCAP_CM_STATE_ENUM;
356//XCAP CM ENUM
357
358// XCAP Client
359typedef enum {
360 XCAP_STATE_MACHINE_NONE,
361 XCAP_STATE_MACHINE_NEXT_STATE,
362 XCAP_STATE_MACHINE_CHANEGE_STATE,
363 XCAP_STATE_MACHINE_STOP,
364}XCAP_STATE_MACHINE_ACTION;
365
366typedef enum {
367 XCAP_CLIP = 0,
368 XCAP_CLIR,
369 XCAP_COLP,
370 XCAP_COLR,
371 XCAP_CF,
372 XCAP_ICB,
373 XCAP_OCB,
374 XCAP_CB_ALL,
375 XCAP_CW,
376 XCAP_ROOT,
377}XCAP_SS_NAME;
378
379typedef enum {
380 MMI_DISABLE = 0,
381 MMI_ENABLE,
382 MMI_REGISTRATION,
383 MMI_ERASURE,
384 MMI_QUERY,
385 MMI_DELETE,
386 MMI_UNKNOWN,
387}XCAP_CLIENT_MMI_CODE;
388
389typedef enum {
390 XCAP_SS_CLIP = 0,
391 XCAP_SS_CLIR,
392 XCAP_SS_COLP,
393 XCAP_SS_COLR,
394 XCAP_SS_CF_UNCONDITIONAL,
395 XCAP_SS_CF_BUSY,
396 XCAP_SS_CF_NO_REPLY,
397 XCAP_SS_CF_NOT_REACHABLE,
398 XCAP_SS_CF_ALL,
399 XCAP_SS_CF_ALL_CONDITIONAL,
400 XCAP_SS_CF_NO_REPLY_TIMER,
401 XCAP_SS_CF_NOT_REGISTERED,
402 XCAP_SS_CB_BAOC,
403 XCAP_SS_CB_BAOIC,
404 XCAP_SS_CB_BAOICxH,
405 XCAP_SS_CB_BAIC,
406 XCAP_SS_CB_BAICr,
407 XCAP_SS_CB_BAICa, // incomming call barring anonymous
408 XCAP_SS_CB_BAIIC, // incomming call barring international
409 XCAP_SS_CB_ALL,
410 XCAP_SS_CB_BA_MO,
411 XCAP_SS_CB_BA_MT,
412 XCAP_SS_CB_BA_SIM,
413 XCAP_SS_CB_BA_FD,
414 XCAP_SS_CW,
415 XCAP_SS_UNKNOWN,
416}XCAP_CLIENT_SS_CODE;
417
418// XCAP Client
419
420// XCAP SIM MGR
421typedef enum {
422 XCAP_SIM_TYPE_USIM = 0,
423 XCAP_SIM_TYPE_ISIM,
424 XCAP_SIM_TYPE_GSIM, //GSM SIM
425 XCAP_SIM_TYPE_MAX,
426}XCAP_SIM_MGR_SIM_TYPE;
427
428typedef enum {
429 XCAP_SIM_STATE_NOT_READY = 0,
430 XCAP_SIM_STATE_READY,
431 XCAP_SIM_STATE_REFRESH,
432}XCAP_SIM_MGR_SIM_STATE;
433// XCAP SIM MGR
434
435typedef struct {
436 LOCAL_PARA_HDR
437 kal_uint8 sim_id;
438 kal_bool result;
439 XCAP_NW_ERROR_DETAIL_INFO nw_error_info;
440 kal_bool is_extend_timer_disable;
441}XCAP_LOCAL_PARA_STRUCT;
442
443typedef struct
444{
445 kal_char method[7];
446 kal_char *url;
447 kal_uint32 url_length;
448 kal_char *mime;
449 kal_uint32 mime_length;
450 kal_char *content;
451 kal_uint32 content_length;
452 kal_char *etag;
453 kal_uint32 etag_length;
454}GBA_UA_REQ_STRUCT;
455
456typedef struct
457{
458 XCAP_LOCAL_PARA_STRUCT local_param;
459 GBA_UA_REQ_STRUCT data;
460}GBA_UA_REQ_ILM_STRUCT;
461
462typedef struct
463{
464 HTTP_RESPONSE_CODE response;
465 char *response_body;
466 kal_uint32 response_body_length;
467 kal_char *etag;
468 kal_uint32 etag_length;
469}GBA_UA_RSP_STRUCT;
470
471typedef struct
472{
473 XCAP_LOCAL_PARA_STRUCT local_param;
474 GBA_UA_RSP_STRUCT data;
475}GBA_UA_RSP_ILM_STRUCT;
476
477typedef struct
478{
479 XCAP_LOCAL_PARA_STRUCT local_param;
480}GBA_UA_ERROR_STRUCT;
481
482typedef struct
483{
484 char naf_id[128];
485 kal_uint32 naf_id_len;
486}GBA_UA_NAF_INFO;
487
488typedef struct
489{
490 GBA_UA_NAF_INFO naf;
491 kal_bool is_ub_only;
492 kal_bool is_egba_force_run;
493}GBA_UB_REQ_STRUCT;
494
495typedef struct
496{
497 XCAP_LOCAL_PARA_STRUCT local_param;
498 GBA_UB_REQ_STRUCT data;
499}GBA_UB_REQ_ILM_STRUCT;
500
501typedef struct
502{
503 HTTP_RESPONSE_CODE response;
504 char *response_body;
505 kal_uint32 response_body_length;
506}GBA_UB_RSP_STRUCT;
507
508typedef struct
509{
510 XCAP_LOCAL_PARA_STRUCT local_param;
511 GBA_UB_RSP_STRUCT data;
512}GBA_UB_RSP_ILM_STRUCT;
513
514typedef struct
515{
516 XCAP_LOCAL_PARA_STRUCT local_param;
517}GBA_UB_ERROR_STRUCT;
518
519typedef struct
520{
521 XCAP_LOCAL_PARA_STRUCT local_param;
522 char at_cmd[512];
523}GBA_UB_AT_CMD_REQ_STRUCT;
524
525typedef struct
526{
527 XCAP_LOCAL_PARA_STRUCT local_param;
528 HTTP_RESPONSE_CODE response;
529 char at_cmd[512];
530}GBA_UB_AT_CMD_RSP_STRUCT;
531
532typedef struct {
533 kal_bool update;
534 kal_uint32 sbp_id;
535 kal_char mcc[MAX_MCC_STR_LEN];
536 kal_char mnc[MAX_MNC_STR_LEN];
537} DSBP_RECONFIG_INFO_STRUCT;
538
539typedef struct
540{
541 XCAP_LOCAL_PARA_STRUCT local_param;
542 DSBP_RECONFIG_INFO_STRUCT data;
543} CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT;
544
545typedef struct {
546 kal_uint32 sbp_id;
547 kal_char mcc[MAX_MCC_STR_LEN];
548 kal_char mnc[MAX_MNC_STR_LEN];
549 kal_bool test_sim;
550 kal_bool mcf_result;
551 xcap_cfg_t config;
552} XCAP_CONFIG_INFO_STRUCT;
553
554typedef struct
555{
556 XCAP_LOCAL_PARA_STRUCT local_param;
557} CONFIG_DUMP_REQ_ILM_STRUCT;
558
559typedef struct
560{
561 XCAP_LOCAL_PARA_STRUCT local_param;
562 XCAP_CONFIG_INFO_STRUCT data;
563} CONFIG_DUMP_CNF_ILM_STRUCT;
564
565typedef struct
566{
567#if defined(__HTTP_TLS_SUPPORT__)
568 XCAP_LOCAL_PARA_STRUCT local_param;
569#else
570 LOCAL_PARA_HDR
571#endif
572 void *data;
573 kal_uint32 data_length;
574} HTTP_REQ_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_RSP_ILM_STRUCT;
586
587#define MAX_FQDN_LEN DNS_MAX_NAME_LENGTH
588#define MAX_DNS_NAMESPACE_LEN MAX_FQDN_LEN
589#define MAX_PROTOCOL_LEN 6
590#define MAX_NUM_OF_DNS_RESPONSE DNS_MAX_SRV_ENTRY * DNS_MAX_NAPTR_ENTRY //2*3 = 6
591
592typedef enum {
593 QUERY_TYPE_NONE,
594 QUERY_TYPE_SRV,
595 QUERY_TYPE_NAPTR,
596 QUERY_TYPE_A_AAA,
597 QUERY_TYPE_MAX
598} XCAP_DNS_QUERY_TYPE;
599
600typedef enum {
601 XCAP_DNS_CACHE_IP_STATUS_RECORD_EXPIRED = -3,
602 XCAP_DNS_CACHE_IP_STATUS_RUN_OF_OUT_RECORD = -2,
603 XCAP_DNS_CACHE_IP_STATUS_NO_RECORD = -1,
604 XCAP_DNS_CACHE_IP_STATUS_SUCCESS = 0,
605} XCAP_DNS_CACHE_IP_STATUS;
606
607typedef struct {
608 XCAP_DNS_QUERY_TYPE type;
609 kal_uint8 sim_id;
610 kal_uint32 intf_id;
611 kal_uint32 trans_id;
612 kal_char protocol[MAX_PROTOCOL_LEN];
613 kal_char ns[MAX_DNS_NAMESPACE_LEN];
614 kal_int16 family;
615 kal_int16 flags;
616 kal_uint8 dns_server_priority;
617 kal_uint32 default_ttl;
618} XCAP_DNS_REQ;
619
620typedef struct
621{
622 XCAP_LOCAL_PARA_STRUCT local_param;
623 XCAP_DNS_REQ data;
624} DNS_REQ_ILM_STRUCT;
625
626typedef struct {
627 kal_char protocol[MAX_PROTOCOL_LEN];
628 kal_char fqdn[MAX_FQDN_LEN];
629 kal_int32 port;
630 kal_uint64 ttl;
631 kal_uint32 priority;
632}XCAP_DNS_ADDR;
633
634typedef struct {
635 kal_int32 addr_count;
636 kal_uint32 req_id;
637 XCAP_DNS_REQ request;
638 XCAP_DNS_ADDR addr_list[MAX_NUM_OF_DNS_RESPONSE];
639}XCAP_DNS_RSP;
640
641typedef struct
642{
643 XCAP_LOCAL_PARA_STRUCT local_param;
644 kal_uint32 dns_result;
645} DNS_RSP_ILM_STRUCT;
646
647/******************** XML ILM structure parsing *************************/
648// MSGID = MSG_ID_HELLO_WORLD, struct name = hello_world_struct
649// MSGID = MSG_ID_HELLO_GOODBYE, struct name = hello_goodbye_struct
650typedef GBA_UA_REQ_ILM_STRUCT xcap_gba_ua_send_req_struct; // MSG_ID_XCAP_GBA_UA_SEND_REQ
651typedef GBA_UA_RSP_ILM_STRUCT xcap_gba_ua_send_rsp_struct; // MSG_ID_XCAP_GBA_UA_SEND_RSP
652typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_sim_error_ind_struct; // MSG_ID_XCAP_GBA_UA_SIM_ERROR_IND
653typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_sim_error_cnf_struct; // MSG_ID_XCAP_GBA_UA_SIM_ERROR_CNF
654typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_force_abort_ind_struct; // MSG_ID_XCAP_GBA_UA_FORCE_ABORT_IND
655typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_force_abort_cnf_struct; // MSG_ID_XCAP_GBA_UA_FORCE_ABORT_CNF
656typedef GBA_UB_REQ_ILM_STRUCT xcap_gba_ub_send_req_struct; // MSG_ID_XCAP_GBA_UB_SEND_REQ
657typedef GBA_UB_RSP_ILM_STRUCT xcap_gba_ub_send_rsp_struct; // MSG_ID_XCAP_GBA_UB_SEND_RSP
658typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_sim_error_ind_struct; // MSG_ID_XCAP_GBA_UB_SIM_ERROR_IND
659typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_sim_error_cnf_struct; // MSG_ID_XCAP_GBA_UB_SIM_ERROR_CNF
660typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_force_abort_ind_struct; // MSG_ID_XCAP_GBA_UB_FORCE_ABORT_IND
661typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_force_abort_cnf_struct; // MSG_ID_XCAP_GBA_UB_FORCE_ABORT_CNF
662typedef GBA_UB_AT_CMD_REQ_STRUCT xcap_gba_ub_at_egba_req_struct; // MSG_ID_XCAP_GBA_UB_AT_EGBA_REQ
663typedef GBA_UB_AT_CMD_RSP_STRUCT xcap_gba_ub_at_egba_rsp_struct; // MSG_ID_XCAP_GBA_UB_AT_EGBA_RSP
664typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_create_connection_req_struct; // MSG_ID_XCAP_CONN_MGR_CREATE_CONNECTION_REQ
665typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_create_connection_rsp_struct; // MSG_ID_XCAP_CONN_MGR_CREATE_CONNECTION_RSP
666typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_close_connection_ind_struct; // MSG_ID_XCAP_CONN_MGR_CLOSE_CONNECTION_IND
667typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_close_connection_cnf_struct; // MSG_ID_XCAP_CONN_MGR_CLOSE_CONNECTION_CNF
668typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_disconnection_req_struct; // MSG_ID_XCAP_CONN_MGR_DISCONNECTION_REQ
669typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_disconnection_rsp_struct; // MSG_ID_XCAP_CONN_MGR_DISCONNECTION_RSP
670typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_sim_error_ind_struct; // MSG_ID_XCAP_CONN_MGR_SIM_ERROR_IND
671typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_sim_error_cnf_struct; // MSG_ID_XCAP_CONN_MGR_SIM_ERROR_CNF
672typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_ss_atcmd_cnf_struct; // MSG_ID_XCAP_CONN_MGR_SS_ATCMD_CNF
673typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_query_sim_info_req_struct; // MSG_ID_XCAP_SIM_MGR_QUERY_SIM_INFO_REQ
674typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_query_sim_info_rsp_struct; // MSG_ID_XCAP_SIM_MGR_QUERY_SIM_INFO_RSP
675typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_sim_error_ind_struct; // MSG_ID_XCAP_SIM_MGR_SIM_ERROR_IND
676typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_sim_error_cnf_struct; // MSG_ID_XCAP_SIM_MGR_SIM_ERROR_CNF
677typedef CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT xcap_config_dsbp_reconfig_ind_struct; // MSG_ID_XCAP_CONFIG_DSBP_RECONFIG_IND
678typedef CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT xcap_config_reconfig_ind_struct; // MSG_ID_XCAP_CONFIG_RECONFIG_IND
679typedef CONFIG_DUMP_REQ_ILM_STRUCT xcap_config_dump_req_struct; // MSG_ID_XCAP_CONFIG_DUMP_REQ
680typedef CONFIG_DUMP_CNF_ILM_STRUCT xcap_config_dump_cnf_struct; // MSG_ID_XCAP_CONFIG_DUMP_CNF
681typedef HTTP_REQ_ILM_STRUCT xcap_http_delegate_send_http_req_struct; // MSG_ID_XCAP_HTTP_DELEGATE_SEND_HTTP_REQ
682typedef HTTP_RSP_ILM_STRUCT xcap_http_delegate_send_http_rsp_struct; // MSG_ID_XCAP_HTTP_DELEGATE_SEND_HTTP_RSP
683typedef HTTP_REQ_ILM_STRUCT xcap_http_connection_send_http_req_struct; // MSG_ID_XCAP_HTTP_CONNECTION_SEND_HTTP_REQ
684typedef HTTP_RSP_ILM_STRUCT xcap_http_connection_send_http_rsp_struct; // MSG_ID_XCAP_HTTP_CONNECTION_SEND_HTTP_RSP
685typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_pdn_on_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_PDN_ON_IND
686typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_pdn_off_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_PDN_OFF_IND
687typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_abort_ind_struct; //MSG_ID_XCAP_HTTP_CONNECTION_FORCE_ABORT_IND
688typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_abort_cnf_struct; //MSG_ID_XCAP_HTTP_CONNECTION_FORCE_ABORT_CNF
689typedef DNS_REQ_ILM_STRUCT xcap_dns_naptr_resolve_req_struct; //MSG_ID_XCAP_DNS_NAPTR_RESOLVE_REQ
690typedef DNS_RSP_ILM_STRUCT xcap_dns_naptr_resolve_rsp_struct; //MSG_ID_XCAP_DNS_NAPTR_RESOLVE_RSP
691typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_close_connection_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_FORCE_CLOSE_CONNECTION_IND
692
693#endif