libosmogsm 1.13.1.1-afb4 Osmocom GSM library

Data Structures | Macros | Enumerations | Functions | Variables
gsm_08_08.h File Reference
`#include <stdlib.h>`
`#include <stdbool.h>`
`#include <stdint.h>`
`#include <osmocom/core/linuxlist.h>`
`#include <osmocom/core/utils.h>`
`#include <osmocom/core/endian.h>`

Go to the source code of this file.

## Data Structures
struct | bssmap_header
struct | dtap_header
struct | gsm0808_speech_codec
| 3GPP TS 48.008 3.2.2.104 Speech Codec. More...
struct | gsm0808_speech_codec_list
struct | gsm0808_channel_type
struct | gsm0808_encrypt_info
struct | gsm0808_cell_id_list
| DEPRECATED: This definition of the cell identifier list is insufficient. More...
struct | gsm0808_diagnostics

## Macros
#define | CELL_IDENT_LAI_AND_LAC CELL_IDENT_LAI
#define | BSS_MAP_MSG_ASSIGMENT_RQST BSS_MAP_MSG_ASSIGNMENT_RQST
#define | BSS_MAP_MSG_ASSIGMENT_COMPLETE BSS_MAP_MSG_ASSIGNMENT_COMPLETE
#define | BSS_MAP_MSG_ASSIGMENT_FAILURE BSS_MAP_MSG_ASSIGNMENT_FAILURE
#define | GSM0808_DATA_FULL_RPREF GSM0808_DATA_FULL_PREF
#define | GSM0808_SCT_EXT 0x0f
#define | SPEECH_CODEC_MAXLEN 255
#define | CH_TYPE_PERM_SPCH_MAXLEN 9
#define | ENCRY_INFO_KEY_MAXLEN 252
#define | ENCRY_INFO_PERM_ALGO_MAXLEN 8
#define | CELL_ID_LIST_LAC_MAXLEN 127

## Enumerations
enum | CELL_IDENT { CELL_IDENT_WHOLE_GLOBAL = 0 , CELL_IDENT_LAC_AND_CI = 1 , CELL_IDENT_CI = 2 , CELL_IDENT_NO_CELL = 3 , CELL_IDENT_LAI = 4 , CELL_IDENT_LAC = 5 , CELL_IDENT_BSS = 6 , CELL_IDENT_UTRAN_PLMN_LAC_RNC = 8 , CELL_IDENT_UTRAN_RNC = 9 , CELL_IDENT_UTRAN_LAC_RNC = 10 , CELL_IDENT_SAI = 11 , CELL_IDENT_WHOLE_GLOBAL_PS = 128 }
enum | BSSAP_MSG_TYPE { BSSAP_MSG_BSS_MANAGEMENT = 0x0 , BSSAP_MSG_DTAP = 0x1 }
enum | gsm0406_dlci_sapi { DLCI_SAPI_RR_MM_CC = 0x0 , DLCI_SAPI_SMS = 0x3 }
enum | BSS_MAP_MSG_TYPE { BSS_MAP_MSG_RESERVED_0 = 0 , BSS_MAP_MSG_ASSIGNMENT_RQST = 1 , BSS_MAP_MSG_ASSIGNMENT_COMPLETE = 2 , BSS_MAP_MSG_ASSIGNMENT_FAILURE = 3 , BSS_MAP_MSG_CHAN_MOD_RQST = 8 , BSS_MAP_MSG_HANDOVER_RQST = 16 , BSS_MAP_MSG_HANDOVER_REQUIRED = 17 , BSS_MAP_MSG_HANDOVER_RQST_ACKNOWLEDGE = 18 , BSS_MAP_MSG_HANDOVER_CMD = 19 , BSS_MAP_MSG_HANDOVER_COMPLETE = 20 , BSS_MAP_MSG_HANDOVER_SUCCEEDED = 21 , BSS_MAP_MSG_HANDOVER_FAILURE = 22 , BSS_MAP_MSG_HANDOVER_PERFORMED = 23 , BSS_MAP_MSG_HANDOVER_CANDIDATE_ENQUIRE = 24 , BSS_MAP_MSG_HANDOVER_CANDIDATE_RESPONSE = 25 , BSS_MAP_MSG_HANDOVER_REQUIRED_REJECT = 26 , BSS_MAP_MSG_HANDOVER_DETECT = 27 , BSS_MAP_MSG_INT_HANDOVER_REQUIRED = 0x70 , BSS_MAP_MSG_INT_HANDOVER_REQUIRED_REJ = 0x71 , BSS_MAP_MSG_INT_HANDOVER_CMD = 0x72 , BSS_MAP_MSG_INT_HANDOVER_ENQUIRY = 0x73 , BSS_MAP_MSG_CLEAR_CMD = 32 , BSS_MAP_MSG_CLEAR_COMPLETE = 33 , BSS_MAP_MSG_CLEAR_RQST = 34 , BSS_MAP_MSG_RESERVED_1 = 35 , BSS_MAP_MSG_RESERVED_2 = 36 , BSS_MAP_MSG_SAPI_N_REJECT = 37 , BSS_MAP_MSG_CONFUSION = 38 , BSS_MAP_MSG_SUSPEND = 40 , BSS_MAP_MSG_RESUME = 41 , BSS_MAP_MSG_CONNECTION_ORIENTED_INFORMATION = 42 , BSS_MAP_MSG_PERFORM_LOCATION_RQST = 43 , BSS_MAP_MSG_LSA_INFORMATION = 44 , BSS_MAP_MSG_PERFORM_LOCATION_RESPONSE = 45 , BSS_MAP_MSG_PERFORM_LOCATION_ABORT = 46 , BSS_MAP_MSG_COMMON_ID = 47 , BSS_MAP_MSG_REROUTE_CMD = 0x78 , BSS_MAP_MSG_REROUTE_COMPLETE = 0x79 , BSS_MAP_MSG_RESET = 48 , BSS_MAP_MSG_RESET_ACKNOWLEDGE = 49 , BSS_MAP_MSG_OVERLOAD = 50 , BSS_MAP_MSG_RESERVED_3 = 51 , BSS_MAP_MSG_RESET_CIRCUIT = 52 , BSS_MAP_MSG_RESET_CIRCUIT_ACKNOWLEDGE = 53 , BSS_MAP_MSG_MSC_INVOKE_TRACE = 54 , BSS_MAP_MSG_BSS_INVOKE_TRACE = 55 , BSS_MAP_MSG_CONNECTIONLESS_INFORMATION = 58 , BSS_MAP_MSG_RESET_IP_RSRC = 0x3d , BSS_MAP_MSG_RESET_IP_RSRC_ACK = 0x3e , BSS_MAP_MSG_BLOCK = 64 , BSS_MAP_MSG_BLOCKING_ACKNOWLEDGE = 65 , BSS_MAP_MSG_UNBLOCK = 66 , BSS_MAP_MSG_UNBLOCKING_ACKNOWLEDGE = 67 , BSS_MAP_MSG_CIRCUIT_GROUP_BLOCK = 68 , BSS_MAP_MSG_CIRCUIT_GROUP_BLOCKING_ACKNOWLEDGE = 69 , BSS_MAP_MSG_CIRCUIT_GROUP_UNBLOCK = 70 , BSS_MAP_MSG_CIRCUIT_GROUP_UNBLOCKING_ACKNOWLEDGE = 71 , BSS_MAP_MSG_UNEQUIPPED_CIRCUIT = 72 , BSS_MAP_MSG_CHANGE_CIRCUIT = 78 , BSS_MAP_MSG_CHANGE_CIRCUIT_ACKNOWLEDGE = 79 , BSS_MAP_MSG_RESOURCE_RQST = 80 , BSS_MAP_MSG_RESOURCE_INDICATION = 81 , BSS_MAP_MSG_PAGING = 82 , BSS_MAP_MSG_CIPHER_MODE_CMD = 83 , BSS_MAP_MSG_CLASSMARK_UPDATE = 84 , BSS_MAP_MSG_CIPHER_MODE_COMPLETE = 85 , BSS_MAP_MSG_QUEUING_INDICATION = 86 , BSS_MAP_MSG_COMPLETE_LAYER_3 = 87 , BSS_MAP_MSG_CLASSMARK_RQST = 88 , BSS_MAP_MSG_CIPHER_MODE_REJECT = 89 , BSS_MAP_MSG_LOAD_INDICATION = 90 , BSS_MAP_MSG_VGCS_VBS_SETUP = 4 , BSS_MAP_MSG_VGCS_VBS_SETUP_ACK = 5 , BSS_MAP_MSG_VGCS_VBS_SETUP_REFUSE = 6 , BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_RQST = 7 , BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_RESULT = 28 , BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_FAILURE = 29 , BSS_MAP_MSG_VGCS_VBS_QUEUING_INDICATION = 30 , BSS_MAP_MSG_UPLINK_RQST = 31 , BSS_MAP_MSG_UPLINK_RQST_ACKNOWLEDGE = 39 , BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_STATUS = 59 , BSS_MAP_MSG_VGCS_VBS_AREA_CELL_INFO = 60 , BSS_MAP_MSG_UPLINK_RQST_CONFIRMATION = 73 , BSS_MAP_MSG_UPLINK_RELEASE_INDICATION = 74 , BSS_MAP_MSG_UPLINK_REJECT_CMD = 75 , BSS_MAP_MSG_UPLINK_RELEASE_CMD = 76 , BSS_MAP_MSG_UPLINK_SEIZED_CMD = 77 , BSS_MAP_MSG_VGCS_ADDL_INFO = 0x60 , BSS_MAP_MSG_VGCS_SMS = 0x61 , BSS_MAP_MSG_NOTIFICATION_DATA = 0x62 , BSS_MAP_MSG_UPLINK_APP_DATA = 0x63 , BSS_MAP_MSG_LCLS_CONNECT_CTRL = 0x74 , BSS_MAP_MSG_LCLS_CONNECT_CTRL_ACK = 0x75 , BSS_MAP_MSG_LCLS_NOTIFICATION = 0x76 }
enum | GSM0808_IE_CODING { GSM0808_IE_CIRCUIT_IDENTITY_CODE = 1 , GSM0808_IE_RESERVED_0 = 2 , GSM0808_IE_RESOURCE_AVAILABLE = 3 , GSM0808_IE_CAUSE = 4 , GSM0808_IE_CELL_IDENTIFIER = 5 , GSM0808_IE_PRIORITY = 6 , GSM0808_IE_LAYER_3_HEADER_INFORMATION = 7 , GSM0808_IE_IMSI = 8 , GSM0808_IE_TMSI = 9 , GSM0808_IE_ENCRYPTION_INFORMATION = 10 , GSM0808_IE_CHANNEL_TYPE = 11 , GSM0808_IE_PERIODICITY = 12 , GSM0808_IE_EXTENDED_RESOURCE_INDICATOR = 13 , GSM0808_IE_NUMBER_OF_MSS = 14 , GSM0808_IE_RESERVED_1 = 15 , GSM0808_IE_RESERVED_2 = 16 , GSM0808_IE_RESERVED_3 = 17 , GSM0808_IE_CLASSMARK_INFORMATION_T2 = 18 , GSM0808_IE_CLASSMARK_INFORMATION_T3 = 19 , GSM0808_IE_INTERFERENCE_BAND_TO_USE = 20 , GSM0808_IE_RR_CAUSE = 21 , GSM0808_IE_RESERVED_4 = 22 , GSM0808_IE_LAYER_3_INFORMATION = 23 , GSM0808_IE_DLCI = 24 , GSM0808_IE_DOWNLINK_DTX_FLAG = 25 , GSM0808_IE_CELL_IDENTIFIER_LIST = 26 , GSM0808_IE_RESPONSE_RQST = 27 , GSM0808_IE_RESOURCE_INDICATION_METHOD = 28 , GSM0808_IE_CLASSMARK_INFORMATION_TYPE_1 = 29 , GSM0808_IE_CIRCUIT_IDENTITY_CODE_LIST = 30 , GSM0808_IE_DIAGNOSTIC = 31 , GSM0808_IE_LAYER_3_MESSAGE_CONTENTS = 32 , GSM0808_IE_CHOSEN_CHANNEL = 33 , GSM0808_IE_TOTAL_RESOURCE_ACCESSIBLE = 34 , GSM0808_IE_CIPHER_RESPONSE_MODE = 35 , GSM0808_IE_CHANNEL_NEEDED = 36 , GSM0808_IE_TRACE_TYPE = 37 , GSM0808_IE_TRIGGERID = 38 , GSM0808_IE_TRACE_REFERENCE = 39 , GSM0808_IE_TRANSACTIONID = 40 , GSM0808_IE_MOBILE_IDENTITY = 41 , GSM0808_IE_OMCID = 42 , GSM0808_IE_FORWARD_INDICATOR = 43 , GSM0808_IE_CHOSEN_ENCR_ALG = 44 , GSM0808_IE_CIRCUIT_POOL = 45 , GSM0808_IE_CIRCUIT_POOL_LIST = 46 , GSM0808_IE_TIME_INDICATION = 47 , GSM0808_IE_RESOURCE_SITUATION = 48 , GSM0808_IE_CURRENT_CHANNEL_TYPE_1 = 49 , GSM0808_IE_QUEUEING_INDICATOR = 50 , GSM0808_IE_SPEECH_VERSION = 64 , GSM0808_IE_ASSIGNMENT_REQUIREMENT = 51 , GSM0808_IE_TALKER_FLAG = 53 , GSM0808_IE_CONNECTION_RELEASE_RQSTED = 54 , GSM0808_IE_GROUP_CALL_REFERENCE = 55 , GSM0808_IE_EMLPP_PRIORITY = 56 , GSM0808_IE_CONFIG_EVO_INDI = 57 , GSM0808_IE_OLD_BSS_TO_NEW_BSS_INFORMATION = 58 , GSM0808_IE_LSA_IDENTIFIER = 59 , GSM0808_IE_LSA_IDENTIFIER_LIST = 60 , GSM0808_IE_LSA_INFORMATION = 61 , GSM0808_IE_LCS_QOS = 62 , GSM0808_IE_LSA_ACCESS_CTRL_SUPPR = 63 , GSM0808_IE_LCS_PRIORITY = 67 , GSM0808_IE_LOCATION_TYPE = 68 , GSM0808_IE_LOCATION_ESTIMATE = 69 , GSM0808_IE_POSITIONING_DATA = 70 , GSM0808_IE_LCS_CAUSE = 71 , GSM0808_IE_LCS_CLIENT_TYPE = 72 , GSM0808_IE_APDU = 73 , GSM0808_IE_NETWORK_ELEMENT_IDENTITY = 74 , GSM0808_IE_GPS_ASSISTANCE_DATA = 75 , GSM0808_IE_DECIPHERING_KEYS = 76 , GSM0808_IE_RETURN_ERROR_RQST = 77 , GSM0808_IE_RETURN_ERROR_CAUSE = 78 , GSM0808_IE_SEGMENTATION = 79 , GSM0808_IE_SERVICE_HANDOVER = 80 , GSM0808_IE_SOURCE_RNC_TO_TARGET_RNC_TRANSPARENT_UMTS = 81 , GSM0808_IE_SOURCE_RNC_TO_TARGET_RNC_TRANSPARENT_CDMA2000 = 82 , GSM0808_IE_RESERVED_5 = 65 , GSM0808_IE_RESERVED_6 = 66 , GSM0808_IE_GERAN_CLASSMARK = 0x53 , GSM0808_IE_GERAN_BSC_CONTAINER = 0x54 , GSM0808_IE_NEW_BSS_TO_OLD_BSS_INFO = 0x61 , GSM0800_IE_INTER_SYSTEM_INFO = 0x63 , GSM0808_IE_SNA_ACCESS_INFO = 0x64 , GSM0808_IE_VSTK_RAND_INFO = 0x65 , GSM0808_IE_VSTK_INFO = 0x66 , GSM0808_IE_PAGING_INFO = 0x67 , GSM0808_IE_IMEI = 0x68 , GSM0808_IE_VELOCITY_ESTIMATE = 0x55 , GSM0808_IE_VGCS_FEATURE_FLAGS = 0x69 , GSM0808_IE_TALKER_PRIORITY = 0x6a , GSM0808_IE_EMERGENCY_SET_INDICATION = 0x6b , GSM0808_IE_TALKER_IDENTITY = 0x6c , GSM0808_IE_CELL_ID_LIST_SEGMENT = 0x6d , GSM0808_IE_SMS_TO_VGCS = 0x6e , GSM0808_IE_VGCS_TALKER_MODE = 0x6f , GSM0808_IE_VGCS_VBS_CELL_STATUS = 0x70 , GSM0808_IE_CELL_ID_LIST_SEG_EST_CELLS = 0x71 , GSM0808_IE_CELL_ID_LIST_SEG_CELLS_TBE = 0x72 , GSM0808_IE_CELL_ID_LIST_SEG_REL_CELLS = 0x73 , GSM0808_IE_CELL_ID_LIST_SEG_NE_CELLS = 0x74 , GSM0808_IE_GANSS_ASSISTANCE_DATA = 0x75 , GSM0808_IE_GANSS_POSITIONING_DATA = 0x76 , GSM0808_IE_GANSS_LOCATION_TYPE = 0x77 , GSM0808_IE_APP_DATA = 0x78 , GSM0808_IE_DATA_IDENTITY = 0x79 , GSM0808_IE_APP_DATA_INFO = 0x7a , GSM0808_IE_MSISDN = 0x7b , GSM0808_IE_AOIP_TRASP_ADDR = 0x7c , GSM0808_IE_SPEECH_CODEC_LIST = 0x7d , GSM0808_IE_SPEECH_CODEC = 0x7e , GSM0808_IE_CALL_ID = 0x7f , GSM0808_IE_CALL_ID_LIST = 0x80 , GSM0808_IE_A_IF_SEL_FOR_RESET = 0x81 , GSM0808_IE_KC_128 = 0x83 , GSM0808_IE_CSG_IDENTIFIER = 0x84 , GSM0808_IE_REDIR_ATTEMPT_FLAG = 0x85 , GSM0808_IE_REROUTE_REJ_CAUSE = 0x86 , GSM0808_IE_SEND_SEQ_NUM = 0x87 , GSM0808_IE_REROUTE_COMPL_OUTCOME = 0x88 , GSM0808_IE_GLOBAL_CALL_REF = 0x89 , GSM0808_IE_LCLS_CONFIG = 0x8a , GSM0808_IE_LCLS_CONN_STATUS_CTRL = 0x8b , GSM0808_IE_LCLS_CORR_NOT_NEEDED = 0x8c , GSM0808_IE_LCLS_BSS_STATUS = 0x8d , GSM0808_IE_LCLS_BREAK_REQ = 0x8e , GSM0808_IE_CSFB_INDICATION = 0x8f , GSM0808_IE_CS_TO_PS_SRVCC = 0x90 , GSM0808_IE_SRC_ENB_TO_TGT_ENB_TRANSP = 0x91 , GSM0808_IE_CS_TO_PS_SRVCC_IND = 0x92 , GSM0808_IE_CN_TO_MS_TRANSP_INFO = 0x93 , GSM0808_IE_SELECTED_PLMN_ID = 0x94 , GSM0808_IE_LAST_USED_EUTRAN_PLMN_ID = 0x95 , GSM0808_IE_OLD_LAI = 0x96 , GSM0808_IE_ATTACH_INDICATOR = 0x97 , GSM0808_IE_SELECTED_OPERATOR = 0x98 , GSM0808_IE_PS_REGISTERED_OPERATOR = 0x99 , GSM0808_IE_CS_REGISTERED_OPERATOR = 0x9a , GSM0808_IE_OSMO_OSMUX_SUPPORT = 0xf0 , GSM0808_IE_OSMO_OSMUX_CID = 0xf1 , GSM0808_IE_THEMWI_RTP_EXTENSIONS = 0xf2 }
enum | GSM0808_SIGNALLING_FIELD_ELEMENT_CODING { GSM0808_FE_IE_EXTRA_INFORMATION = 0x01 , GSM0808_FE_IE_CURRENT_CHANNEL_TYPE_2 = 0x02 , GSM0808_FE_IE_TARGET_CELL_RADIO_INFORMATION = 0x03 , GSM0808_FE_IE_GPRS_SUSPEND_INFORMATION = 0x04 , GSM0808_FE_IE_MULTIRATE_CONFIGURATION_INFORMATION = 0x05 , GSM0808_FE_IE_DUAL_TRANSFER_MODE_INFORMATION = 0x06 , GSM0808_FE_IE_INTER_RAT_HANDOVER_INFO = 0x07 , GSM0808_FE_IE_CDMA2000_CAPABILITY_INFORMATION = 0x08 , GSM0808_FE_IE_DOWNLINK_CELL_LOAD_INFORMATION = 0x09 , GSM0808_FE_IE_UPLINK_CELL_LOAD_INFORMATION = 0x0a , GSM0808_FE_IE_CELL_LOAD_INFORMATION_GROUP = 0x0b , GSM0808_FE_IE_CELL_LOAD_INFORMATION = 0x0c , GSM0808_FE_IE_PS_INDICATION = 0x0d , GSM0808_FE_IE_DTM_HANDOVER_COMMAND_INDICATION = 0x0e , GSM0808_FE_IE_D_RNTI = 0xfe , GSM0808_FE_IE_IRAT_MEASUREMENT_CONFIGURATION = 0x0f , GSM0808_FE_IE_SOURCE_CELL_ID = 0x10 , GSM0808_FE_IE_IRAT_MEASUREMENT_CONFIGURATION_EXTENDED_E_ARFCNS = 0x11 , GSM0808_FE_IE_VGCS_TALKER_MODE = 0x6f , GSM0808_FE_IE_LAST_USED_EUTRAN_PLMN_ID = 0x95 }
enum | gsm0808_cause { GSM0808_CAUSE_RADIO_INTERFACE_MESSAGE_FAILURE = 0 , GSM0808_CAUSE_RADIO_INTERFACE_FAILURE = 1 , GSM0808_CAUSE_UPLINK_QUALITY = 2 , GSM0808_CAUSE_UPLINK_STRENGTH = 3 , GSM0808_CAUSE_DOWNLINK_QUALITY = 4 , GSM0808_CAUSE_DOWNLINK_STRENGTH = 5 , GSM0808_CAUSE_DISTANCE = 6 , GSM0808_CAUSE_O_AND_M_INTERVENTION = 7 , GSM0808_CAUSE_RESPONSE_TO_MSC_INVOCATION = 8 , GSM0808_CAUSE_CALL_CONTROL = 9 , GSM0808_CAUSE_RADIO_INTERFACE_FAILURE_REVERSION = 10 , GSM0808_CAUSE_HANDOVER_SUCCESSFUL = 11 , GSM0808_CAUSE_BETTER_CELL = 12 , GSM0808_CAUSE_DIRECTED_RETRY = 13 , GSM0808_CAUSE_JOINED_GROUP_CALL_CHANNEL = 14 , GSM0808_CAUSE_TRAFFIC = 15 , GSM0808_CAUSE_REDUCE_LOAD_IN_SERVING_CELL = 0x10 , GSM0808_CAUSE_TRAFFIC_LOAD_IN_TGT_HIGHER_THAN_IN_SRC_CELL = 0x11 , GSM0808_CAUSE_RELOCATION_TRIGGERED = 0x12 , GSM0808_CAUSE_REQUESTED_OPT_NOT_AUTHORISED = 0x14 , GSM0808_CAUSE_ALT_CHAN_CONFIG_REQUESTED = 0x15 , GSM0808_CAUSE_RESP_TO_INT_HO_ENQ_MSG = 0x16 , GSM0808_CAUSE_INT_HO_ENQUIRY_REJECT = 0x17 , GSM0808_CAUSE_REDUNDANCY_LEVEL_NOT_ADEQUATE = 0x18 , GSM0808_CAUSE_EQUIPMENT_FAILURE = 32 , GSM0808_CAUSE_NO_RADIO_RESOURCE_AVAILABLE = 33 , GSM0808_CAUSE_RQSTED_TERRESTRIAL_RESOURCE_UNAVAILABLE = 34 , GSM0808_CAUSE_CCCH_OVERLOAD = 35 , GSM0808_CAUSE_PROCESSOR_OVERLOAD = 36 , GSM0808_CAUSE_BSS_NOT_EQUIPPED = 37 , GSM0808_CAUSE_MS_NOT_EQUIPPED = 38 , GSM0808_CAUSE_INVALID_CELL = 39 , GSM0808_CAUSE_TRAFFIC_LOAD = 40 , GSM0808_CAUSE_PREEMPTION = 41 , GSM0808_CAUSE_DTM_HO_SGSN_FAILURE = 0x2a , GSM0808_CAUSE_DTM_HO_PS_ALLOC_FAILURE = 0x2b , GSM0808_CAUSE_RQSTED_TRANSCODING_RATE_ADAPTION_UNAVAILABLE = 48 , GSM0808_CAUSE_CIRCUIT_POOL_MISMATCH = 49 , GSM0808_CAUSE_SWITCH_CIRCUIT_POOL = 50 , GSM0808_CAUSE_RQSTED_SPEECH_VERSION_UNAVAILABLE = 51 , GSM0808_CAUSE_LSA_NOT_ALLOWED = 52 , GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_UNAVAIL = 0x35 , GSM0808_CAUSE_REQ_A_IF_TYPE_UNAVAIL = 0x36 , GSM0808_CAUSE_INVALID_CSG_CELL = 0x37 , GSM0808_CAUSE_REQ_REDUND_LEVEL_NOT_AVAIL = 0x3f , GSM0808_CAUSE_CIPHERING_ALGORITHM_NOT_SUPPORTED = 64 , GSM0808_CAUSE_GERAN_IU_MODE_FAILURE = 0x41 , GSM0808_CAUSE_INC_RELOC_NOT_SUPP_DT_PUESBINE_FEATURE = 0x42 , GSM0808_CAUSE_ACCESS_RESTRICTED_DUE_TO_SHARED_NETWORKS = 0x43 , GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_NOT_SUPP = 0x44 , GSM0808_CAUSE_REQ_A_IF_TYPE_NOT_SUPP = 0x45 , GSM0808_CAUSE_REQ_REDUND_LVL_NOT_SUPP = 0x46 , GSM0808_CAUSE_TERRESTRIAL_CIRCUIT_ALREADY_ALLOCATED = 80 , GSM0808_CAUSE_INVALID_MESSAGE_CONTENTS = 81 , GSM0808_CAUSE_INFORMATION_ELEMENT_OR_FIELD_MISSING = 82 , GSM0808_CAUSE_INCORRECT_VALUE = 83 , GSM0808_CAUSE_UNKNOWN_MESSAGE_TYPE = 84 , GSM0808_CAUSE_UNKNOWN_INFORMATION_ELEMENT = 85 , GSM0808_CAUSE_DTM_HO_INVALID_PS_IND = 0x56 , GSM0808_CAUSE_CALL_ID_ALREADY_ALLOC = 0x57 , GSM0808_CAUSE_PROTOCOL_ERROR_BETWEEN_BSS_AND_MSC = 96 , GSM0808_CAUSE_VGCS_VBS_CALL_NON_EXISTENT = 0x61 , GSM0808_CAUSE_DTM_HO_TIMER_EXPIRY = 0x62 }
enum | gsm0808_cause_class { GSM0808_CAUSE_CLASS_NORM0 = 0 , GSM0808_CAUSE_CLASS_NORM1 = 1 , GSM0808_CAUSE_CLASS_RES_UNAVAIL = 2 , GSM0808_CAUSE_CLASS_SRV_OPT_NA = 3 , GSM0808_CAUSE_CLASS_SRV_OPT_NIMPL = 4 , GSM0808_CAUSE_CLASS_INVAL = 5 , GSM0808_CAUSE_CLASS_PERR = 6 , GSM0808_CAUSE_CLASS_INTW = 7 }
enum | gsm0808_chan_indicator { GSM0808_CHAN_SPEECH = 1 , GSM0808_CHAN_DATA = 2 , GSM0808_CHAN_SIGN = 3 , GSM0808_CHAN_SPEECH_CTM_TEXT_TELEPHONY = 4 }
enum | gsm0808_chan_rate_type_data { GSM0808_DATA_FULL_BM = 0x8 , GSM0808_DATA_HALF_LM = 0x9 , GSM0808_DATA_FULL_PREF = 0xa , GSM0808_DATA_HALF_PREF = 0xb , GSM0808_DATA_FULL_PREF_NO_CHANGE = 0x1a , GSM0808_DATA_HALF_PREF_NO_CHANGE = 0x1b , GSM0808_DATA_MULTI_MASK = 0x20 , GSM0808_DATA_MULTI_MASK_NO_CHANGE = 0x30 }
enum | gsm0808_chan_rate_type_speech { GSM0808_SPEECH_FULL_BM = 0x8 , GSM0808_SPEECH_HALF_LM = 0x9 , GSM0808_SPEECH_FULL_PREF = 0xa , GSM0808_SPEECH_HALF_PREF = 0xb , GSM0808_SPEECH_FULL_PREF_NO_CHANGE = 0x1a , GSM0808_SPEECH_HALF_PREF_NO_CHANGE = 0x1b , GSM0808_SPEECH_PERM = 0xf , GSM0808_SPEECH_PERM_NO_CHANGE = 0x1f }
enum | gsm0808_chan_rate_type_sign { GSM0808_SIGN_ANY = 0x00 , GSM0808_SIGN_SDCCH = 0x01 , GSM0808_SIGN_SDCCH_FULL_BM = 0x02 , GSM0808_SIGN_SDCCH_HALF_LM = 0x03 , GSM0808_SIGN_FULL_BM = 0x08 , GSM0808_SIGN_HALF_LM = 0x09 , GSM0808_SIGN_FULL_PREF = 0x0a , GSM0808_SIGN_HALF_PREF = 0x0b , GSM0808_SIGN_FULL_PREF_NO_CHANGE = 0x1a , GSM0808_SIGN_HALF_PREF_NO_CHANGE = 0x1b }
enum | gsm0808_permitted_speech { GSM0808_PERM_FR1 = 0x01 , GSM0808_PERM_FR2 = 0x11 , GSM0808_PERM_FR3 = 0x21 , GSM0808_PERM_FR4 = 0x41 , GSM0808_PERM_FR5 = 0x42 , GSM0808_PERM_HR1 = GSM0808_PERM_FR1 | 0x4 , GSM0808_PERM_HR2 = GSM0808_PERM_FR2 | 0x4 , GSM0808_PERM_HR3 = GSM0808_PERM_FR3 | 0x4 , GSM0808_PERM_HR4 = 0x46 , GSM0808_PERM_HR6 = 0x45 }
| GSM 08.08 3.2.2.11 Channel Type (see also 3GPP TS 48.008, section 3.2.2.11) More...
enum | gsm0808_data_rate_transp { GSM0808_DATA_RATE_TRANSP_32k0 = 0x3a , GSM0808_DATA_RATE_TRANSP_28k8 = 0x39 , GSM0808_DATA_RATE_TRANSP_14k4 = 0x18 , GSM0808_DATA_RATE_TRANSP_9k6 = 0x10 , GSM0808_DATA_RATE_TRANSP_4k8 = 0x11 , GSM0808_DATA_RATE_TRANSP_2k4 = 0x12 , GSM0808_DATA_RATE_TRANSP_1k2 = 0x13 , GSM0808_DATA_RATE_TRANSP_600 = 0x14 , GSM0808_DATA_RATE_TRANSP_1200_75 = 0x15 }
enum | gsm0808_data_rate_non_transp { GSM0808_DATA_RATE_NON_TRANSP_12000_6000 = 0x00 , GSM0808_DATA_RATE_NON_TRANSP_43k5 = 0x34 , GSM0808_DATA_RATE_NON_TRANSP_29k0 = 0x31 , GSM0808_DATA_RATE_NON_TRANSP_14k5 = 0x14 , GSM0808_DATA_RATE_NON_TRANSP_12k0 = 0x10 , GSM0808_DATA_RATE_NON_TRANSP_6k0 = 0x11 }
enum | gsm0808_data_rate_allowed_r_if { GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_43k5 = 0x40 , GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_32k0 = 0x20 , GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_29k0 = 0x10 , GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_14k5 = 0x08 , GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_12k0 = 0x02 , GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_6k0 = 0x01 }
enum | gsm0808_speech_codec_type { GSM0808_SCT_FR1 = 0x0 , GSM0808_SCT_FR2 = 0x2 , GSM0808_SCT_FR3 = 0x3 , GSM0808_SCT_FR4 = 0xc , GSM0808_SCT_FR5 = 0x9 , GSM0808_SCT_HR1 = 0x1 , GSM0808_SCT_HR3 = 0x4 , GSM0808_SCT_HR4 = 0xd , GSM0808_SCT_HR6 = 0xb , GSM0808_SCT_CSD = 0xfd }
| 3GPP TS 48.008, 3.2.2.103 Speech Codec Type More...
enum | gsm0808_chosen_enc_alg { GSM0808_ALG_ID_A5_0 = 0x01 , GSM0808_ALG_ID_A5_1 = 0x02 , GSM0808_ALG_ID_A5_2 = 0x03 , GSM0808_ALG_ID_A5_3 = 0x04 , GSM0808_ALG_ID_A5_4 = 0x05 , GSM0808_ALG_ID_A5_5 = 0x06 , GSM0808_ALG_ID_A5_6 = 0x07 , GSM0808_ALG_ID_A5_7 = 0x08 }
enum | gsm0808_paging_info { GSM0808_PAGINF_FOR_MT_CALL = 0x00 , GSM0808_PAGINF_FOR_SMS = 0x01 , GSM0808_PAGINF_FOR_USSD = 0x02 }
enum | gsm0808_speech_codec_defaults { GSM0808_SC_CFG_DEFAULT_FR_AMR = 0x57ff , GSM0808_SC_CFG_DEFAULT_HR_AMR = 0x073f , GSM0808_SC_CFG_DEFAULT_OHR_AMR = 0x57ff , GSM0808_SC_CFG_DEFAULT_FR_AMR_WB = 0x01 , GSM0808_SC_CFG_DEFAULT_OFR_AMR_WB = 0x15 , GSM0808_SC_CFG_DEFAULT_OHR_AMR_WB = 0x01 }
| Default speech codec configurations: Some codecs specified with struct gsm0808_speech_codec, require a configuration (cfg). More...
enum | gsm0808_speech_codec_rate_defaults { GSM0808_SC_CFG_DEFAULT_AMR_4_75 = 0xff03 , GSM0808_SC_CFG_DEFAULT_AMR_5_15 = 0x0000 , GSM0808_SC_CFG_DEFAULT_AMR_5_90 = 0xff06 , GSM0808_SC_CFG_DEFAULT_AMR_6_70 = 0x3e08 , GSM0808_SC_CFG_DEFAULT_AMR_7_40 = 0x0c12 , GSM0808_SC_CFG_DEFAULT_AMR_7_95 = 0xc020 , GSM0808_SC_CFG_DEFAULT_AMR_10_2 = 0x3040 , GSM0808_SC_CFG_DEFAULT_AMR_12_2 = 0xc082 }
| Default speech codec configurations broken down by rate. More...
enum | gsm0808_speech_codec_rate { GSM0808_SC_CFG_AMR_4_75 = 0x0001 , GSM0808_SC_CFG_AMR_4_75_5_90_7_40_12_20 = 0x0002 , GSM0808_SC_CFG_AMR_5_90 = 0x0004 , GSM0808_SC_CFG_AMR_6_70 = 0x0008 , GSM0808_SC_CFG_AMR_7_40 = 0x0010 , GSM0808_SC_CFG_AMR_7_95 = 0x0020 , GSM0808_SC_CFG_AMR_10_2 = 0x0040 , GSM0808_SC_CFG_AMR_12_2 = 0x0080 }
| Single speech codec configurations broken down by rate. More...
enum | gsm0808_amr_mode { GSM0808_AMR_MODE_4_75 = 0 , GSM0808_AMR_MODE_5_15 , GSM0808_AMR_MODE_5_90 , GSM0808_AMR_MODE_6_70 , GSM0808_AMR_MODE_7_40 , GSM0808_AMR_MODE_7_95 , GSM0808_AMR_MODE_10_2 , GSM0808_AMR_MODE_12_2 }
enum | gsm0808_channel_type_asym_pref { GSM0808_CT_ASYM_PREF_NOT_APPLICABLE = 0 , GSM0808_CT_ASYM_PREF_UL = 1 , GSM0808_CT_ASYM_PREF_DL = 2 , GSM0808_CT_ASYM_PREF_SPARE = 3 }
enum | gsm0808_lcls_config { GSM0808_LCLS_CFG_BOTH_WAY = 0x00 , GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL = 0x01 , GSM0808_LCLS_CFG_BOTH_WAY_AND_SEND_DL = 0x02 , GSM0808_LCLS_CFG_BOTH_WAY_AND_SEND_DL_BLOCK_LOCAL_DL = 0x03 , GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL_SEND_DL = 0x04 , GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL_SEND_DL_BLOCK_LOCAL_DL = 0x05 , GSM0808_LCLS_CFG_NA = 0xFF }
enum | gsm0808_lcls_control { GSM0808_LCLS_CSC_CONNECT = 0x00 , GSM0808_LCLS_CSC_DO_NOT_CONNECT = 0x01 , GSM0808_LCLS_CSC_RELEASE_LCLS = 0x02 , GSM0808_LCLS_CSC_BICAST_UL_AT_HANDOVER = 0x03 , GSM0808_LCLS_CSC_BICAST_UL_AND_RECV_DL_AT_HANDOVER = 0x04 , GSM0808_LCLS_CSC_NA = 0xFF }
enum | gsm0808_lcls_status { GSM0808_LCLS_STS_NOT_YET_LS = 0x00 , GSM0808_LCLS_STS_NOT_POSSIBLE_LS = 0x01 , GSM0808_LCLS_STS_NO_LONGER_LS = 0x02 , GSM0808_LCLS_STS_REQ_LCLS_NOT_SUPP = 0x03 , GSM0808_LCLS_STS_LOCALLY_SWITCHED = 0x04 , GSM0808_LCLS_STS_NA = 0xFF }

## Functions
struct bssmap_header | __attribute__ ((packed))
static const char * | gsm0406_dlci_sapi_name (enum gsm0406_dlci_sapi val)
static const char * | gsm0808_permitted_speech_name (enum gsm0808_permitted_speech val)
static const char * | gsm0808_speech_codec_type_name (enum gsm0808_speech_codec_type val)
static const char * | gsm0808_amr_mode_name (enum gsm0808_amr_mode val)

## Variables
uint8_t | type
uint8_t | length
union {
uint8_t link_id
struct {
} |
}; |
enum gsm0406_dlci_sapi | __attribute__
const struct value_string | gsm0406_dlci_sapi_names []
const struct value_string | gsm0808_permitted_speech_names []
const struct value_string | gsm0808_speech_codec_type_names []
const struct value_string | gsm0808_chosen_enc_alg_names []
const struct value_string | gsm0808_amr_mode_names []
const uint8_t | gsm0808_amr_modes_from_cfg [2][16]
uint8_t | error_pointer_octet
uint8_t | msg [0]

## Macro Definition Documentation

## ◆ BSS_MAP_MSG_ASSIGMENT_COMPLETE

#define BSS_MAP_MSG_ASSIGMENT_COMPLETE BSS_MAP_MSG_ASSIGNMENT_COMPLETE

## ◆ BSS_MAP_MSG_ASSIGMENT_FAILURE

#define BSS_MAP_MSG_ASSIGMENT_FAILURE BSS_MAP_MSG_ASSIGNMENT_FAILURE

## ◆ BSS_MAP_MSG_ASSIGMENT_RQST

#define BSS_MAP_MSG_ASSIGMENT_RQST BSS_MAP_MSG_ASSIGNMENT_RQST

## ◆ CELL_ID_LIST_LAC_MAXLEN

#define CELL_ID_LIST_LAC_MAXLEN 127

## ◆ CELL_IDENT_LAI_AND_LAC

#define CELL_IDENT_LAI_AND_LAC CELL_IDENT_LAI

## ◆ CH_TYPE_PERM_SPCH_MAXLEN

#define CH_TYPE_PERM_SPCH_MAXLEN 9

## ◆ ENCRY_INFO_KEY_MAXLEN

#define ENCRY_INFO_KEY_MAXLEN 252

## ◆ ENCRY_INFO_PERM_ALGO_MAXLEN

#define ENCRY_INFO_PERM_ALGO_MAXLEN 8

## ◆ GSM0808_DATA_FULL_RPREF

#define GSM0808_DATA_FULL_RPREF GSM0808_DATA_FULL_PREF

## ◆ GSM0808_SCT_EXT

#define GSM0808_SCT_EXT 0x0f

## ◆ SPEECH_CODEC_MAXLEN

#define SPEECH_CODEC_MAXLEN 255

## Enumeration Type Documentation

## ◆ BSS_MAP_MSG_TYPE

enum BSS_MAP_MSG_TYPE

Enumerator
BSS_MAP_MSG_RESERVED_0 |
BSS_MAP_MSG_ASSIGNMENT_RQST |
BSS_MAP_MSG_ASSIGNMENT_COMPLETE |
BSS_MAP_MSG_ASSIGNMENT_FAILURE |
BSS_MAP_MSG_CHAN_MOD_RQST |
BSS_MAP_MSG_HANDOVER_RQST |
BSS_MAP_MSG_HANDOVER_REQUIRED |
BSS_MAP_MSG_HANDOVER_RQST_ACKNOWLEDGE |
BSS_MAP_MSG_HANDOVER_CMD |
BSS_MAP_MSG_HANDOVER_COMPLETE |
BSS_MAP_MSG_HANDOVER_SUCCEEDED |
BSS_MAP_MSG_HANDOVER_FAILURE |
BSS_MAP_MSG_HANDOVER_PERFORMED |
BSS_MAP_MSG_HANDOVER_CANDIDATE_ENQUIRE |
BSS_MAP_MSG_HANDOVER_CANDIDATE_RESPONSE |
BSS_MAP_MSG_HANDOVER_REQUIRED_REJECT |
BSS_MAP_MSG_HANDOVER_DETECT |
BSS_MAP_MSG_INT_HANDOVER_REQUIRED |
BSS_MAP_MSG_INT_HANDOVER_REQUIRED_REJ |
BSS_MAP_MSG_INT_HANDOVER_CMD |
BSS_MAP_MSG_INT_HANDOVER_ENQUIRY |
BSS_MAP_MSG_CLEAR_CMD |
BSS_MAP_MSG_CLEAR_COMPLETE |
BSS_MAP_MSG_CLEAR_RQST |
BSS_MAP_MSG_RESERVED_1 |
BSS_MAP_MSG_RESERVED_2 |
BSS_MAP_MSG_SAPI_N_REJECT |
BSS_MAP_MSG_CONFUSION |
BSS_MAP_MSG_SUSPEND |
BSS_MAP_MSG_RESUME |
BSS_MAP_MSG_CONNECTION_ORIENTED_INFORMATION |
BSS_MAP_MSG_PERFORM_LOCATION_RQST |
BSS_MAP_MSG_LSA_INFORMATION |
BSS_MAP_MSG_PERFORM_LOCATION_RESPONSE |
BSS_MAP_MSG_PERFORM_LOCATION_ABORT |
BSS_MAP_MSG_COMMON_ID |
BSS_MAP_MSG_REROUTE_CMD |
BSS_MAP_MSG_REROUTE_COMPLETE |
BSS_MAP_MSG_RESET |
BSS_MAP_MSG_RESET_ACKNOWLEDGE |
BSS_MAP_MSG_OVERLOAD |
BSS_MAP_MSG_RESERVED_3 |
BSS_MAP_MSG_RESET_CIRCUIT |
BSS_MAP_MSG_RESET_CIRCUIT_ACKNOWLEDGE |
BSS_MAP_MSG_MSC_INVOKE_TRACE |
BSS_MAP_MSG_BSS_INVOKE_TRACE |
BSS_MAP_MSG_CONNECTIONLESS_INFORMATION |
BSS_MAP_MSG_RESET_IP_RSRC |
BSS_MAP_MSG_RESET_IP_RSRC_ACK |
BSS_MAP_MSG_BLOCK |
BSS_MAP_MSG_BLOCKING_ACKNOWLEDGE |
BSS_MAP_MSG_UNBLOCK |
BSS_MAP_MSG_UNBLOCKING_ACKNOWLEDGE |
BSS_MAP_MSG_CIRCUIT_GROUP_BLOCK |
BSS_MAP_MSG_CIRCUIT_GROUP_BLOCKING_ACKNOWLEDGE |
BSS_MAP_MSG_CIRCUIT_GROUP_UNBLOCK |
BSS_MAP_MSG_CIRCUIT_GROUP_UNBLOCKING_ACKNOWLEDGE |
BSS_MAP_MSG_UNEQUIPPED_CIRCUIT |
BSS_MAP_MSG_CHANGE_CIRCUIT |
BSS_MAP_MSG_CHANGE_CIRCUIT_ACKNOWLEDGE |
BSS_MAP_MSG_RESOURCE_RQST |
BSS_MAP_MSG_RESOURCE_INDICATION |
BSS_MAP_MSG_PAGING |
BSS_MAP_MSG_CIPHER_MODE_CMD |
BSS_MAP_MSG_CLASSMARK_UPDATE |
BSS_MAP_MSG_CIPHER_MODE_COMPLETE |
BSS_MAP_MSG_QUEUING_INDICATION |
BSS_MAP_MSG_COMPLETE_LAYER_3 |
BSS_MAP_MSG_CLASSMARK_RQST |
BSS_MAP_MSG_CIPHER_MODE_REJECT |
BSS_MAP_MSG_LOAD_INDICATION |
BSS_MAP_MSG_VGCS_VBS_SETUP |
BSS_MAP_MSG_VGCS_VBS_SETUP_ACK |
BSS_MAP_MSG_VGCS_VBS_SETUP_REFUSE |
BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_RQST |
BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_RESULT |
BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_FAILURE |
BSS_MAP_MSG_VGCS_VBS_QUEUING_INDICATION |
BSS_MAP_MSG_UPLINK_RQST |
BSS_MAP_MSG_UPLINK_RQST_ACKNOWLEDGE |
BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_STATUS |
BSS_MAP_MSG_VGCS_VBS_AREA_CELL_INFO |
BSS_MAP_MSG_UPLINK_RQST_CONFIRMATION |
BSS_MAP_MSG_UPLINK_RELEASE_INDICATION |
BSS_MAP_MSG_UPLINK_REJECT_CMD |
BSS_MAP_MSG_UPLINK_RELEASE_CMD |
BSS_MAP_MSG_UPLINK_SEIZED_CMD |
BSS_MAP_MSG_VGCS_ADDL_INFO |
BSS_MAP_MSG_VGCS_SMS |
BSS_MAP_MSG_NOTIFICATION_DATA |
BSS_MAP_MSG_UPLINK_APP_DATA |
BSS_MAP_MSG_LCLS_CONNECT_CTRL |
BSS_MAP_MSG_LCLS_CONNECT_CTRL_ACK |
BSS_MAP_MSG_LCLS_NOTIFICATION |

## ◆ BSSAP_MSG_TYPE

enum BSSAP_MSG_TYPE

Enumerator
BSSAP_MSG_BSS_MANAGEMENT |
BSSAP_MSG_DTAP |

## ◆ CELL_IDENT

enum CELL_IDENT

Enumerator
CELL_IDENT_WHOLE_GLOBAL |
CELL_IDENT_LAC_AND_CI |
CELL_IDENT_CI |
CELL_IDENT_NO_CELL |
CELL_IDENT_LAI |
CELL_IDENT_LAC |
CELL_IDENT_BSS |
CELL_IDENT_UTRAN_PLMN_LAC_RNC |
CELL_IDENT_UTRAN_RNC |
CELL_IDENT_UTRAN_LAC_RNC |
CELL_IDENT_SAI |
CELL_IDENT_WHOLE_GLOBAL_PS |

## ◆ gsm0406_dlci_sapi

enum gsm0406_dlci_sapi

Enumerator
DLCI_SAPI_RR_MM_CC |
DLCI_SAPI_SMS |

## ◆ gsm0808_amr_mode

enum gsm0808_amr_mode

Enumerator
GSM0808_AMR_MODE_4_75 |
GSM0808_AMR_MODE_5_15 |
GSM0808_AMR_MODE_5_90 |
GSM0808_AMR_MODE_6_70 |
GSM0808_AMR_MODE_7_40 |
GSM0808_AMR_MODE_7_95 |
GSM0808_AMR_MODE_10_2 |
GSM0808_AMR_MODE_12_2 |

## ◆ gsm0808_cause

enum gsm0808_cause

Enumerator
GSM0808_CAUSE_RADIO_INTERFACE_MESSAGE_FAILURE |
GSM0808_CAUSE_RADIO_INTERFACE_FAILURE |
GSM0808_CAUSE_UPLINK_QUALITY |
GSM0808_CAUSE_UPLINK_STRENGTH |
GSM0808_CAUSE_DOWNLINK_QUALITY |
GSM0808_CAUSE_DOWNLINK_STRENGTH |
GSM0808_CAUSE_DISTANCE |
GSM0808_CAUSE_O_AND_M_INTERVENTION |
GSM0808_CAUSE_RESPONSE_TO_MSC_INVOCATION |
GSM0808_CAUSE_CALL_CONTROL |
GSM0808_CAUSE_RADIO_INTERFACE_FAILURE_REVERSION |
GSM0808_CAUSE_HANDOVER_SUCCESSFUL |
GSM0808_CAUSE_BETTER_CELL |
GSM0808_CAUSE_DIRECTED_RETRY |
GSM0808_CAUSE_JOINED_GROUP_CALL_CHANNEL |
GSM0808_CAUSE_TRAFFIC |
GSM0808_CAUSE_REDUCE_LOAD_IN_SERVING_CELL |
GSM0808_CAUSE_TRAFFIC_LOAD_IN_TGT_HIGHER_THAN_IN_SRC_CELL |
GSM0808_CAUSE_RELOCATION_TRIGGERED |
GSM0808_CAUSE_REQUESTED_OPT_NOT_AUTHORISED |
GSM0808_CAUSE_ALT_CHAN_CONFIG_REQUESTED |
GSM0808_CAUSE_RESP_TO_INT_HO_ENQ_MSG |
GSM0808_CAUSE_INT_HO_ENQUIRY_REJECT |
GSM0808_CAUSE_REDUNDANCY_LEVEL_NOT_ADEQUATE |
GSM0808_CAUSE_EQUIPMENT_FAILURE |
GSM0808_CAUSE_NO_RADIO_RESOURCE_AVAILABLE |
GSM0808_CAUSE_RQSTED_TERRESTRIAL_RESOURCE_UNAVAILABLE |
GSM0808_CAUSE_CCCH_OVERLOAD |
GSM0808_CAUSE_PROCESSOR_OVERLOAD |
GSM0808_CAUSE_BSS_NOT_EQUIPPED |
GSM0808_CAUSE_MS_NOT_EQUIPPED |
GSM0808_CAUSE_INVALID_CELL |
GSM0808_CAUSE_TRAFFIC_LOAD |
GSM0808_CAUSE_PREEMPTION |
GSM0808_CAUSE_DTM_HO_SGSN_FAILURE |
GSM0808_CAUSE_DTM_HO_PS_ALLOC_FAILURE |
GSM0808_CAUSE_RQSTED_TRANSCODING_RATE_ADAPTION_UNAVAILABLE |
GSM0808_CAUSE_CIRCUIT_POOL_MISMATCH |
GSM0808_CAUSE_SWITCH_CIRCUIT_POOL |
GSM0808_CAUSE_RQSTED_SPEECH_VERSION_UNAVAILABLE |
GSM0808_CAUSE_LSA_NOT_ALLOWED |
GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_UNAVAIL |
GSM0808_CAUSE_REQ_A_IF_TYPE_UNAVAIL |
GSM0808_CAUSE_INVALID_CSG_CELL |
GSM0808_CAUSE_REQ_REDUND_LEVEL_NOT_AVAIL |
GSM0808_CAUSE_CIPHERING_ALGORITHM_NOT_SUPPORTED |
GSM0808_CAUSE_GERAN_IU_MODE_FAILURE |
GSM0808_CAUSE_INC_RELOC_NOT_SUPP_DT_PUESBINE_FEATURE |
GSM0808_CAUSE_ACCESS_RESTRICTED_DUE_TO_SHARED_NETWORKS |
GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_NOT_SUPP |
GSM0808_CAUSE_REQ_A_IF_TYPE_NOT_SUPP |
GSM0808_CAUSE_REQ_REDUND_LVL_NOT_SUPP |
GSM0808_CAUSE_TERRESTRIAL_CIRCUIT_ALREADY_ALLOCATED |
GSM0808_CAUSE_INVALID_MESSAGE_CONTENTS |
GSM0808_CAUSE_INFORMATION_ELEMENT_OR_FIELD_MISSING |
GSM0808_CAUSE_INCORRECT_VALUE |
GSM0808_CAUSE_UNKNOWN_MESSAGE_TYPE |
GSM0808_CAUSE_UNKNOWN_INFORMATION_ELEMENT |
GSM0808_CAUSE_DTM_HO_INVALID_PS_IND |
GSM0808_CAUSE_CALL_ID_ALREADY_ALLOC |
GSM0808_CAUSE_PROTOCOL_ERROR_BETWEEN_BSS_AND_MSC |
GSM0808_CAUSE_VGCS_VBS_CALL_NON_EXISTENT |
GSM0808_CAUSE_DTM_HO_TIMER_EXPIRY |

## ◆ gsm0808_cause_class

enum gsm0808_cause_class

Enumerator
GSM0808_CAUSE_CLASS_NORM0 |
GSM0808_CAUSE_CLASS_NORM1 |
GSM0808_CAUSE_CLASS_RES_UNAVAIL |
GSM0808_CAUSE_CLASS_SRV_OPT_NA |
GSM0808_CAUSE_CLASS_SRV_OPT_NIMPL |
GSM0808_CAUSE_CLASS_INVAL |
GSM0808_CAUSE_CLASS_PERR |
GSM0808_CAUSE_CLASS_INTW |

## ◆ gsm0808_chan_indicator

enum gsm0808_chan_indicator

Enumerator
GSM0808_CHAN_SPEECH |
GSM0808_CHAN_DATA |
GSM0808_CHAN_SIGN |
GSM0808_CHAN_SPEECH_CTM_TEXT_TELEPHONY |

## ◆ gsm0808_chan_rate_type_data

enum gsm0808_chan_rate_type_data

Enumerator
GSM0808_DATA_FULL_BM |
GSM0808_DATA_HALF_LM |
GSM0808_DATA_FULL_PREF |
GSM0808_DATA_HALF_PREF |
GSM0808_DATA_FULL_PREF_NO_CHANGE |
GSM0808_DATA_HALF_PREF_NO_CHANGE |
GSM0808_DATA_MULTI_MASK |
GSM0808_DATA_MULTI_MASK_NO_CHANGE |

## ◆ gsm0808_chan_rate_type_sign

enum gsm0808_chan_rate_type_sign

Enumerator
GSM0808_SIGN_ANY |
GSM0808_SIGN_SDCCH |
GSM0808_SIGN_SDCCH_FULL_BM |
GSM0808_SIGN_SDCCH_HALF_LM |
GSM0808_SIGN_FULL_BM |
GSM0808_SIGN_HALF_LM |
GSM0808_SIGN_FULL_PREF |
GSM0808_SIGN_HALF_PREF |
GSM0808_SIGN_FULL_PREF_NO_CHANGE |
GSM0808_SIGN_HALF_PREF_NO_CHANGE |

## ◆ gsm0808_chan_rate_type_speech

enum gsm0808_chan_rate_type_speech

Enumerator
GSM0808_SPEECH_FULL_BM |
GSM0808_SPEECH_HALF_LM |
GSM0808_SPEECH_FULL_PREF |
GSM0808_SPEECH_HALF_PREF |
GSM0808_SPEECH_FULL_PREF_NO_CHANGE |
GSM0808_SPEECH_HALF_PREF_NO_CHANGE |
GSM0808_SPEECH_PERM |
GSM0808_SPEECH_PERM_NO_CHANGE |

## ◆ gsm0808_channel_type_asym_pref

enum gsm0808_channel_type_asym_pref

Enumerator
GSM0808_CT_ASYM_PREF_NOT_APPLICABLE |
GSM0808_CT_ASYM_PREF_UL |
GSM0808_CT_ASYM_PREF_DL |
GSM0808_CT_ASYM_PREF_SPARE |

## ◆ gsm0808_chosen_enc_alg

enum gsm0808_chosen_enc_alg

Enumerator
GSM0808_ALG_ID_A5_0 |
GSM0808_ALG_ID_A5_1 |
GSM0808_ALG_ID_A5_2 |
GSM0808_ALG_ID_A5_3 |
GSM0808_ALG_ID_A5_4 |
GSM0808_ALG_ID_A5_5 |
GSM0808_ALG_ID_A5_6 |
GSM0808_ALG_ID_A5_7 |

## ◆ gsm0808_data_rate_allowed_r_if

enum gsm0808_data_rate_allowed_r_if

Enumerator
GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_43k5 |
GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_32k0 |
GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_29k0 |
GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_14k5 |
GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_12k0 |
GSM0808_DATA_RATE_NON_TRANSP_ALLOWED_6k0 |

## ◆ gsm0808_data_rate_non_transp

enum gsm0808_data_rate_non_transp

Enumerator
GSM0808_DATA_RATE_NON_TRANSP_12000_6000 |
GSM0808_DATA_RATE_NON_TRANSP_43k5 |
GSM0808_DATA_RATE_NON_TRANSP_29k0 |
GSM0808_DATA_RATE_NON_TRANSP_14k5 |
GSM0808_DATA_RATE_NON_TRANSP_12k0 |
GSM0808_DATA_RATE_NON_TRANSP_6k0 |

## ◆ gsm0808_data_rate_transp

enum gsm0808_data_rate_transp

Enumerator
GSM0808_DATA_RATE_TRANSP_32k0 |
GSM0808_DATA_RATE_TRANSP_28k8 |
GSM0808_DATA_RATE_TRANSP_14k4 |
GSM0808_DATA_RATE_TRANSP_9k6 |
GSM0808_DATA_RATE_TRANSP_4k8 |
GSM0808_DATA_RATE_TRANSP_2k4 |
GSM0808_DATA_RATE_TRANSP_1k2 |
GSM0808_DATA_RATE_TRANSP_600 |
GSM0808_DATA_RATE_TRANSP_1200_75 |

## ◆ GSM0808_IE_CODING

enum GSM0808_IE_CODING

Enumerator
GSM0808_IE_CIRCUIT_IDENTITY_CODE |
GSM0808_IE_RESERVED_0 |
GSM0808_IE_RESOURCE_AVAILABLE |
GSM0808_IE_CAUSE |
GSM0808_IE_CELL_IDENTIFIER |
GSM0808_IE_PRIORITY |
GSM0808_IE_LAYER_3_HEADER_INFORMATION |
GSM0808_IE_IMSI |
GSM0808_IE_TMSI |
GSM0808_IE_ENCRYPTION_INFORMATION |
GSM0808_IE_CHANNEL_TYPE |
GSM0808_IE_PERIODICITY |
GSM0808_IE_EXTENDED_RESOURCE_INDICATOR |
GSM0808_IE_NUMBER_OF_MSS |
GSM0808_IE_RESERVED_1 |
GSM0808_IE_RESERVED_2 |
GSM0808_IE_RESERVED_3 |
GSM0808_IE_CLASSMARK_INFORMATION_T2 |
GSM0808_IE_CLASSMARK_INFORMATION_T3 |
GSM0808_IE_INTERFERENCE_BAND_TO_USE |
GSM0808_IE_RR_CAUSE |
GSM0808_IE_RESERVED_4 |
GSM0808_IE_LAYER_3_INFORMATION |
GSM0808_IE_DLCI |
GSM0808_IE_DOWNLINK_DTX_FLAG |
GSM0808_IE_CELL_IDENTIFIER_LIST |
GSM0808_IE_RESPONSE_RQST |
GSM0808_IE_RESOURCE_INDICATION_METHOD |
GSM0808_IE_CLASSMARK_INFORMATION_TYPE_1 |
GSM0808_IE_CIRCUIT_IDENTITY_CODE_LIST |
GSM0808_IE_DIAGNOSTIC |
GSM0808_IE_LAYER_3_MESSAGE_CONTENTS |
GSM0808_IE_CHOSEN_CHANNEL |
GSM0808_IE_TOTAL_RESOURCE_ACCESSIBLE |
GSM0808_IE_CIPHER_RESPONSE_MODE |
GSM0808_IE_CHANNEL_NEEDED |
GSM0808_IE_TRACE_TYPE |
GSM0808_IE_TRIGGERID |
GSM0808_IE_TRACE_REFERENCE |
GSM0808_IE_TRANSACTIONID |
GSM0808_IE_MOBILE_IDENTITY |
GSM0808_IE_OMCID |
GSM0808_IE_FORWARD_INDICATOR |
GSM0808_IE_CHOSEN_ENCR_ALG |
GSM0808_IE_CIRCUIT_POOL |
GSM0808_IE_CIRCUIT_POOL_LIST |
GSM0808_IE_TIME_INDICATION |
GSM0808_IE_RESOURCE_SITUATION |
GSM0808_IE_CURRENT_CHANNEL_TYPE_1 |
GSM0808_IE_QUEUEING_INDICATOR |
GSM0808_IE_SPEECH_VERSION |
GSM0808_IE_ASSIGNMENT_REQUIREMENT |
GSM0808_IE_TALKER_FLAG |
GSM0808_IE_CONNECTION_RELEASE_RQSTED |
GSM0808_IE_GROUP_CALL_REFERENCE |
GSM0808_IE_EMLPP_PRIORITY |
GSM0808_IE_CONFIG_EVO_INDI |
GSM0808_IE_OLD_BSS_TO_NEW_BSS_INFORMATION |
GSM0808_IE_LSA_IDENTIFIER |
GSM0808_IE_LSA_IDENTIFIER_LIST |
GSM0808_IE_LSA_INFORMATION |
GSM0808_IE_LCS_QOS |
GSM0808_IE_LSA_ACCESS_CTRL_SUPPR |
GSM0808_IE_LCS_PRIORITY |
GSM0808_IE_LOCATION_TYPE |
GSM0808_IE_LOCATION_ESTIMATE |
GSM0808_IE_POSITIONING_DATA |
GSM0808_IE_LCS_CAUSE |
GSM0808_IE_LCS_CLIENT_TYPE |
GSM0808_IE_APDU |
GSM0808_IE_NETWORK_ELEMENT_IDENTITY |
GSM0808_IE_GPS_ASSISTANCE_DATA |
GSM0808_IE_DECIPHERING_KEYS |
GSM0808_IE_RETURN_ERROR_RQST |
GSM0808_IE_RETURN_ERROR_CAUSE |
GSM0808_IE_SEGMENTATION |
GSM0808_IE_SERVICE_HANDOVER |
GSM0808_IE_SOURCE_RNC_TO_TARGET_RNC_TRANSPARENT_UMTS |
GSM0808_IE_SOURCE_RNC_TO_TARGET_RNC_TRANSPARENT_CDMA2000 |
GSM0808_IE_RESERVED_5 |
GSM0808_IE_RESERVED_6 |
GSM0808_IE_GERAN_CLASSMARK |
GSM0808_IE_GERAN_BSC_CONTAINER |
GSM0808_IE_NEW_BSS_TO_OLD_BSS_INFO |
GSM0800_IE_INTER_SYSTEM_INFO |
GSM0808_IE_SNA_ACCESS_INFO |
GSM0808_IE_VSTK_RAND_INFO |
GSM0808_IE_VSTK_INFO |
GSM0808_IE_PAGING_INFO |
GSM0808_IE_IMEI |
GSM0808_IE_VELOCITY_ESTIMATE |
GSM0808_IE_VGCS_FEATURE_FLAGS |
GSM0808_IE_TALKER_PRIORITY |
GSM0808_IE_EMERGENCY_SET_INDICATION |
GSM0808_IE_TALKER_IDENTITY |
GSM0808_IE_CELL_ID_LIST_SEGMENT |
GSM0808_IE_SMS_TO_VGCS |
GSM0808_IE_VGCS_TALKER_MODE |
GSM0808_IE_VGCS_VBS_CELL_STATUS |
GSM0808_IE_CELL_ID_LIST_SEG_EST_CELLS |
GSM0808_IE_CELL_ID_LIST_SEG_CELLS_TBE |
GSM0808_IE_CELL_ID_LIST_SEG_REL_CELLS |
GSM0808_IE_CELL_ID_LIST_SEG_NE_CELLS |
GSM0808_IE_GANSS_ASSISTANCE_DATA |
GSM0808_IE_GANSS_POSITIONING_DATA |
GSM0808_IE_GANSS_LOCATION_TYPE |
GSM0808_IE_APP_DATA |
GSM0808_IE_DATA_IDENTITY |
GSM0808_IE_APP_DATA_INFO |
GSM0808_IE_MSISDN |
GSM0808_IE_AOIP_TRASP_ADDR |
GSM0808_IE_SPEECH_CODEC_LIST |
GSM0808_IE_SPEECH_CODEC |
GSM0808_IE_CALL_ID |
GSM0808_IE_CALL_ID_LIST |
GSM0808_IE_A_IF_SEL_FOR_RESET |
GSM0808_IE_KC_128 |
GSM0808_IE_CSG_IDENTIFIER |
GSM0808_IE_REDIR_ATTEMPT_FLAG |
GSM0808_IE_REROUTE_REJ_CAUSE |
GSM0808_IE_SEND_SEQ_NUM |
GSM0808_IE_REROUTE_COMPL_OUTCOME |
GSM0808_IE_GLOBAL_CALL_REF |
GSM0808_IE_LCLS_CONFIG |
GSM0808_IE_LCLS_CONN_STATUS_CTRL |
GSM0808_IE_LCLS_CORR_NOT_NEEDED |
GSM0808_IE_LCLS_BSS_STATUS |
GSM0808_IE_LCLS_BREAK_REQ |
GSM0808_IE_CSFB_INDICATION |
GSM0808_IE_CS_TO_PS_SRVCC |
GSM0808_IE_SRC_ENB_TO_TGT_ENB_TRANSP |
GSM0808_IE_CS_TO_PS_SRVCC_IND |
GSM0808_IE_CN_TO_MS_TRANSP_INFO |
GSM0808_IE_SELECTED_PLMN_ID |
GSM0808_IE_LAST_USED_EUTRAN_PLMN_ID |
GSM0808_IE_OLD_LAI |
GSM0808_IE_ATTACH_INDICATOR |
GSM0808_IE_SELECTED_OPERATOR |
GSM0808_IE_PS_REGISTERED_OPERATOR |
GSM0808_IE_CS_REGISTERED_OPERATOR |
GSM0808_IE_OSMO_OSMUX_SUPPORT |
GSM0808_IE_OSMO_OSMUX_CID |
GSM0808_IE_THEMWI_RTP_EXTENSIONS |

## ◆ gsm0808_lcls_config

enum gsm0808_lcls_config

Enumerator
GSM0808_LCLS_CFG_BOTH_WAY |
GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL |
GSM0808_LCLS_CFG_BOTH_WAY_AND_SEND_DL |
GSM0808_LCLS_CFG_BOTH_WAY_AND_SEND_DL_BLOCK_LOCAL_DL |
GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL_SEND_DL |
GSM0808_LCLS_CFG_BOTH_WAY_AND_BICAST_UL_SEND_DL_BLOCK_LOCAL_DL |
GSM0808_LCLS_CFG_NA |

## ◆ gsm0808_lcls_control

enum gsm0808_lcls_control

Enumerator
GSM0808_LCLS_CSC_CONNECT |
GSM0808_LCLS_CSC_DO_NOT_CONNECT |
GSM0808_LCLS_CSC_RELEASE_LCLS |
GSM0808_LCLS_CSC_BICAST_UL_AT_HANDOVER |
GSM0808_LCLS_CSC_BICAST_UL_AND_RECV_DL_AT_HANDOVER |
GSM0808_LCLS_CSC_NA |

## ◆ gsm0808_lcls_status

enum gsm0808_lcls_status

Enumerator
GSM0808_LCLS_STS_NOT_YET_LS |
GSM0808_LCLS_STS_NOT_POSSIBLE_LS |
GSM0808_LCLS_STS_NO_LONGER_LS |
GSM0808_LCLS_STS_REQ_LCLS_NOT_SUPP |
GSM0808_LCLS_STS_LOCALLY_SWITCHED |
GSM0808_LCLS_STS_NA |

## ◆ gsm0808_paging_info

enum gsm0808_paging_info

Enumerator
GSM0808_PAGINF_FOR_MT_CALL |
GSM0808_PAGINF_FOR_SMS |
GSM0808_PAGINF_FOR_USSD |

## ◆ gsm0808_permitted_speech

enum gsm0808_permitted_speech

GSM 08.08 3.2.2.11 Channel Type (see also 3GPP TS 48.008, section 3.2.2.11)

Enumerator
GSM0808_PERM_FR1 | GSM FR.
GSM0808_PERM_FR2 | GSM EFR.
GSM0808_PERM_FR3 | FR AMR.
GSM0808_PERM_FR4 | OFR AMR-WB.
GSM0808_PERM_FR5 | FR AMR-WB.
GSM0808_PERM_HR1 | GSM HR.
GSM0808_PERM_HR2 | (deprecated)
GSM0808_PERM_HR3 | HR AMR.
GSM0808_PERM_HR4 | OHR AMR-WB.
GSM0808_PERM_HR6 | OHR AMR.

## ◆ GSM0808_SIGNALLING_FIELD_ELEMENT_CODING

enum GSM0808_SIGNALLING_FIELD_ELEMENT_CODING

Enumerator
GSM0808_FE_IE_EXTRA_INFORMATION |
GSM0808_FE_IE_CURRENT_CHANNEL_TYPE_2 |
GSM0808_FE_IE_TARGET_CELL_RADIO_INFORMATION |
GSM0808_FE_IE_GPRS_SUSPEND_INFORMATION |
GSM0808_FE_IE_MULTIRATE_CONFIGURATION_INFORMATION |
GSM0808_FE_IE_DUAL_TRANSFER_MODE_INFORMATION |
GSM0808_FE_IE_INTER_RAT_HANDOVER_INFO |
GSM0808_FE_IE_CDMA2000_CAPABILITY_INFORMATION |
GSM0808_FE_IE_DOWNLINK_CELL_LOAD_INFORMATION |
GSM0808_FE_IE_UPLINK_CELL_LOAD_INFORMATION |
GSM0808_FE_IE_CELL_LOAD_INFORMATION_GROUP |
GSM0808_FE_IE_CELL_LOAD_INFORMATION |
GSM0808_FE_IE_PS_INDICATION |
GSM0808_FE_IE_DTM_HANDOVER_COMMAND_INDICATION |
GSM0808_FE_IE_D_RNTI |
GSM0808_FE_IE_IRAT_MEASUREMENT_CONFIGURATION |
GSM0808_FE_IE_SOURCE_CELL_ID |
GSM0808_FE_IE_IRAT_MEASUREMENT_CONFIGURATION_EXTENDED_E_ARFCNS |
GSM0808_FE_IE_VGCS_TALKER_MODE |
GSM0808_FE_IE_LAST_USED_EUTRAN_PLMN_ID |

## ◆ gsm0808_speech_codec_defaults

enum gsm0808_speech_codec_defaults

Default speech codec configurations: Some codecs specified with struct gsm0808_speech_codec, require a configuration (cfg).

The following default configuration will configure the codec (RTP) to match the configuration that is used on the air interface (Um).

Default values for FR_AMR, HR_AMR and OHR_AMR: See also: 3GPP TS 28.062, Table 7.11.3.1.3-2: Preferred Configurations for the Adaptive Multi-Rate Codec Types and 3GPP TS 48.008, Section 3.2.2.103.

Default values for FR_AMR_WB, OFR_AMR_WB and OHR_AMR_WB: See also: 3GPP TS 26.103, Table 5.7-1: Allowed Configurations for the Adaptive Multi-Rate - Wideband Codec Types

This is a copy of 3GPP TS 28.062, Table 7.11.3.1.3-2:

      S0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15

12,20 (x) x x x 10,20 x x x 7,95 x x x 7,40 x x x x 6,70 x x x x x x 5,90 x x x x x x x x x x 5,15 4,75 x x x x x x x x x x

OM F F F F F F F F F F F A F A F A

HR Y Y Y Y Y Y Y Y Y FR Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y

Each bit allows one Codec Configuration. E.g. when bit S3 is set, look at column labeled "3", and see that only 6,7k is active in this configuration; it is "F" forbidden to change in Optimisation Mode, "Y" HR AMR supports this mode, and "Y" FR AMR can also do it.

This means that whichever configuration is chosen from S0 thru S15, there are never more than four rates active.

The spec praises S1 as the most desired configuration: "because it leads in all call cases to TFO/TrFO compatible connections with optimal voice quality." (Since HR AMR supports up to 7.95k, it seems that S14 would be more optimal voice quality, but it is not marked as supported by HR AMR.)

For FR_AMR below, the default of 0x57ff means: 0x57ff = 0101 0111 1111 1111 ^14 ^10 ^0 allow config 0 thru 10, and configs 12 and 14.

For HR_AMR, drop all those where there is no "Y" in the HR row: 0x073f = 0000 0111 0011 1111 ^15 ^11 ^6 ^0

Enumerator
GSM0808_SC_CFG_DEFAULT_FR_AMR |
GSM0808_SC_CFG_DEFAULT_HR_AMR |
GSM0808_SC_CFG_DEFAULT_OHR_AMR |
GSM0808_SC_CFG_DEFAULT_FR_AMR_WB |
GSM0808_SC_CFG_DEFAULT_OFR_AMR_WB |
GSM0808_SC_CFG_DEFAULT_OHR_AMR_WB |

## ◆ gsm0808_speech_codec_rate

enum gsm0808_speech_codec_rate

Single speech codec configurations broken down by rate.

See also: 3GPP TS 28.062, Table 7.11.3.1.3-2: Preferred Configurations for the Adaptive Multi-Rate Codec Types.

Set bit Sn (S0 = 0x01), where Sn is identified by a descriptive name.

Enumerator
GSM0808_SC_CFG_AMR_4_75 |
GSM0808_SC_CFG_AMR_4_75_5_90_7_40_12_20 |
GSM0808_SC_CFG_AMR_5_90 |
GSM0808_SC_CFG_AMR_6_70 |
GSM0808_SC_CFG_AMR_7_40 |
GSM0808_SC_CFG_AMR_7_95 |
GSM0808_SC_CFG_AMR_10_2 |
GSM0808_SC_CFG_AMR_12_2 |

## ◆ gsm0808_speech_codec_rate_defaults

enum gsm0808_speech_codec_rate_defaults

Default speech codec configurations broken down by rate.

See also: 3GPP TS 28.062, Table 7.11.3.1.3-2: Preferred Configurations for the Adaptive Multi-Rate Codec Types.

Set all Sn bits that have this rate listed as active.

Enumerator
GSM0808_SC_CFG_DEFAULT_AMR_4_75 |
GSM0808_SC_CFG_DEFAULT_AMR_5_15 |
GSM0808_SC_CFG_DEFAULT_AMR_5_90 |
GSM0808_SC_CFG_DEFAULT_AMR_6_70 |
GSM0808_SC_CFG_DEFAULT_AMR_7_40 |
GSM0808_SC_CFG_DEFAULT_AMR_7_95 |
GSM0808_SC_CFG_DEFAULT_AMR_10_2 |
GSM0808_SC_CFG_DEFAULT_AMR_12_2 |

## ◆ gsm0808_speech_codec_type

enum gsm0808_speech_codec_type

3GPP TS 48.008, 3.2.2.103 Speech Codec Type

Enumerator
GSM0808_SCT_FR1 | GSM FR.
GSM0808_SCT_FR2 | GSM EFR.
GSM0808_SCT_FR3 | FR AMR.
GSM0808_SCT_FR4 | OFR AMR-WB.
GSM0808_SCT_FR5 | FR AMR-WB.
GSM0808_SCT_HR1 | GSM_HR.
GSM0808_SCT_HR3 | HR_AMR.
GSM0808_SCT_HR4 | OHR AMR-WB.
GSM0808_SCT_HR6 | OHR AMR.
GSM0808_SCT_CSD | CSData (see also TS 26.103)

## Function Documentation

## ◆ gsm0406_dlci_sapi_name()

static const char * gsm0406_dlci_sapi_name | ( | enum gsm0406_dlci_sapi | val | ) |
| inline static

References get_value_string(), and gsm0406_dlci_sapi_names.

## ◆ gsm0808_amr_mode_name()

static const char * gsm0808_amr_mode_name | ( | enum gsm0808_amr_mode | val | ) |
| inline static

References get_value_string(), and gsm0808_amr_mode_names.

## ◆ gsm0808_permitted_speech_name()

static const char * gsm0808_permitted_speech_name | ( | enum gsm0808_permitted_speech | val | ) |
| inline static

References get_value_string(), and gsm0808_permitted_speech_names.

## ◆ gsm0808_speech_codec_type_name()

static const char * gsm0808_speech_codec_type_name | ( | enum gsm0808_speech_codec_type | val | ) |
| inline static

References get_value_string(), and gsm0808_speech_codec_type_names.

## Variable Documentation

## ◆

union { ... }

## ◆ __attribute__

enum gsm0406_dlci_sapi __attribute__

## ◆ error_pointer_octet

uint8_t error_pointer_octet

## ◆ length

uint8_t length

Referenced by abis_nm_get_sw_desc(), append_utran_fdd(), append_utran_fdd_length(), f0_helper(), gsm0480_parse_facility_ie(), gsm48_generate_mid(), gsm_7bit_decode_n_ussd(), gsm_7bit_decode_ussd(), parse_process_uss_data(), parse_process_uss_req(), parse_ss_for_bs_req(), parse_ss_invoke(), parse_ss_return_result(), rslms_rx_rll_data_req(), rslms_rx_rll_est_req(), rslms_rx_rll_res_req(), and rslms_rx_rll_udata_req().

## ◆ link_id

uint8_t link_id

Referenced by gsm0480_wrap_invoke(), gsm0808_create_dtap(), gsm0808_create_sapi_reject(), gsm0808_create_sapi_reject_cause(), gsm0808_prepend_dtap_header(), l2_ph_data_ind(), rsl_rll_push_hdr(), rsl_rll_push_l3(), rsl_rll_simple(), rslms_rx_rll_est_req(), rslms_rx_rll_res_req(), rslms_rx_rll_udata_req(), set_lapdm_context(), tx_ph_data_enqueue(), and tx_ph_data_enqueue_ui().

## ◆ msg

uint8_t msg[0]

Referenced by __attribute__(), abis_nm_put_sw_desc(), abis_nm_put_sw_file(), cbsp_enc_error_ind(), cbsp_enc_failure(), cbsp_enc_keep_alive(), cbsp_enc_kill(), cbsp_enc_kill_compl(), cbsp_enc_kill_fail(), cbsp_enc_load_query(), cbsp_enc_load_query_compl(), cbsp_enc_load_query_fail(), cbsp_enc_msg_status_query(), cbsp_enc_msg_status_query_compl(), cbsp_enc_msg_status_query_fail(), cbsp_enc_reset(), cbsp_enc_reset_compl(), cbsp_enc_reset_fail(), cbsp_enc_restart(), cbsp_enc_write_repl(), cbsp_enc_write_repl_compl(), cbsp_enc_write_repl_fail(), create_simple_msg(), enc_speech_codec(), encode_auth_info(), encode_pdp_info(), gsm0480_create_notifySS(), gsm0480_create_release_complete(), gsm0480_create_unstructuredSS_Notify(), gsm0480_create_ussd_notify(), gsm0480_create_ussd_release_complete(), gsm0480_create_ussd_resp(), gsm0480_gen_reject(), gsm0480_gen_return_error(), gsm0480_gen_ussd_resp_7bit(), gsm0480_wrap_facility(), gsm0480_wrap_invoke(), gsm0808_create_ass2(), gsm0808_create_ass_compl2(), gsm0808_create_ass_fail(), gsm0808_create_cipher2(), gsm0808_create_cipher_complete(), gsm0808_create_cipher_reject(), gsm0808_create_cipher_reject_ext(), gsm0808_create_classmark_request(), gsm0808_create_classmark_update(), gsm0808_create_clear_command(), gsm0808_create_clear_command2(), gsm0808_create_clear_complete(), gsm0808_create_clear_rqst(), gsm0808_create_common_id(), gsm0808_create_dtap(), gsm0808_create_handover_command(), gsm0808_create_handover_complete(), gsm0808_create_handover_detect(), gsm0808_create_handover_failure(), gsm0808_create_handover_performed(), gsm0808_create_handover_request(), gsm0808_create_handover_request_ack2(), gsm0808_create_handover_required(), gsm0808_create_handover_required_reject(), gsm0808_create_handover_succeeded(), gsm0808_create_layer3_2(), gsm0808_create_lcls_conn_ctrl(), gsm0808_create_lcls_conn_ctrl_ack(), gsm0808_create_lcls_notification(), gsm0808_create_notification_data(), gsm0808_create_paging2(), gsm0808_create_perform_location_abort(), gsm0808_create_perform_location_request(), gsm0808_create_perform_location_response(), gsm0808_create_reset(), gsm0808_create_reset_ack(), gsm0808_create_sapi_reject_cause(), gsm0808_create_uplink_app_data(), gsm0808_create_uplink_reject_cmd(), gsm0808_create_uplink_release_cmd(), gsm0808_create_uplink_release_ind(), gsm0808_create_uplink_request(), gsm0808_create_uplink_request_ack(), gsm0808_create_uplink_request_cnf(), gsm0808_create_uplink_seized_cmd(), gsm0808_create_vgcs_additional_info(), gsm0808_create_vgcs_queuing_ind(), gsm0808_create_vgcs_sms(), gsm0808_create_vgcs_vbs_area_cell_info(), gsm0808_create_vgcs_vbs_assign_fail(), gsm0808_create_vgcs_vbs_assign_req(), gsm0808_create_vgcs_vbs_assign_res(), gsm0808_create_vgcs_vbs_assign_stat(), gsm0808_create_vgcs_vbs_setup(), gsm0808_create_vgcs_vbs_setup_ack(), gsm0808_create_vgcs_vbs_setup_refuse(), gsm0808_enc_assign_req(), gsm0808_enc_cell_id(), gsm0808_enc_cell_id_list(), gsm0808_enc_cell_id_list2(), gsm0808_enc_cell_id_list_segment(), gsm0808_enc_channel_type(), gsm0808_enc_data_identity(), gsm0808_enc_encrypt_info(), gsm0808_enc_gcr(), gsm0808_enc_group_callref(), gsm0808_enc_kc128(), gsm0808_enc_lcls(), gsm0808_enc_lcs_cause(), gsm0808_enc_msisdn(), gsm0808_enc_priority(), gsm0808_enc_speech_codec(), gsm0808_enc_speech_codec2(), gsm0808_enc_speech_codec_list(), gsm0808_enc_speech_codec_list2(), gsm0808_enc_talker_identity(), gsm0808_enc_vgcs_feature_flags(), gsm0808_msgb_put_cell_id_u(), gsm0808_prepend_dtap_header(), gsm29118_create_dl_ud(), gsm29118_create_lu_ack(), gsm29118_create_lu_rej(), gsm29118_create_mm_info_req(), gsm29118_create_paging_req(), gsm29118_create_release_req(), gsm29118_create_reset_ack(), gsm29118_create_reset_ind(), gsm29118_create_status(), gsm411_mmsms_cp_data(), gsm411_mmsms_cp_error(), gsm411_mnsms_abort_req(), gsm411_mnsms_data_ind_tx(), gsm411_mnsms_data_req(), gsm411_mnsms_error_ind_rx(), gsm411_mnsms_error_ind_tx(), gsm411_mnsms_est_ind(), gsm411_mnsms_est_req(), gsm411_mnsms_rel_req(), gsm411_push_cp_header(), gsm411_push_rp_header(), gsm411_rl_data_req(), gsm411_rl_report_req(), gsm411_rp_sendmsg(), gsm411_send_abort(), gsm411_send_release(), gsm411_send_report(), gsm411_send_rp_error(), gsm411_smc_recv(), gsm411_smc_send(), gsm411_smr_recv(), gsm411_smr_send(), gsm48_encode_bearer_cap(), gsm48_encode_called(), gsm48_encode_callerid(), gsm48_encode_calling(), gsm48_encode_cause(), gsm48_encode_cccap(), gsm48_encode_connected(), gsm48_encode_facility(), gsm48_encode_keypad(), gsm48_encode_more(), gsm48_encode_notify(), gsm48_encode_progress(), gsm48_encode_redirecting(), gsm48_encode_signal(), gsm48_encode_ssversion(), gsm48_encode_useruser(), gsm48_push_l3hdr(), ipa_ccm_make_id_resp(), ipa_ccm_rcvmsg_base(), ipa_ccm_rcvmsg_bts_base(), ipa_prepend_header(), ipa_prepend_header_ext(), ipa_send(), irp_error_event_alloc_c(), itp_copy_c(), l2_ph_chan_conf(), l2_ph_data_conf(), l2_ph_data_ind(), l2_ph_rach_ind(), lapdm_pad_msgb(), lapdm_phsap_dequeue_prim_fn(), lapdm_rslms_recvmsg(), lapdm_send_ph_data_req(), msgb_l16tv_put(), msgb_lv_put(), msgb_put_cbsp_cell_list(), msgb_put_cbsp_fail_list(), msgb_put_cbsp_loading_list(), msgb_put_cbsp_num_compl_list(), msgb_sgsap_imsi_put(), msgb_sgsap_lai_put(), msgb_sgsap_name_put(), msgb_t16lv_put(), msgb_tl16v_put(), msgb_tl_put(), msgb_tlv16_put(), msgb_tlv1_push(), msgb_tlv_push(), msgb_tlv_put(), msgb_tv16_push(), msgb_tv16_put(), msgb_tv32_push(), msgb_tv32_put(), msgb_tv_fixed_put(), msgb_tv_push(), msgb_tv_put(), msgb_tvl_put(), msgb_tvlv_push(), msgb_tvlv_put(), msgb_tvlv_put_16be(), msgb_tvlv_put_32be(), msgb_v_put(), msgb_vtvl_gan_push(), msgb_vtvlv_gan_push(), msgb_vtvlv_gan_put(), osmo_bssap_le_dec(), osmo_bssap_le_enc(), osmo_bsslap_enc(), osmo_bsslap_ie_enc_cause(), osmo_bsslap_ie_enc_cell_id(), osmo_bsslap_ie_enc_chan_desc(), osmo_bsslap_ie_enc_ta(), osmo_bssmap_le_enc(), osmo_bssmap_le_enc_conn_oriented_info(), osmo_bssmap_le_enc_perform_loc_abort(), osmo_bssmap_le_enc_perform_loc_req(), osmo_bssmap_le_enc_perform_loc_resp(), osmo_bssmap_le_enc_reset(), osmo_bssmap_le_ie_enc_apdu(), osmo_bssmap_le_ie_enc_lcs_client_type(), osmo_bssmap_le_ie_enc_lcs_priority(), osmo_bssmap_le_ie_enc_lcs_qos(), osmo_bssmap_le_ie_enc_location_type(), osmo_cbsp_encode(), osmo_enc_gcr(), osmo_gad_raw_write(), osmo_gsup_encode(), osmo_gsup_encode_an_apdu(), osmo_gsup_sms_encode_sm_rp_da(), osmo_gsup_sms_encode_sm_rp_oa(), osmo_iuup_rnl_prim_alloc(), osmo_iuup_tnl_prim_alloc(), osmo_lcs_cause_enc(), osmo_mobile_identity_decode_from_l3(), osmo_mobile_identity_encode_msgb(), osmo_oap_client_encoded(), osmo_oap_encode(), osmo_routing_area_id_encode_msgb(), put_old_bss_to_new_bss_information(), rnl_to_tnl_data(), rsl_rll_error(), rsl_rll_push_hdr(), rsl_rll_push_l3(), rsl_rll_simple(), rslms_rx_chan_rqd(), rslms_rx_com_chan(), rslms_rx_rll(), rslms_rx_rll_data_req(), rslms_rx_rll_est_req(), rslms_rx_rll_rel_req(), rslms_rx_rll_res_req(), rslms_rx_rll_susp_req(), rslms_rx_rll_udata_req(), rslms_sendmsg(), send_rll_simple(), send_rslms_rll_l3(), send_rslms_rll_l3_ui(), tlv_encode(), tlv_encode_one(), tlv_encode_ordered(), tnl_to_rnl_data(), tnp_ctrl_init_alloc(), tx_dequeue_acch_msgb(), tx_dequeue_dcch_msgb(), tx_dequeue_msgb(), tx_ph_data_enqueue(), tx_ph_data_enqueue_ui(), and update_pending_frames().

## ◆ type

uint8_t type