blob: 9fb4cb2203113b06264c6cd57f78a3d862b156e4 [file] [log] [blame]
/*****************************************************************************
* Copyright Statement:
* --------------------
* This software is protected by Copyright and the information contained
* herein is confidential. The software may not be copied and the information
* contained herein may not be used or disclosed except with the written
* permission of MediaTek Inc. (C) 2012
*
* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
*
* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*****************************************************************************/
/*******************************************************************************
* Filename:
* ---------
* xcap_if.h
*
* Project:
* --------
* UMOLYA
*
* Description:
* ------------
*
*
* Author:
* -------
* -------
*
* ==========================================================================
* $Log$
*
* 04 22 2022 jani.manninen
* [MOLY00759459] [IMS][IMS-SS] TIM (VoLTE_IMS Smartphone and Tablet v2.2) - XCAP If-Match header support
*
* XCAP If-match header support - IF/Config
*
* 03 16 2022 ot_gang.zhang
* [MOLY00804303] [Moto][TMO][Austin][RCS] GBA failed
*
* .
*
* 02 10 2022 ot_yaoxing.li
* [MOLY00721691] ��6833�����п�2ȥ����������æ����ǰת�����óɹ��󱻽�ʧ�ܣ�������ʾ����ͨ���У���2���䵽GSM-1037
*
* .
*
* 11 09 2020 mika.kaikkonen
* [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
*
* XCAP Reset fix. SWRD part.
*
* 09 18 2020 xiaolong.rao
* [MOLY00565295] Telus requirement TELUS-v11.0_VoLTE-137 and TELUS-v11.0_VoLTE-138 DNS Failover
*
* DNS failover - SWRD.
*
* 09 18 2020 xiaolong.rao
* [MOLY00563448] [98 XCAP][Telus][Requirement] Request update Noreplytimer only feature
*
* Update no reply timer - SWRD.
*
* 06 30 2020 deepti.singh
* [MOLY00535515] NAPTR/SRv check-in
* NVRAM, custom-config & interface changes
*
* 05 07 2020 deepti.singh
* [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.
*
* 04 16 2020 howen.pu
* [MOLY00500885] [Gen97][XCAP][CM] Concurrent PDN support across SIM & FSM changes due to Gen97 re-arch
* CL 10971946 sync from VMOLY.0316.DEV to NR15.R3.MP
*
* 04 15 2020 deepti.singh
* [MOLY00500885] [Gen97][XCAP][CM] Concurrent PDN support across SIM & FSM changes due to Gen97 re-arch
*
* 04 15 2020 ya.li
* [MOLY00470399] [Gen97]HTTP Delete function
*
* .
*
* 03 26 2020 ya.li
* [MOLY00470399] [Gen97]HTTP Delete function
*
* [SWRD domain].
*
* 01 10 2020 ya.li
* [MOLY00470399] [Gen97]HTTP Delete function
*
* .
* 03 31 2020 ya.li
* [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.
*
* .
*
* 01 09 2020 deepti.singh
* [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.
*
* 09 24 2019 howen.pu
* [MOLY00440880] EM info with XCAP information
*
* XCAP - Interface Part
*
* 07 10 2019 can.lin
* [MOLY00420639] Sync XCAP UMOLYE CRs to VMOLY 2
* Sync UMOLYE CRs to VMOLY - Interface part
*
* [MOLY00405483]
* [MOLY00407914]
* [MOLY00407776]
* [MOLY00414355]
* [MOLY00416017]
* [MOLY00414964]
*
* 07 04 2019 actory.ou
* [MOLY00418376] [XCAP 2.0] Enhance XCAP feature
* [VMOLY][OA] sync patch from gen95
*
* 07 04 2019 can.lin
* [MOLY00418376] [Sync to VMOLY][XCAP 2.0] Enhance XCAP feature
*
* XCAP interface part
*
* 05 22 2019 howen.pu
* [MOLY00406575] Dump XCAP configuraion when exiting flight mode
* Patch back UMOLYE MOLY004041553 & MOLY00402624 & MOLY00403335
*
* 01 28 2019 cs.huang
* [MOLY00381872] [VMOLY] XCAP merge from UMOLYE
* XCAP sync from UMOLYE (OA part)
*
* 12 28 2018 howen.pu
* [MOLY00374881] Gen95 XCAP - USIR
* Gen 95 USIR - For XCAP.
*
* 12 28 2018 howen.pu
* [MOLY00374881] Gen95 XCAP - USIR
*
* Gen 95 USIR - For XCAP.
*
* 10 08 2018 howen.pu
* [MOLY00357240] Runtime dump XCAP Config
* DUMP runtime XCAP config by AT cmd and EELT test inject message.
*
* 08 02 2018 actory.ou
* [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
* fix dual req
*
* 07 06 2018 can.lin
* [MOLY00337061] [HUAWEI Requirement] Handling specific response code by network
* [Huawei Requirement][95 XCAP] 843 error code handling
*
* XCAP receives error code 843 which indicates XCAP service of the current SIM is the not allowed
*
* 07 04 2018 can.lin
* [MOLY00336966] [95XCAP New Feature] XCAP Unprovisioned node config support
* [95 XCAP] New feature: XCAP Unprovisioned node config support
*
* 07 03 2018 actory.ou
* [MOLY00336746] [MT3967][Eiger][o1][CU FT][CD][CAT][SIM1:CU][SIM2:CU][ASSERT] file:mcu/protocol/xcap/cm/src/xcap_cm.c line:902
* [xcap] handle when disconnect req & deact ind come together
*
*
****************************************************************************/
#ifndef _XCAP_IF_H
#define _XCAP_IF_H
#include "kal_public_defs.h"
#include "ps_public_enum.h"
#include "xcap_nvram_def.h"
#include "dns_common_defs.h"
#define XCAP_XUI_MGR_INFO_MAX_SIZE 512 //IMC_ATCMD_MAX_CMDLINE_LEN
typedef enum
{
GBA_ME = 0,
GBA_U,
}GBA_UB_GBA_TYPE;
typedef enum
{
GBA_USIM = 0,
GBA_ISIM = 1,
}GBA_UB_SIM_TYPE;
typedef enum
{
GBA_STATE_MACHINE_NONE,
GBA_STATE_MACHINE_NEXT_ACTION,
GBA_STATE_MACHINE_CHANGE_ACTION,
GBA_STATE_MACHINE_STOP,
}GBA_STATE_MACHINE_ACTION;
typedef enum
{
GBA_SEND_HTTP_STATUS_IDLE,
GBA_SEND_HTTP_STATUS_SEND_BY_UA,
GBA_SEND_HTTP_STATUS_SEND_BY_UB,
}GBA_SEND_HTTP_STATUS;
typedef enum
{
GBA_SIM_RSP_OK = 0,
GBA_SIM_RSP_FAIL = 1,
GBA_AKA_RSP_OK = 0xDB,
GBA_AKA_RSP_FAIL = 0xDC,
}GBA_SIM_RESULT_CODE;
typedef enum
{
HTTP_GENERIC_ERROR = 0,
//************* HTTP spec **************
HTTP_RESPONSE_SPEC_DEFINED_START = 100,
// 1xx Informational responses
HTTP_RESPONSE_100_CONTINUE = 100,
HTTP_RESPONSE_101_SWITCHING_PROTOCOLS = 101,
HTTP_RESPONSE_102_PROCESSING = 102,
// 2xx Success
HTTP_RESPONSE_200_OK = 200,
HTTP_RESPONSE_201_CREATED = 201,
HTTP_RESPONSE_202_ACCEPTED = 202,
HTTP_RESPONSE_203_NON_AUTHORITATICE_INFORMATION = 203,
HTTP_RESPONSE_204_NO_CONTENT = 204,
HTTP_RESPONSE_205_RESET_CONTENT = 205,
HTTP_RESPONSE_206_PARTIAL_CONTENT = 206,
HTTP_RESPONSE_207_MULTI_STATUS = 207,
HTTP_RESPONSE_208_ALREADY_REPORTED = 208,
HTTP_RESPONSE_226_IM_USED = 226,
// 3xx Redirection
HTTP_RESPONSE_300_MULTIPLE_CHOICES = 300,
HTTP_RESPONSE_301_MOVED_PERMANENTLY = 301,
HTTP_RESPONSE_302_FOUND = 302,
HTTP_RESPONSE_303_SEE_OTHER = 303,
HTTP_RESPONSE_304_NOT_MODIFIED = 304,
HTTP_RESPONSE_305_USE_PROXY = 305,
HTTP_RESPONSE_306_SWITCH_PROXY = 306,
HTTP_RESPONSE_307_TEMPORARY_REDIRECT = 307,
HTTP_RESPONSE_308_PERMANENT_REDIRECT = 308,
// 4xx Client errors
HTTP_RESPONSE_400_BAD_REQUEST = 400,
HTTP_RESPONSE_401_UNAUTHORIZED = 401,
HTTP_RESPONSE_403_FORBIDDEN = 403,
HTTP_RESPONSE_404_NOT_FOUND = 404,
HTTP_RESPONSE_405_METHOD_NOT_ALLOWED = 405,
HTTP_RESPONSE_406_NOT_ACCEPTABLE = 406,
HTTP_RESPONSE_407_PROXY_AUTHENTICATION_REQUIRED = 407,
HTTP_RESPONSE_408_REQUEST_TIMEOUT = 408,
HTTP_RESPONSE_409_CONFLICT = 409,
HTTP_RESPONSE_410_GONE = 410,
HTTP_RESPONSE_411_LENGTH_REQUIRED = 411,
HTTP_RESPONSE_412_PRECONDITION_FAILED = 412,
HTTP_RESPONSE_413_REQUEST_ENTITY_TOO_LARGE = 413,
HTTP_RESPONSE_414_REQUEST_URI_TOO_LONG = 414,
HTTP_RESPONSE_415_UNSUPPORTED_MEDIA_TYPE = 415,
HTTP_RESPONSE_416_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
HTTP_RESPONSE_417_EXPECTATION_FAILED = 417,
HTTP_RESPONSE_418_IM_A_TEAPOT = 418,
HTTP_RESPONSE_420_ENHANCE_YOUR_CAIM = 420,
HTTP_RESPONSE_421_MISDIRECTED_REQUEST = 421,
HTTP_RESPONSE_422_UNPROCESSABLE_ENTITY = 422,
HTTP_RESPONSE_423_LOCKED = 423,
HTTP_RESPONSE_424_FAILED_DEPENDENCY = 424,
HTTP_RESPONSE_425_UNORDERED_COLLECTION = 425,
HTTP_RESPONSE_426_UPGRADE_REQUIRED = 426,
HTTP_RESPONSE_428_PRECONDITION_REQUIRED = 428,
HTTP_RESPONSE_429_TOO_MANY_REQUESTS = 429,
HTTP_RESPONSE_431_REQUEST_HEADER_FIELDS_TOO_LARGE = 431,
HTTP_RESPONSE_444_NO_RESPONSE = 444,
HTTP_RESPONSE_450_BLOCKED_BY_WINDOWS_PARENTAL_CONTROLS = 450,
HTTP_RESPONSE_451_UNAVAILABLE_FOR_LEGAL_REASONS = 451,
HTTP_RESPONSE_494_REQUEST_HEADER_TOO_LARGE = 494,
// 5xx Server errors
HTTP_RESPONSE_500_INTERNAL_SERVER_ERROR = 500,
HTTP_RESPONSE_501_NOT_IMPLEMETED = 501,
HTTP_RESPONSE_502_BAD_GATEWAY = 502,
HTTP_RESPONSE_503_SERVICE_UNAVAILABLE = 503,
HTTP_RESPONSE_504_GATEWAY_TIMEOUT = 504,
HTTP_RESPONSE_505_HTTP_VERSION_NOT_SUPPORTED = 505,
HTTP_RESPONSE_506_VARIANT_ALSO_NEGOTIATES = 506,
HTTP_RESPONSE_507_INSUFFICIENT_STORAGE = 507,
HTTP_RESPONSE_508_LOOP_DETECTED = 508,
HTTP_RESPONSE_510_NOT_EXTENDED = 510,
HTTP_RESPONSE_511_NETWORK_AUTHENTICATION_REQUIRED = 511,
HTTP_RESPONSE_SPEC_DEFINED_MAX = 600,
// 8xx Network errors
HTTP_RESPONSE_831_NETWORK_TIMEOUT = 831,
// 95 XCAP defined
XCAP_RESPONSE_840_CANNOT_SERVICE_NOW = 840,
XCAP_RESPONSE_841_SIM_ERROR = 841,
XCAP_RESPONSE_842_UNEXPECTED_ATCMD = 842,
XCAP_RESPONSE_843_SERVICE_NOT_SUPPORTED = 843,
XCAP_RESPONSE_844_UNPROVISIONED_SERVICE = 844,
//************* MTK defined ***************
HTTP_RESPONSE_MTK_DEFINED_START = 1000,
// 10xx XCAP internal errors
// 11xx GBA internal errors
HTTP_RESPONSE_1101_BTID_NULL = 1101,
HTTP_RESPONSE_1102_SIM_AKA_CALC_ERROR = 1102,
HTTP_RESPONSE_1103_SERVER_NONCE_ERROR = 1103,
HTTP_RESPONSE_1104_UA_ERROR = 1104,
HTTP_RESPONSE_1105_UB_ERROR = 1105,
HTTP_RESPONSE_1106_NAF_KEY_ERROR = 1106,
HTTP_RESPONSE_MTK_DEFINED_MAX = 2000,
HTTP_RESPONSE_ENUM_MAX = 0x7FFFFFFF,
}HTTP_RESPONSE_CODE;
typedef enum {
XCAP_NW_ERROR_NONE = 0,
XCAP_NW_ERROR_NW_NO_RESPONSE = 1,
XCAP_NW_ERROR_GEMINI_ISSUE = 2,
XCAP_NW_ERROR_CANNOT_CONNECT_TO_SERVER = 3,
XCAP_NW_ERROR_PS_ALWAYS_FAIL = 4,
XCAP_NW_EEROR_SERVICE_NOT_SUPPORTED = 5, // network not support this sim do xcap
} XCAP_NW_ERROR_DETAIL_INFO;
//XCAP CM ENUM
typedef enum {
XCAP_CM_STATE_NONE = 0,
XCAP_CM_STATE_NO_PDN,
XCAP_CM_STATE_ACQUIRING_RF_SEMAPHORE,
XCAP_CM_STATE_PROFILE,
XCAP_CM_STATE_HAS_PROFILE_ACQUIRING_RF_SEMAPHORE,
XCAP_CM_STATE_ACT_DATA_CALL,
XCAP_CM_STATE_HAS_PDN_CONNECTION,
XCAP_CM_STATE_HAS_PDN_CONNECTION_ACQUIRING_RF_SEMAPHORE,
XCAP_CM_STATE_WAIT_ACT_DATA_CALL_DONE = -1,
XCAP_CM_STATE_PDN_RELEASING = -2,
XCAP_CM_STATE_PDN_RELEASE_DONE = -3,
XCAP_CM_STATE_WAIT_ACQUIRE_RF_SEMAPHORE_CNF = -4,
XCAP_CM_STATE_HAS_PDN_CONNECTION_WAIT_ACQUIRE_RF_SEMAPHORE_CNF = -5,
} XCAP_CM_STATE_ENUM;
//XCAP CM ENUM
// XCAP Client
typedef enum {
XCAP_STATE_MACHINE_NONE,
XCAP_STATE_MACHINE_NEXT_STATE,
XCAP_STATE_MACHINE_CHANEGE_STATE,
XCAP_STATE_MACHINE_STOP,
}XCAP_STATE_MACHINE_ACTION;
typedef enum {
XCAP_CLIP = 0,
XCAP_CLIR,
XCAP_COLP,
XCAP_COLR,
XCAP_CF,
XCAP_ICB,
XCAP_OCB,
XCAP_CB_ALL,
XCAP_CW,
XCAP_ROOT,
}XCAP_SS_NAME;
typedef enum {
MMI_DISABLE = 0,
MMI_ENABLE,
MMI_REGISTRATION,
MMI_ERASURE,
MMI_QUERY,
MMI_DELETE,
MMI_UNKNOWN,
}XCAP_CLIENT_MMI_CODE;
typedef enum {
XCAP_SS_CLIP = 0,
XCAP_SS_CLIR,
XCAP_SS_COLP,
XCAP_SS_COLR,
XCAP_SS_CF_UNCONDITIONAL,
XCAP_SS_CF_BUSY,
XCAP_SS_CF_NO_REPLY,
XCAP_SS_CF_NOT_REACHABLE,
XCAP_SS_CF_ALL,
XCAP_SS_CF_ALL_CONDITIONAL,
XCAP_SS_CF_NO_REPLY_TIMER,
XCAP_SS_CF_NOT_REGISTERED,
XCAP_SS_CB_BAOC,
XCAP_SS_CB_BAOIC,
XCAP_SS_CB_BAOICxH,
XCAP_SS_CB_BAIC,
XCAP_SS_CB_BAICr,
XCAP_SS_CB_BAICa, // incomming call barring anonymous
XCAP_SS_CB_BAIIC, // incomming call barring international
XCAP_SS_CB_ALL,
XCAP_SS_CB_BA_MO,
XCAP_SS_CB_BA_MT,
XCAP_SS_CB_BA_SIM,
XCAP_SS_CB_BA_FD,
XCAP_SS_CW,
XCAP_SS_UNKNOWN,
}XCAP_CLIENT_SS_CODE;
// XCAP Client
// XCAP SIM MGR
typedef enum {
XCAP_SIM_TYPE_USIM = 0,
XCAP_SIM_TYPE_ISIM,
XCAP_SIM_TYPE_GSIM, //GSM SIM
XCAP_SIM_TYPE_MAX,
}XCAP_SIM_MGR_SIM_TYPE;
typedef enum {
XCAP_SIM_STATE_NOT_READY = 0,
XCAP_SIM_STATE_READY,
XCAP_SIM_STATE_REFRESH,
}XCAP_SIM_MGR_SIM_STATE;
// XCAP SIM MGR
typedef struct {
LOCAL_PARA_HDR
kal_uint8 sim_id;
kal_bool result;
XCAP_NW_ERROR_DETAIL_INFO nw_error_info;
kal_bool is_extend_timer_disable;
}XCAP_LOCAL_PARA_STRUCT;
typedef struct
{
kal_char method[7];
kal_char *url;
kal_uint32 url_length;
kal_char *mime;
kal_uint32 mime_length;
kal_char *content;
kal_uint32 content_length;
kal_char *etag;
kal_uint32 etag_length;
}GBA_UA_REQ_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
GBA_UA_REQ_STRUCT data;
}GBA_UA_REQ_ILM_STRUCT;
typedef struct
{
HTTP_RESPONSE_CODE response;
char *response_body;
kal_uint32 response_body_length;
kal_char *etag;
kal_uint32 etag_length;
}GBA_UA_RSP_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
GBA_UA_RSP_STRUCT data;
}GBA_UA_RSP_ILM_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
}GBA_UA_ERROR_STRUCT;
typedef struct
{
char naf_id[128];
kal_uint32 naf_id_len;
}GBA_UA_NAF_INFO;
typedef struct
{
GBA_UA_NAF_INFO naf;
kal_bool is_ub_only;
kal_bool is_egba_force_run;
}GBA_UB_REQ_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
GBA_UB_REQ_STRUCT data;
}GBA_UB_REQ_ILM_STRUCT;
typedef struct
{
HTTP_RESPONSE_CODE response;
char *response_body;
kal_uint32 response_body_length;
}GBA_UB_RSP_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
GBA_UB_RSP_STRUCT data;
}GBA_UB_RSP_ILM_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
}GBA_UB_ERROR_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
char at_cmd[512];
}GBA_UB_AT_CMD_REQ_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
HTTP_RESPONSE_CODE response;
char at_cmd[512];
}GBA_UB_AT_CMD_RSP_STRUCT;
typedef struct {
kal_bool update;
kal_uint32 sbp_id;
kal_char mcc[MAX_MCC_STR_LEN];
kal_char mnc[MAX_MNC_STR_LEN];
} DSBP_RECONFIG_INFO_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
DSBP_RECONFIG_INFO_STRUCT data;
} CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT;
typedef struct {
kal_uint32 sbp_id;
kal_char mcc[MAX_MCC_STR_LEN];
kal_char mnc[MAX_MNC_STR_LEN];
kal_bool test_sim;
kal_bool mcf_result;
xcap_cfg_t config;
} XCAP_CONFIG_INFO_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
} CONFIG_DUMP_REQ_ILM_STRUCT;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
XCAP_CONFIG_INFO_STRUCT data;
} CONFIG_DUMP_CNF_ILM_STRUCT;
typedef struct
{
#if defined(__HTTP_TLS_SUPPORT__)
XCAP_LOCAL_PARA_STRUCT local_param;
#else
LOCAL_PARA_HDR
#endif
void *data;
kal_uint32 data_length;
} HTTP_REQ_ILM_STRUCT;
typedef struct
{
#if defined(__HTTP_TLS_SUPPORT__)
XCAP_LOCAL_PARA_STRUCT local_param;
#else
LOCAL_PARA_HDR
#endif
void *data;
kal_uint32 data_length;
} HTTP_RSP_ILM_STRUCT;
#define MAX_FQDN_LEN DNS_MAX_NAME_LENGTH
#define MAX_DNS_NAMESPACE_LEN MAX_FQDN_LEN
#define MAX_PROTOCOL_LEN 6
#define MAX_NUM_OF_DNS_RESPONSE DNS_MAX_SRV_ENTRY * DNS_MAX_NAPTR_ENTRY //2*3 = 6
typedef enum {
QUERY_TYPE_NONE,
QUERY_TYPE_SRV,
QUERY_TYPE_NAPTR,
QUERY_TYPE_A_AAA,
QUERY_TYPE_MAX
} XCAP_DNS_QUERY_TYPE;
typedef enum {
XCAP_DNS_CACHE_IP_STATUS_RECORD_EXPIRED = -3,
XCAP_DNS_CACHE_IP_STATUS_RUN_OF_OUT_RECORD = -2,
XCAP_DNS_CACHE_IP_STATUS_NO_RECORD = -1,
XCAP_DNS_CACHE_IP_STATUS_SUCCESS = 0,
} XCAP_DNS_CACHE_IP_STATUS;
typedef struct {
XCAP_DNS_QUERY_TYPE type;
kal_uint8 sim_id;
kal_uint32 intf_id;
kal_uint32 trans_id;
kal_char protocol[MAX_PROTOCOL_LEN];
kal_char ns[MAX_DNS_NAMESPACE_LEN];
kal_int16 family;
kal_int16 flags;
kal_uint8 dns_server_priority;
kal_uint32 default_ttl;
} XCAP_DNS_REQ;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
XCAP_DNS_REQ data;
} DNS_REQ_ILM_STRUCT;
typedef struct {
kal_char protocol[MAX_PROTOCOL_LEN];
kal_char fqdn[MAX_FQDN_LEN];
kal_int32 port;
kal_uint64 ttl;
kal_uint32 priority;
}XCAP_DNS_ADDR;
typedef struct {
kal_int32 addr_count;
kal_uint32 req_id;
XCAP_DNS_REQ request;
XCAP_DNS_ADDR addr_list[MAX_NUM_OF_DNS_RESPONSE];
}XCAP_DNS_RSP;
typedef struct
{
XCAP_LOCAL_PARA_STRUCT local_param;
kal_uint32 dns_result;
} DNS_RSP_ILM_STRUCT;
/******************** XML ILM structure parsing *************************/
// MSGID = MSG_ID_HELLO_WORLD, struct name = hello_world_struct
// MSGID = MSG_ID_HELLO_GOODBYE, struct name = hello_goodbye_struct
typedef GBA_UA_REQ_ILM_STRUCT xcap_gba_ua_send_req_struct; // MSG_ID_XCAP_GBA_UA_SEND_REQ
typedef GBA_UA_RSP_ILM_STRUCT xcap_gba_ua_send_rsp_struct; // MSG_ID_XCAP_GBA_UA_SEND_RSP
typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_sim_error_ind_struct; // MSG_ID_XCAP_GBA_UA_SIM_ERROR_IND
typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_sim_error_cnf_struct; // MSG_ID_XCAP_GBA_UA_SIM_ERROR_CNF
typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_force_abort_ind_struct; // MSG_ID_XCAP_GBA_UA_FORCE_ABORT_IND
typedef GBA_UA_ERROR_STRUCT xcap_gba_ua_force_abort_cnf_struct; // MSG_ID_XCAP_GBA_UA_FORCE_ABORT_CNF
typedef GBA_UB_REQ_ILM_STRUCT xcap_gba_ub_send_req_struct; // MSG_ID_XCAP_GBA_UB_SEND_REQ
typedef GBA_UB_RSP_ILM_STRUCT xcap_gba_ub_send_rsp_struct; // MSG_ID_XCAP_GBA_UB_SEND_RSP
typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_sim_error_ind_struct; // MSG_ID_XCAP_GBA_UB_SIM_ERROR_IND
typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_sim_error_cnf_struct; // MSG_ID_XCAP_GBA_UB_SIM_ERROR_CNF
typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_force_abort_ind_struct; // MSG_ID_XCAP_GBA_UB_FORCE_ABORT_IND
typedef GBA_UB_ERROR_STRUCT xcap_gba_ub_force_abort_cnf_struct; // MSG_ID_XCAP_GBA_UB_FORCE_ABORT_CNF
typedef GBA_UB_AT_CMD_REQ_STRUCT xcap_gba_ub_at_egba_req_struct; // MSG_ID_XCAP_GBA_UB_AT_EGBA_REQ
typedef GBA_UB_AT_CMD_RSP_STRUCT xcap_gba_ub_at_egba_rsp_struct; // MSG_ID_XCAP_GBA_UB_AT_EGBA_RSP
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_create_connection_req_struct; // MSG_ID_XCAP_CONN_MGR_CREATE_CONNECTION_REQ
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_create_connection_rsp_struct; // MSG_ID_XCAP_CONN_MGR_CREATE_CONNECTION_RSP
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_close_connection_ind_struct; // MSG_ID_XCAP_CONN_MGR_CLOSE_CONNECTION_IND
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_close_connection_cnf_struct; // MSG_ID_XCAP_CONN_MGR_CLOSE_CONNECTION_CNF
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_disconnection_req_struct; // MSG_ID_XCAP_CONN_MGR_DISCONNECTION_REQ
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_disconnection_rsp_struct; // MSG_ID_XCAP_CONN_MGR_DISCONNECTION_RSP
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_sim_error_ind_struct; // MSG_ID_XCAP_CONN_MGR_SIM_ERROR_IND
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_sim_error_cnf_struct; // MSG_ID_XCAP_CONN_MGR_SIM_ERROR_CNF
typedef XCAP_LOCAL_PARA_STRUCT xcap_conn_mgr_ss_atcmd_cnf_struct; // MSG_ID_XCAP_CONN_MGR_SS_ATCMD_CNF
typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_query_sim_info_req_struct; // MSG_ID_XCAP_SIM_MGR_QUERY_SIM_INFO_REQ
typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_query_sim_info_rsp_struct; // MSG_ID_XCAP_SIM_MGR_QUERY_SIM_INFO_RSP
typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_sim_error_ind_struct; // MSG_ID_XCAP_SIM_MGR_SIM_ERROR_IND
typedef XCAP_LOCAL_PARA_STRUCT xcap_sim_mgr_sim_error_cnf_struct; // MSG_ID_XCAP_SIM_MGR_SIM_ERROR_CNF
typedef CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT xcap_config_dsbp_reconfig_ind_struct; // MSG_ID_XCAP_CONFIG_DSBP_RECONFIG_IND
typedef CONFIG_DSBP_RECONFIG_IND_ILM_STRUCT xcap_config_reconfig_ind_struct; // MSG_ID_XCAP_CONFIG_RECONFIG_IND
typedef CONFIG_DUMP_REQ_ILM_STRUCT xcap_config_dump_req_struct; // MSG_ID_XCAP_CONFIG_DUMP_REQ
typedef CONFIG_DUMP_CNF_ILM_STRUCT xcap_config_dump_cnf_struct; // MSG_ID_XCAP_CONFIG_DUMP_CNF
typedef HTTP_REQ_ILM_STRUCT xcap_http_delegate_send_http_req_struct; // MSG_ID_XCAP_HTTP_DELEGATE_SEND_HTTP_REQ
typedef HTTP_RSP_ILM_STRUCT xcap_http_delegate_send_http_rsp_struct; // MSG_ID_XCAP_HTTP_DELEGATE_SEND_HTTP_RSP
typedef HTTP_REQ_ILM_STRUCT xcap_http_connection_send_http_req_struct; // MSG_ID_XCAP_HTTP_CONNECTION_SEND_HTTP_REQ
typedef HTTP_RSP_ILM_STRUCT xcap_http_connection_send_http_rsp_struct; // MSG_ID_XCAP_HTTP_CONNECTION_SEND_HTTP_RSP
typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_pdn_on_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_PDN_ON_IND
typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_pdn_off_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_PDN_OFF_IND
typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_abort_ind_struct; //MSG_ID_XCAP_HTTP_CONNECTION_FORCE_ABORT_IND
typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_abort_cnf_struct; //MSG_ID_XCAP_HTTP_CONNECTION_FORCE_ABORT_CNF
typedef DNS_REQ_ILM_STRUCT xcap_dns_naptr_resolve_req_struct; //MSG_ID_XCAP_DNS_NAPTR_RESOLVE_REQ
typedef DNS_RSP_ILM_STRUCT xcap_dns_naptr_resolve_rsp_struct; //MSG_ID_XCAP_DNS_NAPTR_RESOLVE_RSP
typedef XCAP_LOCAL_PARA_STRUCT xcap_http_connection_force_close_connection_ind_struct; // MSG_ID_XCAP_HTTP_CONNECTION_FORCE_CLOSE_CONNECTION_IND
#endif