📄 tcm_common.h
字号:
/*****************************************************************************
* 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) 2005
*
* 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:
* ---------
* TCM_COMMON.H
*
* Project:
* --------
* MAUI
*
* Description:
* ------------
* This file describes the common functions of TCM.
*
* Author:
* -------
* -------
*
*============================================================================
* HISTORY
* Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*------------------------------------------------------------------------------
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
* removed!
* removed!
* removed!
*
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*============================================================================
****************************************************************************/
/********************************************************************************
* Copyright Statement:
* --------------------
*
* This product has been developed using a protocol stack
* developed by Sasken Communication Technologies Limited.
*
********************************************************************************/
#ifndef _TCM_COMMON_H
#define _TCM_COMMON_H
#ifndef _TCM_COMMON_ENUMS_H
#error include tcm_common_enums.h before tcm_common.h
#endif /* ~_TCM_COMMON_ENUMS_H */
#ifndef _PPP_L4_ENUMS_H
#error include ppp_l4_enums.h before tcm_common.h
#endif /* ~_PPP_L4_ENUMS_H */
#ifndef _MMI_SM_ENUMS_H
#error include mmi_sm_enums.h before tcm_common.h
#endif /* ~_MMI_SM_ENUMS_H */
#if !((GPRS_MAX_PDP_SUPPORT >= 2) && (GPRS_MAX_PDP_SUPPORT <= 7))
#error please define GPRS_MAX_PDP_SUPPORT in the range [2-7]
#endif
#define MAX_PDU_LENGTH 1500
#define TCM_INIT_NPDU_NOS 0
#define MMI_MAX_NUM_CONFIG_OPTION_PACKETS 84
#define SESSION_INFO_PTR session_info_block_struct*
/* These defines are used as a flag to determine the amount to be
* subtracted from either a nsapi or context_id to get the
* corresponding sib_id.
*/
#define MMI_NSAPI 0
#define MMI_CONTEXTID 1
#define MMI_CONFIG_PROTOCOL_PPP 0
#define TCM_RMMI_NSAPI 5
#define TCM_LMMI_NSAPI 6
#undef SME_FN_ENTRY_LOG
#undef SME_FN_EXIT_LOG
#define SME_FN_ENTRY_LOG(X,Y) kal_trace(TRACE_FUNC, Y)
#define SME_FN_EXIT_LOG(X,Y) kal_trace(TRACE_FUNC, Y)
#define SME_ASSERT(X,Y) ASSERT(X)
#define assert ASSERT
#define mmi_err(X,Y) NULL
/* Default values used in the various fields of session information
* block.
*/
#define DEF_ADDRTYPE IPV4_ADDR_TYPE /* Default address is
* IPv4.
*/
#define DEF_L2P PPP /* Default L2P is PPP */
#define DEF_APNLENGTH 0 /* Default Apn length is zero or
* no apn.
*/
#define DEF_APN NULL /* Default Apn is no apn */
#define DEF_NPDUNUM 0 /* Default Npdu number is zero */
#define DEF_PCONFOPTLENGTH 0 /* Default protocol configuration
* option length is zero or no
* protocol configuration length.
*/
#define DEF_PCONFOPTS NULL /* Default protocol configuration
* options are no configuration.
*/
#define DEF_PDPADDRLEN NULL_PDP_ADDR_LEN/* Default pdp address
* length is set to
* NULL_PDP_ADDR_LEN.
*/
/* Total number of MMI Modules */
#define MMI_NUM_MODULES 2
/* Total number of nsapi's */
/* Modified by: CH_Liang 2005.01.25
* Description: define the NSAPI range.
*/
#define MMI_TOT_VISIBLE_CONTEXT MAX_EXT_PDP_CONTEXT /* for External */
#define MMI_TOT_NSAPI GPRS_MAX_PDP_SUPPORT
#define MMI_TOT_CONTEXT (MMI_TOT_VISIBLE_CONTEXT + MMI_TOT_NSAPI)
#define MMI_INVALID_NSAPI 0
#define MMI_INVALID_CONTEXT_ID 0
#define MMI_MIN_NSAPI MIN_VALID_NSAPI
#define MMI_MAX_NSAPI MAX_VALID_NSAPI
/* End of Modification, 2005.03.19. Reviewed by: Joseph */
#define MMI_MIN_CONTEXT_ID 1
#define MMI_MAX_CONTEXT_ID 1 + MMI_TOT_CONTEXT -1
#define DST_PORT_RANGE 2
#define SRC_PORT_RANGE 2
#define TOS_TRAF_CLASS_MASK_LEN 2
#define MMI_PRIMARY_UNKNOWN 12 /* Context id is set to 12 which
* is not a valid context_id. Sib
* should be initialized to this
* value.
*/
#define MMI_TFT_FIELD_NOT_PRESENT -1
#define MMI_PDP_TYPE IPV4_ADDR_TYPE
#define MMI_PDP_LEN IPV4_ADDR_LEN
#define MAX_SRC_ADDR_SBNET_MASK_LEN 8
/* mtk00714 w0633: AT definition*/
#define TCM_CGDCONT_DEFINED 0x01
#define TCM_CGDSCONT_DEFINED 0x02
#define TCM_CGQREQ_DEFINED 0x04
#define TCM_CGQMIN_DEFINED 0x08
#define TCM_CGTFT_DEFINED 0x10
/* This structure is used to cast any message received by the tcm
* module. Once a message is cast to this type the corresponding nsapi
* or context_id will be available.
*/
typedef struct
{
LOCAL_PARA_HDR
kal_uint8 id;
} mmi_nsapi_cntxt_id_cast_struct;
typedef struct pkt_filter_struct
{
kal_uint8 context_id;
kal_uint8 pfi;
kal_uint8 epi;
kal_uint8 src_addr_sb_net_mask_len;
packet_filter_type_enum type;
kal_uint8 src_addr_sb_net_mask[MAX_SRC_ADDR_SBNET_MASK_LEN];
kal_bool prot_number_present;
kal_uint8 prot_number_next_hdr;
kal_uint16 dst_port_range[DST_PORT_RANGE];
kal_uint8 dst_port_len;
kal_uint8 src_port_len;
kal_uint16 src_port_range[SRC_PORT_RANGE];
kal_bool ipsec_spi_present;
kal_uint8 tos_len;
kal_uint8 tos_traffic_class_mask [TOS_TRAF_CLASS_MASK_LEN];
kal_uint32 ipsec_spi;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -