le_mdc_interface.h
Go to the documentation of this file.
41 * le_mdc_GetProfile() must be called with @c LE_MDC_DEFAULT_PROFILE to retrieve the default index43 * le_mdc_GetProfile() must be called with @c LE_MDC_SIMTOOLKIT_BIP_DEFAULT_PROFILE to retrieve the56 * identification number (ICCID). If no match is found in the database using the ICCID, the search81 * le_mdc_MapProfileOnNetworkInterface() may be used to map a data session with a network interface.95 * The current state of a data session can be queried using le_mdc_GetSessionState(). An application103 * the application takes responsibility to trigger the data session for that MT PDP request using116 * @warning The MT-PDP context activation feature is not supported on all platforms. Please refer to156 * The amount of received and transmitted data can be retrieved through le_mdc_GetBytesCounters().163 * @note The data statistics collection activation and the data counters are persistent even after204 //--------------------------------------------------------------------------------------------------208 //--------------------------------------------------------------------------------------------------211 //--------------------------------------------------------------------------------------------------214 * Connect the current client thread to the service providing this API. Block until the service is217 * For each thread that wants to use this API, either ConnectService or TryConnectService must be218 * called before any other functions in this API. Normally, ConnectService is automatically called223 //--------------------------------------------------------------------------------------------------229 //--------------------------------------------------------------------------------------------------232 * Try to connect the current client thread to the service providing this API. Return with an error235 * For each thread that wants to use this API, either ConnectService or TryConnectService must be236 * called before any other functions in this API. Normally, ConnectService is automatically called245 * - LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).248 //--------------------------------------------------------------------------------------------------254 //--------------------------------------------------------------------------------------------------258 * When a server connection is lost, call this handler then exit with LE_FATAL. If a program wants261 //--------------------------------------------------------------------------------------------------268 //--------------------------------------------------------------------------------------------------274 * longer a connection to the service, and the functions in this API can't be used. For details, see279 //--------------------------------------------------------------------------------------------------286 //--------------------------------------------------------------------------------------------------290 //--------------------------------------------------------------------------------------------------293 //--------------------------------------------------------------------------------------------------297 //--------------------------------------------------------------------------------------------------300 //--------------------------------------------------------------------------------------------------304 //--------------------------------------------------------------------------------------------------307 //--------------------------------------------------------------------------------------------------311 //--------------------------------------------------------------------------------------------------314 //--------------------------------------------------------------------------------------------------318 //--------------------------------------------------------------------------------------------------321 //--------------------------------------------------------------------------------------------------325 //--------------------------------------------------------------------------------------------------328 //--------------------------------------------------------------------------------------------------332 //--------------------------------------------------------------------------------------------------335 //--------------------------------------------------------------------------------------------------339 //--------------------------------------------------------------------------------------------------342 //--------------------------------------------------------------------------------------------------347 //--------------------------------------------------------------------------------------------------350 //--------------------------------------------------------------------------------------------------354 //--------------------------------------------------------------------------------------------------357 //--------------------------------------------------------------------------------------------------361 //--------------------------------------------------------------------------------------------------364 //--------------------------------------------------------------------------------------------------368 //--------------------------------------------------------------------------------------------------371 //--------------------------------------------------------------------------------------------------375 * This event provides information on data session connection state changes for the given profileRef.378 //--------------------------------------------------------------------------------------------------389 //--------------------------------------------------------------------------------------------------393 //--------------------------------------------------------------------------------------------------400 //--------------------------------------------------------------------------------------------------404 * This event provides information on data session connection state changes for the given profileRef.407 //--------------------------------------------------------------------------------------------------416 //--------------------------------------------------------------------------------------------------420 //--------------------------------------------------------------------------------------------------427 //--------------------------------------------------------------------------------------------------441 //--------------------------------------------------------------------------------------------------448 //--------------------------------------------------------------------------------------------------458 //--------------------------------------------------------------------------------------------------465 //--------------------------------------------------------------------------------------------------479 //--------------------------------------------------------------------------------------------------486 //--------------------------------------------------------------------------------------------------493 //--------------------------------------------------------------------------------------------------504 //--------------------------------------------------------------------------------------------------516 * @warning The MT-PDP context activation feature is not supported on all platforms. Please refer to519 //--------------------------------------------------------------------------------------------------526 //--------------------------------------------------------------------------------------------------533 //--------------------------------------------------------------------------------------------------544 //--------------------------------------------------------------------------------------------------557 * @warning The MT-PDP context activation feature is not supported on all platforms. Please refer to560 //--------------------------------------------------------------------------------------------------567 //--------------------------------------------------------------------------------------------------579 //--------------------------------------------------------------------------------------------------588 //--------------------------------------------------------------------------------------------------600 //--------------------------------------------------------------------------------------------------611 //--------------------------------------------------------------------------------------------------624 //--------------------------------------------------------------------------------------------------635 //--------------------------------------------------------------------------------------------------637 * Get the gateway IPv4 address for the given profile, if the data session is connected and has an648 //--------------------------------------------------------------------------------------------------659 //--------------------------------------------------------------------------------------------------674 //--------------------------------------------------------------------------------------------------689 //--------------------------------------------------------------------------------------------------702 //--------------------------------------------------------------------------------------------------713 //--------------------------------------------------------------------------------------------------715 * Get the gateway IPv6 address for the given profile, if the data session is connected and has an726 //--------------------------------------------------------------------------------------------------737 //--------------------------------------------------------------------------------------------------752 //--------------------------------------------------------------------------------------------------767 //--------------------------------------------------------------------------------------------------769 * Allow the caller to know if the given profile is actually supporting IPv4, if the data session777 //--------------------------------------------------------------------------------------------------784 //--------------------------------------------------------------------------------------------------786 * Allow the caller to know if the given profile is actually supporting IPv6, if the data session794 //--------------------------------------------------------------------------------------------------801 //--------------------------------------------------------------------------------------------------812 //--------------------------------------------------------------------------------------------------823 //--------------------------------------------------------------------------------------------------834 //--------------------------------------------------------------------------------------------------843 //--------------------------------------------------------------------------------------------------851 //--------------------------------------------------------------------------------------------------857 //--------------------------------------------------------------------------------------------------865 //--------------------------------------------------------------------------------------------------871 //--------------------------------------------------------------------------------------------------879 //--------------------------------------------------------------------------------------------------885 //--------------------------------------------------------------------------------------------------897 //--------------------------------------------------------------------------------------------------906 //--------------------------------------------------------------------------------------------------916 //--------------------------------------------------------------------------------------------------923 //--------------------------------------------------------------------------------------------------943 //--------------------------------------------------------------------------------------------------952 //--------------------------------------------------------------------------------------------------966 //--------------------------------------------------------------------------------------------------973 //--------------------------------------------------------------------------------------------------986 //--------------------------------------------------------------------------------------------------997 //--------------------------------------------------------------------------------------------------1016 //--------------------------------------------------------------------------------------------------1029 //--------------------------------------------------------------------------------------------------1042 //--------------------------------------------------------------------------------------------------1059 //--------------------------------------------------------------------------------------------------1066 //--------------------------------------------------------------------------------------------------1072 //--------------------------------------------------------------------------------------------------1081 //--------------------------------------------------------------------------------------------------1090 //--------------------------------------------------------------------------------------------------1099 * @deprecated This function is deprecated, le_mdc_GetDisconnectionReasonExt should be used for the1102 //--------------------------------------------------------------------------------------------------1109 //--------------------------------------------------------------------------------------------------1121 * @deprecated This function is deprecated, le_mdc_GetPlatformSpecificDisconnectionCodeExt should1124 //--------------------------------------------------------------------------------------------------1131 //--------------------------------------------------------------------------------------------------1141 * @deprecated This function is deprecated, le_mdc_GetPlatformSpecificFailureConnectionReasonExt1144 //--------------------------------------------------------------------------------------------------1155 //--------------------------------------------------------------------------------------------------1166 * @note For IPv4v6 mode, pdpType specifies which session's disconnect reason to get(IPv4 or IPv61170 //--------------------------------------------------------------------------------------------------1179 //--------------------------------------------------------------------------------------------------1190 * @note For IPv4v6 mode, pdpType specifies which session's disconnect reason to get(IPv4 or IPv61194 //--------------------------------------------------------------------------------------------------1203 //--------------------------------------------------------------------------------------------------1212 * @note For IPv4v6 mode, pdpType specifies which session's disconnect reason to get(IPv4 or IPv61216 //--------------------------------------------------------------------------------------------------1229 //--------------------------------------------------------------------------------------------------1239 //--------------------------------------------------------------------------------------------------1248 //--------------------------------------------------------------------------------------------------1256 //--------------------------------------------------------------------------------------------------le_result_t le_mdc_GetSessionState(le_mdc_ProfileRef_t profileRef, le_mdc_ConState_t *connectionStatePtr)le_mdc_SessionStateHandlerRef_t le_mdc_AddSessionStateHandler(le_mdc_ProfileRef_t profileRef, le_mdc_SessionStateHandlerFunc_t handlerPtr, void *contextPtr)le_mdc_Pdp_t le_mdc_GetPDP(le_mdc_ProfileRef_t profileRef)void le_mdc_StartSessionAsync(le_mdc_ProfileRef_t profileRef, le_mdc_SessionHandlerFunc_t handlerPtr, void *contextPtr)le_result_t le_mdc_GetDataBearerTechnology(le_mdc_ProfileRef_t profileRef, le_mdc_DataBearerTechnology_t *downlinkDataBearerTechPtrPtr, le_mdc_DataBearerTechnology_t *uplinkDataBearerTechPtrPtr)le_result_t le_mdc_SetAPN(le_mdc_ProfileRef_t profileRef, const char *LE_NONNULL apnStr)bool le_mdc_IsIPv4(le_mdc_ProfileRef_t profileRef)le_result_t le_mdc_GetIPv4GatewayAddress(le_mdc_ProfileRef_t profileRef, char *gatewayAddr, size_t gatewayAddrSize)le_result_t le_mdc_StopSession(le_mdc_ProfileRef_t profileRef)le_result_t le_mdc_GetAPN(le_mdc_ProfileRef_t profileRef, char *apnStr, size_t apnStrSize)le_result_t le_mdc_GetIPv4DNSAddresses(le_mdc_ProfileRef_t profileRef, char *dns1AddrStr, size_t dns1AddrStrSize, char *dns2AddrStr, size_t dns2AddrStrSize)le_result_t le_mdc_GetIPv6Address(le_mdc_ProfileRef_t profileRef, char *ipAddr, size_t ipAddrSize)int32_t le_mdc_GetPlatformSpecificDisconnectionCodeExt(le_mdc_ProfileRef_t profileRef, le_mdc_Pdp_t pdpType)void le_mdc_ConnectService(void)void le_mdc_StopSessionAsync(le_mdc_ProfileRef_t profileRef, le_mdc_SessionHandlerFunc_t handlerPtr, void *contextPtr)le_result_t le_mdc_GetInterfaceName(le_mdc_ProfileRef_t profileRef, char *interfaceName, size_t interfaceNameSize)le_result_t le_mdc_GetProfileList(le_mdc_ProfileInfo_t *profileListPtr, size_t *profileListSizePtr)le_result_t le_mdc_SetPDP(le_mdc_ProfileRef_t profileRef, le_mdc_Pdp_t pdp)bool le_mdc_IsIPv6(le_mdc_ProfileRef_t profileRef)le_result_t le_mdc_GetBytesCounters(uint64_t *rxBytesPtr, uint64_t *txBytesPtr)le_mdc_DisconnectionReason_t le_mdc_GetDisconnectionReason(le_mdc_ProfileRef_t profileRef)void(* le_mdc_DisconnectHandler_t)(void *)Definition: le_mdc_interface.h:209le_result_t le_mdc_GetAuthentication(le_mdc_ProfileRef_t profileRef, le_mdc_Auth_t *typePtr, char *userName, size_t userNameSize, char *password, size_t passwordSize)void le_mdc_GetPlatformSpecificFailureConnectionReason(le_mdc_ProfileRef_t profileRef, int32_t *failureTypePtr, int32_t *failureCodePtr)void le_mdc_RemoveSessionStateHandler(le_mdc_SessionStateHandlerRef_t handlerRef)void le_mdc_RemoveMtPdpSessionStateHandler(le_mdc_MtPdpSessionStateHandlerRef_t handlerRef)le_result_t le_mdc_TryConnectService(void)void le_mdc_GetPlatformSpecificFailureConnectionReasonExt(le_mdc_ProfileRef_t profileRef, le_mdc_Pdp_t pdpType, int32_t *failureTypePtr, int32_t *failureCodePtr)le_mdc_ProfileRef_t le_mdc_GetProfile(uint32_t index)int32_t le_mdc_GetPlatformSpecificDisconnectionCode(le_mdc_ProfileRef_t profileRef)le_result_t le_mdc_StartSession(le_mdc_ProfileRef_t profileRef)LE_FULL_API void le_mdc_SetServerDisconnectHandler(le_mdc_DisconnectHandler_t disconnectHandler, void *contextPtr)le_result_t le_mdc_ResetBytesCounter(void)void le_mdc_DisconnectService(void)le_result_t le_mdc_GetIPv4Address(le_mdc_ProfileRef_t profileRef, char *ipAddr, size_t ipAddrSize)le_result_t le_mdc_StartBytesCounter(void)le_mdc_MtPdpSessionStateHandlerRef_t le_mdc_AddMtPdpSessionStateHandler(le_mdc_SessionStateHandlerFunc_t handlerPtr, void *contextPtr)le_result_t le_mdc_GetIPv6GatewayAddress(le_mdc_ProfileRef_t profileRef, char *gatewayAddr, size_t gatewayAddrSize)le_result_t le_mdc_SetAuthentication(le_mdc_ProfileRef_t profileRef, le_mdc_Auth_t type, const char *LE_NONNULL userName, const char *LE_NONNULL password)le_result_t le_mdc_GetProfileFromApn(const char *LE_NONNULL apnStr, le_mdc_ProfileRef_t *profileRefPtr)uint32_t le_mdc_GetProfileIndex(le_mdc_ProfileRef_t profileRef)uint32_t le_mdc_NumProfiles(void)le_result_t le_mdc_SetDefaultAPN(le_mdc_ProfileRef_t profileRef)le_result_t le_mdc_StopBytesCounter(void)le_result_t le_mdc_RejectMtPdpSession(le_mdc_ProfileRef_t profileRef)le_result_t le_mdc_MapProfileOnNetworkInterface(le_mdc_ProfileRef_t profileRef, const char *LE_NONNULL interfaceName)le_result_t le_mdc_GetIPv6DNSAddresses(le_mdc_ProfileRef_t profileRef, char *dns1AddrStr, size_t dns1AddrStrSize, char *dns2AddrStr, size_t dns2AddrStrSize)le_mdc_DisconnectionReason_t le_mdc_GetDisconnectionReasonExt(le_mdc_ProfileRef_t profileRef, le_mdc_Pdp_t pdpType)