FreeCalypso > hg > fc-magnetite
view cdg3/cdginc-conservative/m_cc.h @ 516:1ed9de6c90bd
src/g23m-gsm/sms/sms_for.c: bogus malloc removed
The new error handling code that was not present in TCS211 blob version
contains a malloc call that is bogus for 3 reasons:
1) The memory allocation in question is not needed in the first place;
2) libc malloc is used instead of one of the firmware's proper ways;
3) The memory allocation is made inside a function and then never freed,
i.e., a memory leak.
This bug was caught in gcc-built FreeCalypso fw projects (Citrine
and Selenite) because our gcc environment does not allow any use of
libc malloc (any reference to malloc produces a link failure),
but this code from TCS3.2 is wrong even for Magnetite: if this code
path is executed repeatedly over a long time, the many small allocations
made by this malloc call without a subsequent free will eventually
exhaust the malloc heap provided by the TMS470 environment, malloc will
start returning NULL, and the bogus code will treat it as an error.
Because the memory allocation in question is not needed at all,
the fix entails simply removing it.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 22 Jul 2018 06:04:49 +0000 |
parents | c15047b3d00d |
children |
line wrap: on
line source
/* +--------------------------------------------------------------------------+ | PROJECT : PROTOCOL STACK | | FILE : m_cc.h | | SOURCE : "msg\cc.mdf" | | LastModified : "2004-01-26" | | IdAndVersion : "6147.600.97.110" | | SrcFileTime : "Wed Nov 28 10:18:32 2007" | | Generated by CCDGEN_2.5.5A on Thu Sep 25 09:52:55 2014 | | !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! | +--------------------------------------------------------------------------+ */ /* PRAGMAS * PREFIX : M_CC * COMPATIBILITY_DEFINES : NO * ALWAYS_ENUM_IN_VAL_FILE: NO * ENABLE_GROUP: NO * CAPITALIZE_TYPENAME: NO * CCDNAME: CC */ #ifndef M_CC_H #define M_CC_H #define CDG_ENTER__M_CC_H #define CDG_ENTER__FILENAME _M_CC_H #define CDG_ENTER__M_CC_H__FILE_TYPE CDGINC #define CDG_ENTER__M_CC_H__LAST_MODIFIED _2004_01_26 #define CDG_ENTER__M_CC_H__ID_AND_VERSION _6147_600_97_110 #define CDG_ENTER__M_CC_H__SRC_FILE_TIME _Wed_Nov_28_10_18_32_2007 #include "CDG_ENTER.h" #undef CDG_ENTER__M_CC_H #undef CDG_ENTER__FILENAME #include "m_cc.val" #ifndef __T_M_CC_aux_states__ #define __T_M_CC_aux_states__ /* * Auxiliary states * CCDGEN:WriteStruct_Count==332 */ typedef struct { U8 v_hold; /*< 0: 1> valid-flag */ U8 hold; /*< 1: 1> Hold auxiliary state */ U8 v_mpty; /*< 2: 1> valid-flag */ U8 mpty; /*< 3: 1> Multi party auxiliary state */ } T_M_CC_aux_states; #endif #ifndef __T_M_CC_bearer_cap__ #define __T_M_CC_bearer_cap__ /* * Bearer capability * CCDGEN:WriteStruct_Count==333 */ typedef struct { U8 v_rad_chan_req; /*< 0: 1> valid-flag */ U8 rad_chan_req; /*< 1: 1> Radio channel requirement */ U8 v_code; /*< 2: 1> valid-flag */ U8 code; /*< 3: 1> Coding standard */ U8 v_trans_mode; /*< 4: 1> valid-flag */ U8 trans_mode; /*< 5: 1> Transfer mode */ U8 v_trans_cap; /*< 6: 1> valid-flag */ U8 trans_cap; /*< 7: 1> Information transfer capability */ U8 v_coding_bc3x1; /*< 8: 1> valid-flag */ U8 coding_bc3x1; /*< 9: 1> Meaning of BC octet 3a */ U8 v_ctm; /*< 10: 1> valid-flag */ U8 ctm; /*< 11: 1> Support of CTM text telephony */ U8 v_speech_vers1; /*< 12: 1> valid-flag */ U8 speech_vers1; /*< 13: 1> Speech Version Indication No. 1 */ U8 v_coding_bc3x2; /*< 14: 1> valid-flag */ U8 coding_bc3x2; /*< 15: 1> Meaning of BC octet 3b */ U8 v_speech_vers2; /*< 16: 1> valid-flag */ U8 speech_vers2; /*< 17: 1> Speech Version Indication No. 2 */ U8 v_coding_bc3x3; /*< 18: 1> valid-flag */ U8 coding_bc3x3; /*< 19: 1> Meaning of BC octet 3c */ U8 v_speech_vers3; /*< 20: 1> valid-flag */ U8 speech_vers3; /*< 21: 1> Speech Version Indication No. 3 */ U8 v_coding_bc3x4; /*< 22: 1> valid-flag */ U8 coding_bc3x4; /*< 23: 1> Meaning of BC octet 3d */ U8 v_speech_vers4; /*< 24: 1> valid-flag */ U8 speech_vers4; /*< 25: 1> Speech Version Indication No. 4 */ U8 v_coding_bc3x5; /*< 26: 1> valid-flag */ U8 coding_bc3x5; /*< 27: 1> Meaning of BC octet 3e */ U8 v_speech_vers5; /*< 28: 1> valid-flag */ U8 speech_vers5; /*< 29: 1> Speech Version Indication No. 5 */ U8 v_compress; /*< 30: 1> valid-flag */ U8 compress; /*< 31: 1> Compression */ U8 v_structure; /*< 32: 1> valid-flag */ U8 structure; /*< 33: 1> Structure */ U8 v_duplex; /*< 34: 1> valid-flag */ U8 duplex; /*< 35: 1> Duplex mode */ U8 v_config; /*< 36: 1> valid-flag */ U8 config; /*< 37: 1> Configuration */ U8 v_nirr; /*< 38: 1> valid-flag */ U8 nirr; /*< 39: 1> Negotiation of intermediate rate request */ U8 v_establish; /*< 40: 1> valid-flag */ U8 establish; /*< 41: 1> Establishment */ U8 v_access_ident; /*< 42: 1> valid-flag */ U8 access_ident; /*< 43: 1> Access identity */ U8 v_rate_adapt; /*< 44: 1> valid-flag */ U8 rate_adapt; /*< 45: 1> Rate adaption */ // ELEM-FF: REL99 // U8 v_sig_access_prot; /*< 46: 1> valid-flag */ // U8 sig_access_prot; /*< 0: 0> Signalling access protocol */ // ELEM-FF: REL99 // U8 v_other_itc; /*< 46: 1> valid-flag */ // U8 other_itc; /*< 0: 0> Other ITC */ // ELEM-FF: REL99 // U8 v_other_ra; /*< 46: 1> valid-flag */ // U8 other_ra; /*< 0: 0> Other Rate adaption */ // ELEM-FF: REL99 // ELEM-FF: REL99 // U8 v_ra_header; /*< 46: 1> valid-flag */ // U8 ra_header; /*< 0: 0> Rate adaption header */ // ELEM-FF: REL99 // U8 v_multiple_frame; /*< 46: 1> valid-flag */ // U8 multiple_frame; /*< 0: 0> Multiple frame establishment support */ // ELEM-FF: REL99 // U8 v_mode_of_operation; /*< 46: 1> valid-flag */ // U8 mode_of_operation; /*< 0: 0> Mode of operation */ // ELEM-FF: REL99 // U8 v_lli_negotiation; /*< 46: 1> valid-flag */ // U8 lli_negotiation; /*< 0: 0> Logical link identifier negotiation */ // ELEM-FF: REL99 // U8 v_assignor_assignee; /*< 46: 1> valid-flag */ // U8 assignor_assignee; /*< 0: 0> Assignor/assignee */ // ELEM-FF: REL99 // U8 v_in_out_band_negotiation; /*< 46: 1> valid-flag */ // U8 in_out_band_negotiation; /*< 0: 0> Inband/Out of band negotiation */ // ELEM-FF: REL99 // ELEM-FF: !REL99 U8 v_sig_access_prot; /*< 46: 1> valid-flag */ U8 sig_access_prot; /*< 47: 1> Signalling access protocol */ U8 v_l1_ident; /*< 48: 1> valid-flag */ U8 l1_ident; /*< 49: 1> Layer 1 identity */ U8 v_user_inf_l1_prot; /*< 50: 1> valid-flag */ U8 user_inf_l1_prot; /*< 51: 1> User information layer 1 protocol */ U8 v_sync_async; /*< 52: 1> valid-flag */ U8 sync_async; /*< 53: 1> Synchronous / Asyncronous */ U8 v_num_stop; /*< 54: 1> valid-flag */ U8 num_stop; /*< 55: 1> Number of stop bits */ U8 v_negotiate; /*< 56: 1> valid-flag */ U8 negotiate; /*< 57: 1> Negotiation */ U8 v_num_data; /*< 58: 1> valid-flag */ U8 num_data; /*< 59: 1> Number of data bits */ U8 v_user_rate; /*< 60: 1> valid-flag */ U8 user_rate; /*< 61: 1> User rate */ U8 v_intermed_rate; /*< 62: 1> valid-flag */ U8 intermed_rate; /*< 63: 1> Intermediate rate */ U8 v_nic_tx; /*< 64: 1> valid-flag */ U8 nic_tx; /*< 65: 1> Network independent clock on Tx */ U8 v_nic_rx; /*< 66: 1> valid-flag */ U8 nic_rx; /*< 67: 1> Network independent clock on Rx */ U8 v_parity; /*< 68: 1> valid-flag */ U8 parity; /*< 69: 1> Parity */ U8 v_conn_elem; /*< 70: 1> valid-flag */ U8 conn_elem; /*< 71: 1> Connection element */ U8 v_modem_type; /*< 72: 1> valid-flag */ U8 modem_type; /*< 73: 1> Modem type */ U8 v_modem_type_2; /*< 74: 1> valid-flag */ U8 modem_type_2; /*< 75: 1> Other Modem Type */ U8 v_fnur; /*< 76: 1> valid-flag */ U8 fnur; /*< 77: 1> Fixed Network User Rate */ U8 v_acc; /*< 78: 1> valid-flag */ U8 acc; /*< 79: 1> Acceptable Channel Codings */ U8 v_mTch; /*< 80: 1> valid-flag */ U8 mTch; /*< 81: 1> Maximum Traffic Channels */ U8 v_uimi; /*< 82: 1> valid-flag */ U8 uimi; /*< 83: 1> User Initiated Modification Ind */ // ELEM-FF: REL99 // U8 v_waiur; /*< 84: 1> valid-flag */ // U8 waiur; /*< 0: 0> Wanted Air Interface User Rate */ // ELEM-FF: REL99 // U8 v_acc_ext_288; /*< 84: 1> valid-flag */ // U8 acc_ext_288; /*< 0: 0> Acceptable Channel Codings 28.8 */ // ELEM-FF: REL99 // U8 v_acc_ext_320; /*< 84: 1> valid-flag */ // U8 acc_ext_320; /*< 0: 0> Acceptable Channel Codings 32.0 */ // ELEM-FF: REL99 // U8 v_acc_ext_432; /*< 84: 1> valid-flag */ // U8 acc_ext_432; /*< 0: 0> Acceptable Channel Codings 43.2 */ // ELEM-FF: REL99 // U8 v_ch_cod_asym; /*< 84: 1> valid-flag */ // U8 ch_cod_asym; /*< 0: 0> Channel coding asymmetry indication */ // ELEM-FF: REL99 // ELEM-FF: !REL99 U8 v_waiur; /*< 84: 1> valid-flag */ U8 waiur; /*< 85: 1> Wanted Air Interface User Rate */ U8 v_l2_ident; /*< 86: 1> valid-flag */ U8 l2_ident; /*< 87: 1> Layer 2 identity */ U8 v_user_inf_l2_prot; /*< 88: 1> valid-flag */ U8 user_inf_l2_prot; /*< 89: 1> User information layer 2 protocol */ U8 _align0; /*< 90: 1> alignment */ U8 _align1; /*< 91: 1> alignment */ } T_M_CC_bearer_cap; #endif /* * Bearer capability * CCDGEN:WriteStruct_Count==334 */ #ifndef __T_M_CC_bearer_cap_2__ #define __T_M_CC_bearer_cap_2__ typedef T_M_CC_bearer_cap T_M_CC_bearer_cap_2; #endif #ifndef __T_M_CC_call_ctrl_cap__ #define __T_M_CC_call_ctrl_cap__ /* * Call Control Capabilities * CCDGEN:WriteStruct_Count==335 */ typedef struct { // ELEM-FF: REL99 // U8 max_nof_supp_bearers; /*< 0: 0> Maximum number of supported bearers */ // ELEM-FF: REL99 // ELEM-FF: !REL99 U8 pcp; /*< 0: 1> PCP */ U8 dtmf; /*< 1: 1> DTMF */ // ELEM-FF: REL99 // ELEM-FF: REL99 // U8 max_nof_supp_speech_bearers; /*< 0: 0> Maximum number of supported speech bearers */ U8 _align0; /*< 2: 1> alignment */ U8 _align1; /*< 3: 1> alignment */ } T_M_CC_call_ctrl_cap; #endif #ifndef __T_M_CC_call_state__ #define __T_M_CC_call_state__ /* * Call state * CCDGEN:WriteStruct_Count==336 */ typedef struct { U8 cs; /*< 0: 1> Coding standard */ U8 state; /*< 1: 1> Call state value */ U8 _align0; /*< 2: 1> alignment */ U8 _align1; /*< 3: 1> alignment */ } T_M_CC_call_state; #endif #ifndef __T_M_CC_dl_called_num__ #define __T_M_CC_dl_called_num__ /* * Called party BCD number * CCDGEN:WriteStruct_Count==337 */ typedef struct { U8 v_ton; /*< 0: 1> valid-flag */ U8 ton; /*< 1: 1> Type of number */ U8 v_npi; /*< 2: 1> valid-flag */ U8 npi; /*< 3: 1> Numbering plan identification */ U8 c_num; /*< 4: 1> counter */ U8 num[32]; /*< 5: 32> Number digit */ U8 _align0; /*< 37: 1> alignment */ U8 _align1; /*< 38: 1> alignment */ U8 _align2; /*< 39: 1> alignment */ } T_M_CC_dl_called_num; #endif #ifndef __T_M_CC_ul_called_num__ #define __T_M_CC_ul_called_num__ /* * Called party BCD number * CCDGEN:WriteStruct_Count==338 */ typedef struct { U8 v_ton; /*< 0: 1> valid-flag */ U8 ton; /*< 1: 1> Type of number */ U8 v_npi; /*< 2: 1> valid-flag */ U8 npi; /*< 3: 1> Numbering plan identification */ U8 c_num; /*< 4: 1> counter */ U8 num[80]; /*< 5: 80> Number digit */ U8 _align0; /*< 85: 1> alignment */ U8 _align1; /*< 86: 1> alignment */ U8 _align2; /*< 87: 1> alignment */ } T_M_CC_ul_called_num; #endif #ifndef __T_M_CC_called_subaddr__ #define __T_M_CC_called_subaddr__ /* * Called party subaddress * CCDGEN:WriteStruct_Count==339 */ typedef struct { U8 v_tos; /*< 0: 1> valid-flag */ U8 tos; /*< 1: 1> Type of subaddress */ U8 v_odd_even; /*< 2: 1> valid-flag */ U8 odd_even; /*< 3: 1> Odd / even indication */ U8 c_subaddr; /*< 4: 1> counter */ U8 subaddr[20]; /*< 5: 20> Subaddress information */ U8 _align0; /*< 25: 1> alignment */ U8 _align1; /*< 26: 1> alignment */ U8 _align2; /*< 27: 1> alignment */ } T_M_CC_called_subaddr; #endif #ifndef __T_M_CC_calling_num__ #define __T_M_CC_calling_num__ /* * Calling party BCD number * CCDGEN:WriteStruct_Count==340 */ typedef struct { U8 v_ton; /*< 0: 1> valid-flag */ U8 ton; /*< 1: 1> Type of number */ U8 v_npi; /*< 2: 1> valid-flag */ U8 npi; /*< 3: 1> Numbering plan identification */ U8 v_present; /*< 4: 1> valid-flag */ U8 present; /*< 5: 1> Presentation indicator */ U8 v_screen; /*< 6: 1> valid-flag */ U8 screen; /*< 7: 1> Screening indicator */ U8 c_num; /*< 8: 1> counter */ U8 num[22]; /*< 9: 22> Number digit */ U8 _align0; /*< 31: 1> alignment */ } T_M_CC_calling_num; #endif #ifndef __T_M_CC_calling_subaddr__ #define __T_M_CC_calling_subaddr__ /* * Calling party subaddress * CCDGEN:WriteStruct_Count==341 */ typedef struct { U8 v_tos; /*< 0: 1> valid-flag */ U8 tos; /*< 1: 1> Type of subaddress */ U8 v_odd_even; /*< 2: 1> valid-flag */ U8 odd_even; /*< 3: 1> Odd / even indication */ U8 c_subaddr; /*< 4: 1> counter */ U8 subaddr[20]; /*< 5: 20> Subaddress information */ U8 _align0; /*< 25: 1> alignment */ U8 _align1; /*< 26: 1> alignment */ U8 _align2; /*< 27: 1> alignment */ } T_M_CC_calling_subaddr; #endif #ifndef __T_M_CC_cc_cause__ #define __T_M_CC_cc_cause__ /* * Cause * CCDGEN:WriteStruct_Count==342 */ typedef struct { U8 v_cs; /*< 0: 1> valid-flag */ U8 cs; /*< 1: 1> Coding standard */ U8 v_loc; /*< 2: 1> valid-flag */ U8 loc; /*< 3: 1> Location */ U8 v_rec; /*< 4: 1> valid-flag */ U8 rec; /*< 5: 1> Recommendation */ U8 v_cause; /*< 6: 1> valid-flag */ U8 cause; /*< 7: 1> Cause value */ U8 c_diag; /*< 8: 1> counter */ U8 diag[27]; /*< 9: 27> Diagnostics */ } T_M_CC_cc_cause; #endif /* * Cause * CCDGEN:WriteStruct_Count==343 */ #ifndef __T_M_CC_cc_cause_2__ #define __T_M_CC_cc_cause_2__ typedef T_M_CC_cc_cause T_M_CC_cc_cause_2; #endif #ifndef __T_M_CC_clir_suppr__ #define __T_M_CC_clir_suppr__ /* * CLIR suppression * CCDGEN:WriteStruct_Count==344 */ /* typedef void T_M_CC_clir_suppr;*/ #endif #ifndef __T_M_CC_clir_invoc__ #define __T_M_CC_clir_invoc__ /* * CLIR invocation * CCDGEN:WriteStruct_Count==345 */ /* typedef void T_M_CC_clir_invoc;*/ #endif #ifndef __T_M_CC_connect_num__ #define __T_M_CC_connect_num__ /* * Connected number * CCDGEN:WriteStruct_Count==346 */ typedef struct { U8 v_ton; /*< 0: 1> valid-flag */ U8 ton; /*< 1: 1> Type of number */ U8 v_npi; /*< 2: 1> valid-flag */ U8 npi; /*< 3: 1> Numbering plan identification */ U8 v_present; /*< 4: 1> valid-flag */ U8 present; /*< 5: 1> Presentation indicator */ U8 v_screen; /*< 6: 1> valid-flag */ U8 screen; /*< 7: 1> Screening indicator */ U8 c_num; /*< 8: 1> counter */ U8 num[22]; /*< 9: 22> Number digit */ U8 _align0; /*< 31: 1> alignment */ } T_M_CC_connect_num; #endif #ifndef __T_M_CC_connect_subaddr__ #define __T_M_CC_connect_subaddr__ /* * Connected subaddress * CCDGEN:WriteStruct_Count==347 */ typedef struct { U8 v_tos; /*< 0: 1> valid-flag */ U8 tos; /*< 1: 1> Type of subaddress */ U8 v_odd_even; /*< 2: 1> valid-flag */ U8 odd_even; /*< 3: 1> Odd / even indication */ U8 c_subaddr; /*< 4: 1> counter */ U8 subaddr[20]; /*< 5: 20> Subaddress information */ U8 _align0; /*< 25: 1> alignment */ U8 _align1; /*< 26: 1> alignment */ U8 _align2; /*< 27: 1> alignment */ } T_M_CC_connect_subaddr; #endif #ifndef __T_M_CC_facility__ #define __T_M_CC_facility__ /* * Facility * CCDGEN:WriteStruct_Count==348 */ typedef struct { U8 c_fac; /*< 0: 1> counter */ U8 fac[M_CC_L3MAX]; /*< 1:251> Facility information */ } T_M_CC_facility; #endif /* * Facility * CCDGEN:WriteStruct_Count==349 */ #ifndef __T_M_CC_fac_adv__ #define __T_M_CC_fac_adv__ typedef T_M_CC_facility T_M_CC_fac_adv; #endif #ifndef __T_M_CC_high_layer_comp__ #define __T_M_CC_high_layer_comp__ /* * High layer compatibility * CCDGEN:WriteStruct_Count==350 */ typedef struct { U8 v_cs; /*< 0: 1> valid-flag */ U8 cs; /*< 1: 1> Coding standard */ U8 v_interpret; /*< 2: 1> valid-flag */ U8 interpret; /*< 3: 1> Interpretation */ U8 v_prot_prof; /*< 4: 1> valid-flag */ U8 prot_prof; /*< 5: 1> Presentation method of protocol profile */ U8 v_hlci; /*< 6: 1> valid-flag */ U8 hlci; /*< 7: 1> High layer characteristics identification */ U8 v_ext_hlci; /*< 8: 1> valid-flag */ U8 ext_hlci; /*< 9: 1> Extended high layer characteristics identification */ U8 _align0; /*< 10: 1> alignment */ U8 _align1; /*< 11: 1> alignment */ } T_M_CC_high_layer_comp; #endif /* * High layer compatibility * CCDGEN:WriteStruct_Count==351 */ #ifndef __T_M_CC_high_layer_comp_2__ #define __T_M_CC_high_layer_comp_2__ typedef T_M_CC_high_layer_comp T_M_CC_high_layer_comp_2; #endif #ifndef __T_M_CC_key_facility__ #define __T_M_CC_key_facility__ /* * Keypad facility * CCDGEN:WriteStruct_Count==352 */ typedef struct { U8 key; /*< 0: 1> Keypad information */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_M_CC_key_facility; #endif #ifndef __T_M_CC_low_layer_comp__ #define __T_M_CC_low_layer_comp__ /* * Low layer compatibility * CCDGEN:WriteStruct_Count==353 */ typedef struct { U8 c_llc; /*< 0: 1> counter */ U8 llc[16]; /*< 1: 16> Low layer information */ U8 _align0; /*< 17: 1> alignment */ U8 _align1; /*< 18: 1> alignment */ U8 _align2; /*< 19: 1> alignment */ } T_M_CC_low_layer_comp; #endif /* * Low layer compatibility * CCDGEN:WriteStruct_Count==354 */ #ifndef __T_M_CC_low_layer_comp_2__ #define __T_M_CC_low_layer_comp_2__ typedef T_M_CC_low_layer_comp T_M_CC_low_layer_comp_2; #endif #ifndef __T_M_CC_more_data__ #define __T_M_CC_more_data__ /* * More data * CCDGEN:WriteStruct_Count==355 */ /* typedef void T_M_CC_more_data;*/ #endif #ifndef __T_M_CC_notific__ #define __T_M_CC_notific__ /* * Notification indicator * CCDGEN:WriteStruct_Count==356 */ typedef struct { U8 v_nd; /*< 0: 1> valid-flag */ U8 nd; /*< 1: 1> Notification description */ U8 _align0; /*< 2: 1> alignment */ U8 _align1; /*< 3: 1> alignment */ } T_M_CC_notific; #endif #ifndef __T_M_CC_progress__ #define __T_M_CC_progress__ /* * Progress indicator * CCDGEN:WriteStruct_Count==357 */ typedef struct { U8 v_cs; /*< 0: 1> valid-flag */ U8 cs; /*< 1: 1> Coding standard */ U8 v_loc; /*< 2: 1> valid-flag */ U8 loc; /*< 3: 1> Location */ U8 v_progress_desc; /*< 4: 1> valid-flag */ U8 progress_desc; /*< 5: 1> Progress description */ U8 _align0; /*< 6: 1> alignment */ U8 _align1; /*< 7: 1> alignment */ } T_M_CC_progress; #endif #ifndef __T_M_CC_reverse_call__ #define __T_M_CC_reverse_call__ /* * Reverse call setup direction * CCDGEN:WriteStruct_Count==358 */ /* typedef void T_M_CC_reverse_call;*/ #endif #ifndef __T_M_CC_ss_version__ #define __T_M_CC_ss_version__ /* * SS Version Indicator * CCDGEN:WriteStruct_Count==359 */ typedef struct { U8 c_ver; /*< 0: 1> counter */ U8 ver[M_CC_MAX_SS_VERSION]; /*< 1: 1> SS version information */ U8 _align0; /*< 2: 1> alignment */ U8 _align1; /*< 3: 1> alignment */ } T_M_CC_ss_version; #endif #ifndef __T_M_CC_user_user__ #define __T_M_CC_user_user__ /* * User-user * CCDGEN:WriteStruct_Count==360 */ typedef struct { U8 pd; /*< 0: 1> User-user protocol discriminator */ U8 c_info; /*< 1: 1> counter */ U8 info[M_CC_MAX_USER_USER_LENGTH]; /*< 2:128> User-user information */ U8 _align0; /*<130: 1> alignment */ U8 _align1; /*<131: 1> alignment */ } T_M_CC_user_user; #endif #ifndef __T_M_CC_allowed_actions__ #define __T_M_CC_allowed_actions__ /* * Allowed Actions * CCDGEN:WriteStruct_Count==361 */ typedef struct { U8 ccbs_act; /*< 0: 1> ccbs_activation */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_M_CC_allowed_actions; #endif #ifndef __T_M_CC_recall_type__ #define __T_M_CC_recall_type__ /* * Recall Type * CCDGEN:WriteStruct_Count==362 */ typedef struct { U8 rcl_type; /*< 0: 1> Recall Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_M_CC_recall_type; #endif #ifndef __T_M_CC_setup_cont__ #define __T_M_CC_setup_cont__ /* * Setup Container * CCDGEN:WriteStruct_Count==363 */ typedef struct { U8 c_setup_msg; /*< 0: 1> counter */ U8 setup_msg[M_CC_L3MAX]; /*< 1:251> Setup message */ } T_M_CC_setup_cont; #endif #ifndef __T_M_CC_redirecting_num__ #define __T_M_CC_redirecting_num__ /* * Redirecting party BCD number * CCDGEN:WriteStruct_Count==364 */ typedef struct { U8 v_ton; /*< 0: 1> valid-flag */ U8 ton; /*< 1: 1> Type of number */ U8 v_npi; /*< 2: 1> valid-flag */ U8 npi; /*< 3: 1> Numbering plan identification */ U8 v_present; /*< 4: 1> valid-flag */ U8 present; /*< 5: 1> Presentation indicator */ U8 v_screen; /*< 6: 1> valid-flag */ U8 screen; /*< 7: 1> Screening indicator */ U8 c_num; /*< 8: 1> counter */ U8 num[32]; /*< 9: 32> Number digit */ U8 _align0; /*< 41: 1> alignment */ U8 _align1; /*< 42: 1> alignment */ U8 _align2; /*< 43: 1> alignment */ } T_M_CC_redirecting_num; #endif #ifndef __T_M_CC_redirecting_subaddr__ #define __T_M_CC_redirecting_subaddr__ /* * Redirection party subaddress * CCDGEN:WriteStruct_Count==365 */ typedef struct { U8 v_tos; /*< 0: 1> valid-flag */ U8 tos; /*< 1: 1> Type of subaddress */ U8 v_odd_even; /*< 2: 1> valid-flag */ U8 odd_even; /*< 3: 1> Odd / even indication */ U8 c_subaddr; /*< 4: 1> counter */ U8 subaddr[20]; /*< 5: 20> Subaddress information */ U8 _align0; /*< 25: 1> alignment */ U8 _align1; /*< 26: 1> alignment */ U8 _align2; /*< 27: 1> alignment */ } T_M_CC_redirecting_subaddr; #endif // STRUCT-FF: REL99 // #ifndef __T_M_CC_cause_of_no_cli__ // #define __T_M_CC_cause_of_no_cli__ // // Cause of no CLI // CCDGEN:WriteStruct_Count==366 // // typedef struct // { // ELEM-FF: REL99 // U8 cause_no_cli; /*< 0: 0> Cause of no CLI_ */ // } T_M_CC_cause_of_no_cli; // #endif // #ifndef __T_M_CC_immediate_mod__ #define __T_M_CC_immediate_mod__ /* * Immediate Modification Indicator * CCDGEN:WriteStruct_Count==367 */ /* typedef void T_M_CC_immediate_mod;*/ #endif // STRUCT-FF: REL99 // #ifndef __T_M_CC_alerting_pattern__ // #define __T_M_CC_alerting_pattern__ // // Alerting pattern // CCDGEN:WriteStruct_Count==368 // // typedef struct // { // ELEM-FF: REL99 // U8 alerting_pat; /*< 0: 0> Alerting pattern */ // } T_M_CC_alerting_pattern; // #endif // /* * End of substructure section, begin of message definition section */ #ifndef __T_D_ALERT__ #define __T_D_ALERT__ /* * * CCDGEN:WriteStruct_Count==369 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_facility; /*< 3: 1> valid-flag */ T_M_CC_facility facility; /*< 4:252> Facility */ U8 _align2; /*<256: 1> alignment */ U8 _align3; /*<257: 1> alignment */ U8 _align4; /*<258: 1> alignment */ U8 v_progress; /*<259: 1> valid-flag */ T_M_CC_progress progress; /*<260: 8> Progress indicator */ U8 _align5; /*<268: 1> alignment */ U8 _align6; /*<269: 1> alignment */ U8 _align7; /*<270: 1> alignment */ U8 v_user_user; /*<271: 1> valid-flag */ T_M_CC_user_user user_user; /*<272:132> User-user */ } T_D_ALERT; #endif #ifndef __T_U_ALERT__ #define __T_U_ALERT__ /* * * CCDGEN:WriteStruct_Count==370 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_facility; /*< 3: 1> valid-flag */ T_M_CC_facility facility; /*< 4:252> Facility */ U8 _align2; /*<256: 1> alignment */ U8 _align3; /*<257: 1> alignment */ U8 _align4; /*<258: 1> alignment */ U8 v_user_user; /*<259: 1> valid-flag */ T_M_CC_user_user user_user; /*<260:132> User-user */ U8 _align5; /*<392: 1> alignment */ U8 _align6; /*<393: 1> alignment */ U8 _align7; /*<394: 1> alignment */ U8 v_ss_version; /*<395: 1> valid-flag */ T_M_CC_ss_version ss_version; /*<396: 4> SS Version Indicator */ } T_U_ALERT; #endif #ifndef __T_U_CALL_CONF__ #define __T_U_CALL_CONF__ /* * * CCDGEN:WriteStruct_Count==371 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 v_repeat; /*< 1: 1> valid-flag */ U8 repeat; /*< 2: 1> Repeat indicator */ U8 v_bearer_cap; /*< 3: 1> valid-flag */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ U8 _align0; /*< 96: 1> alignment */ U8 _align1; /*< 97: 1> alignment */ U8 _align2; /*< 98: 1> alignment */ U8 v_bearer_cap_2; /*< 99: 1> valid-flag */ T_M_CC_bearer_cap_2 bearer_cap_2; /*<100: 92> Bearer capability */ U8 _align3; /*<192: 1> alignment */ U8 _align4; /*<193: 1> alignment */ U8 _align5; /*<194: 1> alignment */ U8 v_cc_cause; /*<195: 1> valid-flag */ T_M_CC_cc_cause cc_cause; /*<196: 36> Cause */ U8 _align6; /*<232: 1> alignment */ U8 _align7; /*<233: 1> alignment */ U8 _align8; /*<234: 1> alignment */ U8 v_call_ctrl_cap; /*<235: 1> valid-flag */ T_M_CC_call_ctrl_cap call_ctrl_cap; /*<236: 4> Call Control Capabilities */ } T_U_CALL_CONF; #endif #ifndef __T_D_CALL_PROCEED__ #define __T_D_CALL_PROCEED__ /* * * CCDGEN:WriteStruct_Count==372 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 v_repeat; /*< 1: 1> valid-flag */ U8 repeat; /*< 2: 1> Repeat indicator */ U8 v_bearer_cap; /*< 3: 1> valid-flag */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ U8 _align0; /*< 96: 1> alignment */ U8 _align1; /*< 97: 1> alignment */ U8 _align2; /*< 98: 1> alignment */ U8 v_bearer_cap_2; /*< 99: 1> valid-flag */ T_M_CC_bearer_cap_2 bearer_cap_2; /*<100: 92> Bearer capability */ U8 _align3; /*<192: 1> alignment */ U8 _align4; /*<193: 1> alignment */ U8 _align5; /*<194: 1> alignment */ U8 v_facility; /*<195: 1> valid-flag */ T_M_CC_facility facility; /*<196:252> Facility */ U8 _align6; /*<448: 1> alignment */ U8 _align7; /*<449: 1> alignment */ U8 _align8; /*<450: 1> alignment */ U8 v_progress; /*<451: 1> valid-flag */ T_M_CC_progress progress; /*<452: 8> Progress indicator */ // ELEM-FF: REL99 // U8 v_priority_grant; /*<460: 1> valid-flag */ // U8 priority_grant; /*< 0: 0> Prioritiy granted */ } T_D_CALL_PROCEED; #endif #ifndef __T_B_CONGEST_CTRL__ #define __T_B_CONGEST_CTRL__ /* * * CCDGEN:WriteStruct_Count==373 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 congest_lev; /*< 1: 1> Congestion level */ U8 _align0; /*< 2: 1> alignment */ U8 v_cc_cause; /*< 3: 1> valid-flag */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ } T_B_CONGEST_CTRL; #endif #ifndef __T_D_CONNECT__ #define __T_D_CONNECT__ /* * * CCDGEN:WriteStruct_Count==374 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_facility; /*< 3: 1> valid-flag */ T_M_CC_facility facility; /*< 4:252> Facility */ U8 _align2; /*<256: 1> alignment */ U8 _align3; /*<257: 1> alignment */ U8 _align4; /*<258: 1> alignment */ U8 v_progress; /*<259: 1> valid-flag */ T_M_CC_progress progress; /*<260: 8> Progress indicator */ U8 _align5; /*<268: 1> alignment */ U8 _align6; /*<269: 1> alignment */ U8 _align7; /*<270: 1> alignment */ U8 v_connect_num; /*<271: 1> valid-flag */ T_M_CC_connect_num connect_num; /*<272: 32> Connected number */ U8 _align8; /*<304: 1> alignment */ U8 _align9; /*<305: 1> alignment */ U8 _align10; /*<306: 1> alignment */ U8 v_connect_subaddr; /*<307: 1> valid-flag */ T_M_CC_connect_subaddr connect_subaddr; /*<308: 28> Connected subaddress */ U8 _align11; /*<336: 1> alignment */ U8 _align12; /*<337: 1> alignment */ U8 _align13; /*<338: 1> alignment */ U8 v_user_user; /*<339: 1> valid-flag */ T_M_CC_user_user user_user; /*<340:132> User-user */ } T_D_CONNECT; #endif #ifndef __T_U_CONNECT__ #define __T_U_CONNECT__ /* * * CCDGEN:WriteStruct_Count==375 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_facility; /*< 3: 1> valid-flag */ T_M_CC_facility facility; /*< 4:252> Facility */ U8 _align2; /*<256: 1> alignment */ U8 _align3; /*<257: 1> alignment */ U8 _align4; /*<258: 1> alignment */ U8 v_connect_subaddr; /*<259: 1> valid-flag */ T_M_CC_connect_subaddr connect_subaddr; /*<260: 28> Connected subaddress */ U8 _align5; /*<288: 1> alignment */ U8 _align6; /*<289: 1> alignment */ U8 _align7; /*<290: 1> alignment */ U8 v_user_user; /*<291: 1> valid-flag */ T_M_CC_user_user user_user; /*<292:132> User-user */ U8 _align8; /*<424: 1> alignment */ U8 _align9; /*<425: 1> alignment */ U8 _align10; /*<426: 1> alignment */ U8 v_ss_version; /*<427: 1> valid-flag */ T_M_CC_ss_version ss_version; /*<428: 4> SS Version Indicator */ } T_U_CONNECT; #endif #ifndef __T_B_CONNECT_ACK__ #define __T_B_CONNECT_ACK__ /* * * CCDGEN:WriteStruct_Count==376 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_B_CONNECT_ACK; #endif #ifndef __T_D_DISCONNECT__ #define __T_D_DISCONNECT__ /* * * CCDGEN:WriteStruct_Count==377 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ U8 _align3; /*< 40: 1> alignment */ U8 _align4; /*< 41: 1> alignment */ U8 _align5; /*< 42: 1> alignment */ U8 v_facility; /*< 43: 1> valid-flag */ T_M_CC_facility facility; /*< 44:252> Facility */ U8 _align6; /*<296: 1> alignment */ U8 _align7; /*<297: 1> alignment */ U8 _align8; /*<298: 1> alignment */ U8 v_progress; /*<299: 1> valid-flag */ T_M_CC_progress progress; /*<300: 8> Progress indicator */ U8 _align9; /*<308: 1> alignment */ U8 _align10; /*<309: 1> alignment */ U8 _align11; /*<310: 1> alignment */ U8 v_user_user; /*<311: 1> valid-flag */ T_M_CC_user_user user_user; /*<312:132> User-user */ U8 _align12; /*<444: 1> alignment */ U8 _align13; /*<445: 1> alignment */ U8 _align14; /*<446: 1> alignment */ U8 v_allowed_actions; /*<447: 1> valid-flag */ T_M_CC_allowed_actions allowed_actions; /*<448: 4> Allowed Actions */ } T_D_DISCONNECT; #endif #ifndef __T_U_DISCONNECT__ #define __T_U_DISCONNECT__ /* * * CCDGEN:WriteStruct_Count==378 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ U8 _align3; /*< 40: 1> alignment */ U8 _align4; /*< 41: 1> alignment */ U8 _align5; /*< 42: 1> alignment */ U8 v_facility; /*< 43: 1> valid-flag */ T_M_CC_facility facility; /*< 44:252> Facility */ U8 _align6; /*<296: 1> alignment */ U8 _align7; /*<297: 1> alignment */ U8 _align8; /*<298: 1> alignment */ U8 v_user_user; /*<299: 1> valid-flag */ T_M_CC_user_user user_user; /*<300:132> User-user */ U8 _align9; /*<432: 1> alignment */ U8 _align10; /*<433: 1> alignment */ U8 _align11; /*<434: 1> alignment */ U8 v_ss_version; /*<435: 1> valid-flag */ T_M_CC_ss_version ss_version; /*<436: 4> SS Version Indicator */ } T_U_DISCONNECT; #endif #ifndef __T_U_EMERGE_SETUP__ #define __T_U_EMERGE_SETUP__ /* * * CCDGEN:WriteStruct_Count==379 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_bearer_cap; /*< 3: 1> valid-flag */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ } T_U_EMERGE_SETUP; #endif #ifndef __T_D_FACILITY__ #define __T_D_FACILITY__ /* * * CCDGEN:WriteStruct_Count==380 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_facility facility; /*< 4:252> Facility */ } T_D_FACILITY; #endif #ifndef __T_U_FACILITY__ #define __T_U_FACILITY__ /* * * CCDGEN:WriteStruct_Count==381 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_facility facility; /*< 4:252> Facility */ U8 _align3; /*<256: 1> alignment */ U8 _align4; /*<257: 1> alignment */ U8 _align5; /*<258: 1> alignment */ U8 v_ss_version; /*<259: 1> valid-flag */ T_M_CC_ss_version ss_version; /*<260: 4> SS Version Indicator */ } T_U_FACILITY; #endif #ifndef __T_U_HOLD__ #define __T_U_HOLD__ /* * * CCDGEN:WriteStruct_Count==382 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_U_HOLD; #endif #ifndef __T_D_HOLD_ACK__ #define __T_D_HOLD_ACK__ /* * * CCDGEN:WriteStruct_Count==383 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_D_HOLD_ACK; #endif #ifndef __T_D_HOLD_REJ__ #define __T_D_HOLD_REJ__ /* * * CCDGEN:WriteStruct_Count==384 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ } T_D_HOLD_REJ; #endif #ifndef __T_B_MODIFY__ #define __T_B_MODIFY__ /* * * CCDGEN:WriteStruct_Count==385 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ U8 _align3; /*< 96: 1> alignment */ U8 _align4; /*< 97: 1> alignment */ U8 _align5; /*< 98: 1> alignment */ U8 v_low_layer_comp; /*< 99: 1> valid-flag */ T_M_CC_low_layer_comp low_layer_comp; /*<100: 20> Low layer compatibility */ U8 _align6; /*<120: 1> alignment */ U8 _align7; /*<121: 1> alignment */ U8 _align8; /*<122: 1> alignment */ U8 v_high_layer_comp; /*<123: 1> valid-flag */ T_M_CC_high_layer_comp high_layer_comp; /*<124: 12> High layer compatibility */ U8 _align9; /*<136: 1> alignment */ U8 _align10; /*<137: 1> alignment */ U8 _align11; /*<138: 1> alignment */ U8 v_reverse_call; /*<139: 1> valid-flag */ U8 _align12; /*<140: 1> alignment */ U8 _align13; /*<141: 1> alignment */ U8 _align14; /*<142: 1> alignment */ U8 v_immediate_mod; /*<143: 1> valid-flag */ } T_B_MODIFY; #endif #ifndef __T_B_MODIFY_COMP__ #define __T_B_MODIFY_COMP__ /* * * CCDGEN:WriteStruct_Count==386 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ U8 _align3; /*< 96: 1> alignment */ U8 _align4; /*< 97: 1> alignment */ U8 _align5; /*< 98: 1> alignment */ U8 v_low_layer_comp; /*< 99: 1> valid-flag */ T_M_CC_low_layer_comp low_layer_comp; /*<100: 20> Low layer compatibility */ U8 _align6; /*<120: 1> alignment */ U8 _align7; /*<121: 1> alignment */ U8 _align8; /*<122: 1> alignment */ U8 v_high_layer_comp; /*<123: 1> valid-flag */ T_M_CC_high_layer_comp high_layer_comp; /*<124: 12> High layer compatibility */ U8 _align9; /*<136: 1> alignment */ U8 _align10; /*<137: 1> alignment */ U8 _align11; /*<138: 1> alignment */ U8 v_reverse_call; /*<139: 1> valid-flag */ } T_B_MODIFY_COMP; #endif #ifndef __T_B_MODIFY_REJ__ #define __T_B_MODIFY_REJ__ /* * * CCDGEN:WriteStruct_Count==387 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ T_M_CC_cc_cause cc_cause; /*< 96: 36> Cause */ U8 _align3; /*<132: 1> alignment */ U8 _align4; /*<133: 1> alignment */ U8 _align5; /*<134: 1> alignment */ U8 v_low_layer_comp; /*<135: 1> valid-flag */ T_M_CC_low_layer_comp low_layer_comp; /*<136: 20> Low layer compatibility */ U8 _align6; /*<156: 1> alignment */ U8 _align7; /*<157: 1> alignment */ U8 _align8; /*<158: 1> alignment */ U8 v_high_layer_comp; /*<159: 1> valid-flag */ T_M_CC_high_layer_comp high_layer_comp; /*<160: 12> High layer compatibility */ } T_B_MODIFY_REJ; #endif #ifndef __T_B_NOTIFY__ #define __T_B_NOTIFY__ /* * * CCDGEN:WriteStruct_Count==388 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_notific notific; /*< 4: 4> Notification indicator */ } T_B_NOTIFY; #endif #ifndef __T_D_PROGRESS__ #define __T_D_PROGRESS__ /* * * CCDGEN:WriteStruct_Count==389 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_progress progress; /*< 4: 8> Progress indicator */ U8 _align3; /*< 12: 1> alignment */ U8 _align4; /*< 13: 1> alignment */ U8 _align5; /*< 14: 1> alignment */ U8 v_user_user; /*< 15: 1> valid-flag */ T_M_CC_user_user user_user; /*< 16:132> User-user */ } T_D_PROGRESS; #endif #ifndef __T_D_RELEASE__ #define __T_D_RELEASE__ /* * * CCDGEN:WriteStruct_Count==390 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_cc_cause; /*< 3: 1> valid-flag */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ U8 _align2; /*< 40: 1> alignment */ U8 _align3; /*< 41: 1> alignment */ U8 _align4; /*< 42: 1> alignment */ U8 v_cc_cause_2; /*< 43: 1> valid-flag */ T_M_CC_cc_cause_2 cc_cause_2; /*< 44: 36> Cause */ U8 _align5; /*< 80: 1> alignment */ U8 _align6; /*< 81: 1> alignment */ U8 _align7; /*< 82: 1> alignment */ U8 v_facility; /*< 83: 1> valid-flag */ T_M_CC_facility facility; /*< 84:252> Facility */ U8 _align8; /*<336: 1> alignment */ U8 _align9; /*<337: 1> alignment */ U8 _align10; /*<338: 1> alignment */ U8 v_user_user; /*<339: 1> valid-flag */ T_M_CC_user_user user_user; /*<340:132> User-user */ } T_D_RELEASE; #endif #ifndef __T_U_RELEASE__ #define __T_U_RELEASE__ /* * * CCDGEN:WriteStruct_Count==391 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_cc_cause; /*< 3: 1> valid-flag */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ U8 _align2; /*< 40: 1> alignment */ U8 _align3; /*< 41: 1> alignment */ U8 _align4; /*< 42: 1> alignment */ U8 v_cc_cause_2; /*< 43: 1> valid-flag */ T_M_CC_cc_cause_2 cc_cause_2; /*< 44: 36> Cause */ U8 _align5; /*< 80: 1> alignment */ U8 _align6; /*< 81: 1> alignment */ U8 _align7; /*< 82: 1> alignment */ U8 v_facility; /*< 83: 1> valid-flag */ T_M_CC_facility facility; /*< 84:252> Facility */ U8 _align8; /*<336: 1> alignment */ U8 _align9; /*<337: 1> alignment */ U8 _align10; /*<338: 1> alignment */ U8 v_user_user; /*<339: 1> valid-flag */ T_M_CC_user_user user_user; /*<340:132> User-user */ U8 _align11; /*<472: 1> alignment */ U8 _align12; /*<473: 1> alignment */ U8 _align13; /*<474: 1> alignment */ U8 v_ss_version; /*<475: 1> valid-flag */ T_M_CC_ss_version ss_version; /*<476: 4> SS Version Indicator */ } T_U_RELEASE; #endif #ifndef __T_D_RELEASE_COMP__ #define __T_D_RELEASE_COMP__ /* * * CCDGEN:WriteStruct_Count==392 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_cc_cause; /*< 3: 1> valid-flag */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ U8 _align2; /*< 40: 1> alignment */ U8 _align3; /*< 41: 1> alignment */ U8 _align4; /*< 42: 1> alignment */ U8 v_facility; /*< 43: 1> valid-flag */ T_M_CC_facility facility; /*< 44:252> Facility */ U8 _align5; /*<296: 1> alignment */ U8 _align6; /*<297: 1> alignment */ U8 _align7; /*<298: 1> alignment */ U8 v_user_user; /*<299: 1> valid-flag */ T_M_CC_user_user user_user; /*<300:132> User-user */ } T_D_RELEASE_COMP; #endif #ifndef __T_U_RELEASE_COMP__ #define __T_U_RELEASE_COMP__ /* * * CCDGEN:WriteStruct_Count==393 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_cc_cause; /*< 3: 1> valid-flag */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ U8 _align2; /*< 40: 1> alignment */ U8 _align3; /*< 41: 1> alignment */ U8 _align4; /*< 42: 1> alignment */ U8 v_facility; /*< 43: 1> valid-flag */ T_M_CC_facility facility; /*< 44:252> Facility */ U8 _align5; /*<296: 1> alignment */ U8 _align6; /*<297: 1> alignment */ U8 _align7; /*<298: 1> alignment */ U8 v_user_user; /*<299: 1> valid-flag */ T_M_CC_user_user user_user; /*<300:132> User-user */ U8 _align8; /*<432: 1> alignment */ U8 _align9; /*<433: 1> alignment */ U8 _align10; /*<434: 1> alignment */ U8 v_ss_version; /*<435: 1> valid-flag */ T_M_CC_ss_version ss_version; /*<436: 4> SS Version Indicator */ } T_U_RELEASE_COMP; #endif #ifndef __T_U_RETRIEVE__ #define __T_U_RETRIEVE__ /* * * CCDGEN:WriteStruct_Count==394 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_U_RETRIEVE; #endif #ifndef __T_D_RETRIEVE_ACK__ #define __T_D_RETRIEVE_ACK__ /* * * CCDGEN:WriteStruct_Count==395 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_D_RETRIEVE_ACK; #endif #ifndef __T_D_RETRIEVE_REJ__ #define __T_D_RETRIEVE_REJ__ /* * * CCDGEN:WriteStruct_Count==396 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ } T_D_RETRIEVE_REJ; #endif #ifndef __T_D_SETUP__ #define __T_D_SETUP__ /* * * CCDGEN:WriteStruct_Count==397 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 v_repeat; /*< 1: 1> valid-flag */ U8 repeat; /*< 2: 1> Repeat indicator */ U8 v_bearer_cap; /*< 3: 1> valid-flag */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ U8 _align0; /*< 96: 1> alignment */ U8 _align1; /*< 97: 1> alignment */ U8 _align2; /*< 98: 1> alignment */ U8 v_bearer_cap_2; /*< 99: 1> valid-flag */ T_M_CC_bearer_cap_2 bearer_cap_2; /*<100: 92> Bearer capability */ U8 _align3; /*<192: 1> alignment */ U8 _align4; /*<193: 1> alignment */ U8 _align5; /*<194: 1> alignment */ U8 v_facility; /*<195: 1> valid-flag */ T_M_CC_facility facility; /*<196:252> Facility */ U8 _align6; /*<448: 1> alignment */ U8 _align7; /*<449: 1> alignment */ U8 _align8; /*<450: 1> alignment */ U8 v_progress; /*<451: 1> valid-flag */ T_M_CC_progress progress; /*<452: 8> Progress indicator */ U8 v_signal; /*<460: 1> valid-flag */ U8 signal; /*<461: 1> Signal */ U8 _align9; /*<462: 1> alignment */ U8 v_calling_num; /*<463: 1> valid-flag */ T_M_CC_calling_num calling_num; /*<464: 32> Calling party BCD number */ U8 _align10; /*<496: 1> alignment */ U8 _align11; /*<497: 1> alignment */ U8 _align12; /*<498: 1> alignment */ U8 v_calling_subaddr; /*<499: 1> valid-flag */ T_M_CC_calling_subaddr calling_subaddr; /*<500: 28> Calling party subaddress */ U8 _align13; /*<528: 1> alignment */ U8 _align14; /*<529: 1> alignment */ U8 _align15; /*<530: 1> alignment */ U8 v_dl_called_num; /*<531: 1> valid-flag */ T_M_CC_dl_called_num dl_called_num; /*<532: 40> Called party BCD number */ U8 _align16; /*<572: 1> alignment */ U8 _align17; /*<573: 1> alignment */ U8 _align18; /*<574: 1> alignment */ U8 v_called_subaddr; /*<575: 1> valid-flag */ T_M_CC_called_subaddr called_subaddr; /*<576: 28> Called party subaddress */ U8 _align19; /*<604: 1> alignment */ U8 _align20; /*<605: 1> alignment */ U8 _align21; /*<606: 1> alignment */ U8 v_redirecting_num; /*<607: 1> valid-flag */ T_M_CC_redirecting_num redirecting_num; /*<608: 44> Redirecting party BCD number */ U8 _align22; /*<652: 1> alignment */ U8 _align23; /*<653: 1> alignment */ U8 _align24; /*<654: 1> alignment */ U8 v_redirecting_subaddr; /*<655: 1> valid-flag */ T_M_CC_redirecting_subaddr redirecting_subaddr; /*<656: 28> Redirection party subaddress */ U8 v_repeat_2; /*<684: 1> valid-flag */ U8 repeat_2; /*<685: 1> Repeat indicator */ U8 _align25; /*<686: 1> alignment */ U8 v_low_layer_comp; /*<687: 1> valid-flag */ T_M_CC_low_layer_comp low_layer_comp; /*<688: 20> Low layer compatibility */ U8 _align26; /*<708: 1> alignment */ U8 _align27; /*<709: 1> alignment */ U8 _align28; /*<710: 1> alignment */ U8 v_low_layer_comp_2; /*<711: 1> valid-flag */ T_M_CC_low_layer_comp_2 low_layer_comp_2; /*<712: 20> Low layer compatibility */ U8 v_repeat_3; /*<732: 1> valid-flag */ U8 repeat_3; /*<733: 1> Repeat indicator */ U8 _align29; /*<734: 1> alignment */ U8 v_high_layer_comp; /*<735: 1> valid-flag */ T_M_CC_high_layer_comp high_layer_comp; /*<736: 12> High layer compatibility */ U8 _align30; /*<748: 1> alignment */ U8 _align31; /*<749: 1> alignment */ U8 _align32; /*<750: 1> alignment */ U8 v_high_layer_comp_2; /*<751: 1> valid-flag */ T_M_CC_high_layer_comp_2 high_layer_comp_2; /*<752: 12> High layer compatibility */ U8 _align33; /*<764: 1> alignment */ U8 _align34; /*<765: 1> alignment */ U8 _align35; /*<766: 1> alignment */ U8 v_user_user; /*<767: 1> valid-flag */ T_M_CC_user_user user_user; /*<768:132> User-user */ // ELEM-FF: REL99 // U8 v_priority_grant; /*<900: 1> valid-flag */ // U8 priority_grant; /*< 0: 0> Prioritiy granted */ // ELEM-FF: REL99 // U8 v_alerting_pattern; /*< 0: 0> valid-flag */ // // T_M_CC_alerting_pattern alerting_pattern; /*< 0: 0> Alerting pattern */ // ELEM-FF: REL99 // U8 v_cause_of_no_cli; /*< 0: 0> valid-flag */ // // T_M_CC_cause_of_no_cli cause_of_no_cli; /*< 0: 0> Cause of no CLI */ } T_D_SETUP; #endif #ifndef __T_U_SETUP__ #define __T_U_SETUP__ /* * * CCDGEN:WriteStruct_Count==398 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 v_repeat; /*< 1: 1> valid-flag */ U8 repeat; /*< 2: 1> Repeat indicator */ U8 v_bearer_cap; /*< 3: 1> valid-flag */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ U8 _align0; /*< 96: 1> alignment */ U8 _align1; /*< 97: 1> alignment */ U8 _align2; /*< 98: 1> alignment */ U8 v_bearer_cap_2; /*< 99: 1> valid-flag */ T_M_CC_bearer_cap_2 bearer_cap_2; /*<100: 92> Bearer capability */ U8 _align3; /*<192: 1> alignment */ U8 _align4; /*<193: 1> alignment */ U8 _align5; /*<194: 1> alignment */ U8 v_facility; /*<195: 1> valid-flag */ T_M_CC_facility facility; /*<196:252> Facility */ U8 _align6; /*<448: 1> alignment */ U8 _align7; /*<449: 1> alignment */ U8 _align8; /*<450: 1> alignment */ U8 v_calling_subaddr; /*<451: 1> valid-flag */ T_M_CC_calling_subaddr calling_subaddr; /*<452: 28> Calling party subaddress */ U8 _align9; /*<480: 1> alignment */ U8 _align10; /*<481: 1> alignment */ U8 _align11; /*<482: 1> alignment */ U8 v_ul_called_num; /*<483: 1> valid-flag */ T_M_CC_ul_called_num ul_called_num; /*<484: 88> Called party BCD number */ U8 _align12; /*<572: 1> alignment */ U8 _align13; /*<573: 1> alignment */ U8 _align14; /*<574: 1> alignment */ U8 v_called_subaddr; /*<575: 1> valid-flag */ T_M_CC_called_subaddr called_subaddr; /*<576: 28> Called party subaddress */ U8 v_repeat_2; /*<604: 1> valid-flag */ U8 repeat_2; /*<605: 1> Repeat indicator */ U8 _align15; /*<606: 1> alignment */ U8 v_low_layer_comp; /*<607: 1> valid-flag */ T_M_CC_low_layer_comp low_layer_comp; /*<608: 20> Low layer compatibility */ U8 _align16; /*<628: 1> alignment */ U8 _align17; /*<629: 1> alignment */ U8 _align18; /*<630: 1> alignment */ U8 v_low_layer_comp_2; /*<631: 1> valid-flag */ T_M_CC_low_layer_comp_2 low_layer_comp_2; /*<632: 20> Low layer compatibility */ U8 v_repeat_3; /*<652: 1> valid-flag */ U8 repeat_3; /*<653: 1> Repeat indicator */ U8 _align19; /*<654: 1> alignment */ U8 v_high_layer_comp; /*<655: 1> valid-flag */ T_M_CC_high_layer_comp high_layer_comp; /*<656: 12> High layer compatibility */ U8 _align20; /*<668: 1> alignment */ U8 _align21; /*<669: 1> alignment */ U8 _align22; /*<670: 1> alignment */ U8 v_high_layer_comp_2; /*<671: 1> valid-flag */ T_M_CC_high_layer_comp_2 high_layer_comp_2; /*<672: 12> High layer compatibility */ U8 _align23; /*<684: 1> alignment */ U8 _align24; /*<685: 1> alignment */ U8 _align25; /*<686: 1> alignment */ U8 v_user_user; /*<687: 1> valid-flag */ T_M_CC_user_user user_user; /*<688:132> User-user */ U8 _align26; /*<820: 1> alignment */ U8 _align27; /*<821: 1> alignment */ U8 _align28; /*<822: 1> alignment */ U8 v_ss_version; /*<823: 1> valid-flag */ T_M_CC_ss_version ss_version; /*<824: 4> SS Version Indicator */ U8 _align29; /*<828: 1> alignment */ U8 _align30; /*<829: 1> alignment */ U8 _align31; /*<830: 1> alignment */ U8 v_clir_suppr; /*<831: 1> valid-flag */ U8 _align32; /*<832: 1> alignment */ U8 _align33; /*<833: 1> alignment */ U8 _align34; /*<834: 1> alignment */ U8 v_clir_invoc; /*<835: 1> valid-flag */ U8 _align35; /*<836: 1> alignment */ U8 _align36; /*<837: 1> alignment */ U8 _align37; /*<838: 1> alignment */ U8 v_call_ctrl_cap; /*<839: 1> valid-flag */ T_M_CC_call_ctrl_cap call_ctrl_cap; /*<840: 4> Call Control Capabilities */ U8 _align38; /*<844: 1> alignment */ U8 _align39; /*<845: 1> alignment */ U8 _align40; /*<846: 1> alignment */ U8 v_fac_adv; /*<847: 1> valid-flag */ T_M_CC_fac_adv fac_adv; /*<848:252> Facility */ } T_U_SETUP; #endif #ifndef __T_U_START_DTMF__ #define __T_U_START_DTMF__ /* * * CCDGEN:WriteStruct_Count==399 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_key_facility; /*< 3: 1> valid-flag */ T_M_CC_key_facility key_facility; /*< 4: 4> Keypad facility */ } T_U_START_DTMF; #endif #ifndef __T_D_START_DTMF_ACK__ #define __T_D_START_DTMF_ACK__ /* * * CCDGEN:WriteStruct_Count==400 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_key_facility; /*< 3: 1> valid-flag */ T_M_CC_key_facility key_facility; /*< 4: 4> Keypad facility */ } T_D_START_DTMF_ACK; #endif #ifndef __T_D_START_DTMF_REJ__ #define __T_D_START_DTMF_REJ__ /* * * CCDGEN:WriteStruct_Count==401 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ } T_D_START_DTMF_REJ; #endif #ifndef __T_B_STATUS__ #define __T_B_STATUS__ /* * * CCDGEN:WriteStruct_Count==402 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_cc_cause cc_cause; /*< 4: 36> Cause */ T_M_CC_call_state call_state; /*< 40: 4> Call state */ U8 _align3; /*< 44: 1> alignment */ U8 _align4; /*< 45: 1> alignment */ U8 _align5; /*< 46: 1> alignment */ U8 v_aux_states; /*< 47: 1> valid-flag */ T_M_CC_aux_states aux_states; /*< 48: 4> Auxiliary states */ } T_B_STATUS; #endif #ifndef __T_B_STATUS_ENQ__ #define __T_B_STATUS_ENQ__ /* * * CCDGEN:WriteStruct_Count==403 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_B_STATUS_ENQ; #endif #ifndef __T_U_STOP_DTMF__ #define __T_U_STOP_DTMF__ /* * * CCDGEN:WriteStruct_Count==404 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_U_STOP_DTMF; #endif #ifndef __T_D_STOP_DTMF_ACK__ #define __T_D_STOP_DTMF_ACK__ /* * * CCDGEN:WriteStruct_Count==405 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ } T_D_STOP_DTMF_ACK; #endif #ifndef __T_B_USER_INFO__ #define __T_B_USER_INFO__ /* * * CCDGEN:WriteStruct_Count==406 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_user_user user_user; /*< 4:132> User-user */ U8 _align3; /*<136: 1> alignment */ U8 _align4; /*<137: 1> alignment */ U8 _align5; /*<138: 1> alignment */ U8 v_more_data; /*<139: 1> valid-flag */ } T_B_USER_INFO; #endif #ifndef __T_U_START_CC__ #define __T_U_START_CC__ /* * * CCDGEN:WriteStruct_Count==407 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 v_call_ctrl_cap; /*< 3: 1> valid-flag */ T_M_CC_call_ctrl_cap call_ctrl_cap; /*< 4: 4> Call Control Capabilities */ } T_U_START_CC; #endif #ifndef __T_D_RECALL__ #define __T_D_RECALL__ /* * * CCDGEN:WriteStruct_Count==408 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_recall_type recall_type; /*< 4: 4> Recall Type */ T_M_CC_facility facility; /*< 8:252> Facility */ } T_D_RECALL; #endif #ifndef __T_U_CC_EST_CONF__ #define __T_U_CC_EST_CONF__ /* * * CCDGEN:WriteStruct_Count==409 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 v_repeat; /*< 1: 1> valid-flag */ U8 repeat; /*< 2: 1> Repeat indicator */ U8 v_bearer_cap; /*< 3: 1> valid-flag */ T_M_CC_bearer_cap bearer_cap; /*< 4: 92> Bearer capability */ U8 _align0; /*< 96: 1> alignment */ U8 _align1; /*< 97: 1> alignment */ U8 _align2; /*< 98: 1> alignment */ U8 v_bearer_cap_2; /*< 99: 1> valid-flag */ T_M_CC_bearer_cap_2 bearer_cap_2; /*<100: 92> Bearer capability */ U8 _align3; /*<192: 1> alignment */ U8 _align4; /*<193: 1> alignment */ U8 _align5; /*<194: 1> alignment */ U8 v_cc_cause; /*<195: 1> valid-flag */ T_M_CC_cc_cause cc_cause; /*<196: 36> Cause */ } T_U_CC_EST_CONF; #endif #ifndef __T_D_CC_ESTABLISHMENT__ #define __T_D_CC_ESTABLISHMENT__ /* * * CCDGEN:WriteStruct_Count==410 */ typedef struct { U8 msg_type; /*< 0: 1> Message Type */ U8 _align0; /*< 1: 1> alignment */ U8 _align1; /*< 2: 1> alignment */ U8 _align2; /*< 3: 1> alignment */ T_M_CC_setup_cont setup_cont; /*< 4:252> Setup Container */ } T_D_CC_ESTABLISHMENT; #endif #include "CDG_LEAVE.h" #endif