aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2021-05-11 23:12:57 +0200
committerAleksander Morgado <aleksander@aleksander.es>2021-05-22 22:58:37 +0000
commit8da8fd0248fa619709aa2a17b1717e7981b641d0 (patch)
tree5644b03618a5de870f7c54a13e6830c5b1d4b59d /src
parentd1bd0a297103b426e3ec3afe310f1471c6c6dbae (diff)
api: update MMMobileEquipmentError enum values
Update the list of mobile equipment error codes according to v17.1.0 of 3GPP TS 27.007 (March 2021). A lot of the enum values that were prefixed with the 'GPRS_' keyword have now been flagged as deprecated, and a new enum name given to the corresponding value. The deprecated symbol names are kept in the compat support to avoid breaking API/ABI.
Diffstat (limited to 'src')
-rw-r--r--src/mm-error-helpers.c246
-rw-r--r--src/mm-modem-helpers-mbim.c124
-rw-r--r--src/tests/test-error-helpers.c4
3 files changed, 251 insertions, 123 deletions
diff --git a/src/mm-error-helpers.c b/src/mm-error-helpers.c
index 47d27028..574c7978 100644
--- a/src/mm-error-helpers.c
+++ b/src/mm-error-helpers.c
@@ -76,89 +76,169 @@ mm_connection_error_for_code (MMConnectionError code,
/* Human friendly messages for each error type */
static const gchar *me_error_messages[] = {
- [MM_MOBILE_EQUIPMENT_ERROR_PHONE_FAILURE] = "Phone failure",
- [MM_MOBILE_EQUIPMENT_ERROR_NO_CONNECTION] = "No connection to phone",
- [MM_MOBILE_EQUIPMENT_ERROR_LINK_RESERVED] = "Phone-adaptor link reserved",
- [MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED] = "Operation not allowed",
- [MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED] = "Operation not supported",
- [MM_MOBILE_EQUIPMENT_ERROR_PH_SIM_PIN] = "PH-SIM PIN required",
- [MM_MOBILE_EQUIPMENT_ERROR_PH_FSIM_PIN] = "PH-FSIM PIN required",
- [MM_MOBILE_EQUIPMENT_ERROR_PH_FSIM_PUK] = "PH-FSIM PUK required",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_NOT_INSERTED] = "SIM not inserted",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_PIN] = "SIM PIN required",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_PUK] = "SIM PUK required",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_FAILURE] = "SIM failure",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_BUSY] = "SIM busy",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_WRONG] = "SIM wrong",
- [MM_MOBILE_EQUIPMENT_ERROR_INCORRECT_PASSWORD] = "Incorrect password",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_PIN2] = "SIM PIN2 required",
- [MM_MOBILE_EQUIPMENT_ERROR_SIM_PUK2] = "SIM PUK2 required",
- [MM_MOBILE_EQUIPMENT_ERROR_MEMORY_FULL] = "Memory full",
- [MM_MOBILE_EQUIPMENT_ERROR_INVALID_INDEX] = "Invalid index",
- [MM_MOBILE_EQUIPMENT_ERROR_NOT_FOUND] = "Not found",
- [MM_MOBILE_EQUIPMENT_ERROR_MEMORY_FAILURE] = "Memory failure",
- [MM_MOBILE_EQUIPMENT_ERROR_TEXT_TOO_LONG] = "Text string too long",
- [MM_MOBILE_EQUIPMENT_ERROR_INVALID_CHARS] = "Invalid characters in text string",
- [MM_MOBILE_EQUIPMENT_ERROR_DIAL_STRING_TOO_LONG] = "Dial string too long",
- [MM_MOBILE_EQUIPMENT_ERROR_DIAL_STRING_INVALID] = "Invalid characters in dial string",
- [MM_MOBILE_EQUIPMENT_ERROR_NO_NETWORK] = "No network service",
- [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_TIMEOUT] = "Network timeout",
- [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_NOT_ALLOWED] = "Network not allowed - emergency calls only",
- [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_PIN] = "Network personalization PIN required",
- [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_PUK] = "Network personalization PUK required",
- [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_SUBSET_PIN] = "Network subset personalization PIN required",
- [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_SUBSET_PUK] = "Network subset personalization PUK required",
- [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_PIN] = "Service provider personalization PIN required",
- [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_PUK] = "Service provider personalization PUK required",
- [MM_MOBILE_EQUIPMENT_ERROR_CORP_PIN] = "Corporate personalization PIN required",
- [MM_MOBILE_EQUIPMENT_ERROR_CORP_PUK] = "Corporate personalization PUK required",
- [MM_MOBILE_EQUIPMENT_ERROR_HIDDEN_KEY_REQUIRED] = "Hidden key required",
- [MM_MOBILE_EQUIPMENT_ERROR_EAP_METHOD_NOT_SUPPORTED] = "EAP method not supported",
- [MM_MOBILE_EQUIPMENT_ERROR_INCORRECT_PARAMETERS] = "Incorrect parameters",
- [MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN] = "Unknown error",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_IMSI_UNKNOWN_IN_HLR] = "IMSI unknown in HLR",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_ILLEGAL_MS] = "Illegal MS",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_IMSI_UNKNOWN_IN_VLR] = "IMSI unknown in VLR",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_ILLEGAL_ME] = "Illegal ME",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_NOT_ALLOWED] = "GPRS services not allowed",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_AND_NON_GPRS_SERVICES_NOT_ALLOWED] = "GPRS and non-GPRS services not allowed",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_PLMN_NOT_ALLOWED] = "PLMN not allowed",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_LOCATION_NOT_ALLOWED] = "Location area not allowed",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_ROAMING_NOT_ALLOWED] = "Roaming not allowed in this location area",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_NO_CELLS_IN_LOCATION_AREA] = "No cells in location area",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_NETWORK_FAILURE] = "Network failure",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_CONGESTION] = "Congestion",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_NOT_AUTHORIZED_FOR_CSG] = "Not authorized for CSG",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_INSUFFICIENT_RESOURCES] = "Insufficient resources",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_MISSING_OR_UNKNOWN_APN] = "Missing or unknown APN",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNKNOWN_PDP_ADDRESS_OR_TYPE] = "Unknown PDP address or type",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_USER_AUTHENTICATION_FAILED] = "User authentication failed",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_ACTIVATION_REJECTED_BY_GGSN_OR_GW] = "Activation rejected by GGSN or GW",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_ACTIVATION_REJECTED_UNSPECIFIED] = "Activation rejected (unspecified)",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_OPTION_NOT_SUPPORTED] = "Service option not supported",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_OPTION_NOT_SUBSCRIBED] = "Requested service option not subscribed",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_OPTION_OUT_OF_ORDER] = "Service option temporarily out of order",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_FEATURE_NOT_SUPPORTED] = "Feature not supported",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SEMANTIC_ERROR_IN_TFT_OPERATION] = "Semantic error in TFT operation",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SYNTACTICAL_ERROR_IN_TFT_OPERATION] = "Syntactical error in TFT operation",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNKNOWN_PDP_CONTEXT] = "Unknown PDP context",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SEMANTIC_ERRORS_IN_PACKET_FILTER] = "Semantic error in packet filter",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SYNTACTICAL_ERROR_IN_PACKET_FILTER] = "Syntactical error in packet filter",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_PDP_CONTEXT_WITHOUT_TFT_ALREADY_ACTIVATED] = "PDP context without TFT already activated",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNKNOWN] = "Unspecified GPRS error",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_PDP_AUTH_FAILURE] = "PDP authentication failure",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_INVALID_MOBILE_CLASS] = "Invalid mobile class",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_LAST_PDN_DISCONNECTION_NOT_ALLOWED_LEGACY] = "Last PDN disconnection not allowed (legacy)",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_LAST_PDN_DISCONNECTION_NOT_ALLOWED] = "Last PDN disconnection not allowed",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_SEMANTICALLY_INCORRECT_MESSAGE] = "Semantically incorrect message",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_MANDATORY_IE_ERROR] = "Mandatory IE error",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_IE_NOT_IMPLEMENTED] = "IE not implemented",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_CONDITIONAL_IE_ERROR] = "Conditional IE error",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNSPECIFIED_PROTOCOL_ERROR] = "Unspecified protocol error",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_OPERATOR_DETERMINED_BARRING] = "Operator determined barring",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_MAXIMUM_NUMBER_OF_PDP_CONTEXTS_REACHED] = "Maximum number of PDP contexts reached",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_REQUESTED_APN_NOT_SUPPORTED] = "Requested APN not supported",
- [MM_MOBILE_EQUIPMENT_ERROR_GPRS_REQUEST_REJECTED_BCM_VIOLATION] = "Rejected BCM violation",
+ [MM_MOBILE_EQUIPMENT_ERROR_PHONE_FAILURE] = "Phone failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_NO_CONNECTION] = "No connection to phone",
+ [MM_MOBILE_EQUIPMENT_ERROR_LINK_RESERVED] = "Phone-adaptor link reserved",
+ [MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED] = "Operation not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_NOT_SUPPORTED] = "Operation not supported",
+ [MM_MOBILE_EQUIPMENT_ERROR_PH_SIM_PIN] = "PH-SIM PIN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_PH_FSIM_PIN] = "PH-FSIM PIN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_PH_FSIM_PUK] = "PH-FSIM PUK required",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_NOT_INSERTED] = "SIM not inserted",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_PIN] = "SIM PIN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_PUK] = "SIM PUK required",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_FAILURE] = "SIM failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_BUSY] = "SIM busy",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_WRONG] = "SIM wrong",
+ [MM_MOBILE_EQUIPMENT_ERROR_INCORRECT_PASSWORD] = "Incorrect password",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_PIN2] = "SIM PIN2 required",
+ [MM_MOBILE_EQUIPMENT_ERROR_SIM_PUK2] = "SIM PUK2 required",
+ [MM_MOBILE_EQUIPMENT_ERROR_MEMORY_FULL] = "Memory full",
+ [MM_MOBILE_EQUIPMENT_ERROR_INVALID_INDEX] = "Invalid index",
+ [MM_MOBILE_EQUIPMENT_ERROR_NOT_FOUND] = "Not found",
+ [MM_MOBILE_EQUIPMENT_ERROR_MEMORY_FAILURE] = "Memory failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_TEXT_TOO_LONG] = "Text string too long",
+ [MM_MOBILE_EQUIPMENT_ERROR_INVALID_CHARS] = "Invalid characters in text string",
+ [MM_MOBILE_EQUIPMENT_ERROR_DIAL_STRING_TOO_LONG] = "Dial string too long",
+ [MM_MOBILE_EQUIPMENT_ERROR_DIAL_STRING_INVALID] = "Invalid characters in dial string",
+ [MM_MOBILE_EQUIPMENT_ERROR_NO_NETWORK] = "No network service",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_TIMEOUT] = "Network timeout",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_NOT_ALLOWED] = "Network not allowed - emergency calls only",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_PIN] = "Network personalization PIN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_PUK] = "Network personalization PUK required",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_SUBSET_PIN] = "Network subset personalization PIN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_SUBSET_PUK] = "Network subset personalization PUK required",
+ [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_PIN] = "Service provider personalization PIN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_PUK] = "Service provider personalization PUK required",
+ [MM_MOBILE_EQUIPMENT_ERROR_CORP_PIN] = "Corporate personalization PIN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_CORP_PUK] = "Corporate personalization PUK required",
+ [MM_MOBILE_EQUIPMENT_ERROR_HIDDEN_KEY_REQUIRED] = "Hidden key required",
+ [MM_MOBILE_EQUIPMENT_ERROR_EAP_METHOD_NOT_SUPPORTED] = "EAP method not supported",
+ [MM_MOBILE_EQUIPMENT_ERROR_INCORRECT_PARAMETERS] = "Incorrect parameters",
+ [MM_MOBILE_EQUIPMENT_ERROR_COMMAND_DISABLED] = "Command disabled",
+ [MM_MOBILE_EQUIPMENT_ERROR_COMMAND_ABORTED] = "Command aborted",
+ [MM_MOBILE_EQUIPMENT_ERROR_NOT_ATTACHED_RESTRICTED] = "Not attached] restricted",
+ [MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED_EMERGENCY_ONLY] = "Not allowed] emergency only",
+ [MM_MOBILE_EQUIPMENT_ERROR_NOT_ALLOWED_RESTRICTED] = "Not allowed] restricted",
+ [MM_MOBILE_EQUIPMENT_ERROR_FIXED_DIAL_NUMBER_ONLY] = "Fixed dial number only",
+ [MM_MOBILE_EQUIPMENT_ERROR_TEMPORARILY_OUT_OF_SERVICE] = "Temporarily out of service",
+ [MM_MOBILE_EQUIPMENT_ERROR_LANGUAGE_OR_ALPHABET_NOT_SUPPORTED] = "Language or alphabet not supported",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNEXPECTED_DATA_VALUE] = "Unexpected data value",
+ [MM_MOBILE_EQUIPMENT_ERROR_SYSTEM_FAILURE] = "System failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_DATA_MISSING] = "Data missing",
+ [MM_MOBILE_EQUIPMENT_ERROR_CALL_BARRED] = "Call barred",
+ [MM_MOBILE_EQUIPMENT_ERROR_MESSAGE_WAITING_INDICATION_SUBSCRIPTION_FAILURE] = "Message waiting indication subscription failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN] = "Unknown error",
+ [MM_MOBILE_EQUIPMENT_ERROR_IMSI_UNKNOWN_IN_HSS] = "IMSI unknown in HLR/HSS",
+ [MM_MOBILE_EQUIPMENT_ERROR_ILLEGAL_UE] = "Illegal MS/UE",
+ [MM_MOBILE_EQUIPMENT_ERROR_IMSI_UNKNOWN_IN_VLR] = "IMSI unknown in VLR",
+ [MM_MOBILE_EQUIPMENT_ERROR_IMEI_NOT_ACCEPTED] = "IMEI not accepted",
+ [MM_MOBILE_EQUIPMENT_ERROR_ILLEGAL_ME] = "Illegal ME",
+ [MM_MOBILE_EQUIPMENT_ERROR_PS_SERVICES_NOT_ALLOWED] = "PS services not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_PS_AND_NON_PS_SERVICES_NOT_ALLOWED] = "PS and non-PS services not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_UE_IDENTITY_NOT_DERIVED_FROM_NETWORK] = "UE identity not derived from network",
+ [MM_MOBILE_EQUIPMENT_ERROR_IMPLICITLY_DETACHED] = "Implicitly detached",
+ [MM_MOBILE_EQUIPMENT_ERROR_PLMN_NOT_ALLOWED] = "PLMN not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_AREA_NOT_ALLOWED] = "Location/tracking area not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_ROAMING_NOT_ALLOWED_IN_AREA] = "Roaming not allowed in this location/tracking area",
+ [MM_MOBILE_EQUIPMENT_ERROR_PS_SERVICES_NOT_ALLOWED_IN_PLMN] = "PS services not allowed in PLMN",
+ [MM_MOBILE_EQUIPMENT_ERROR_NO_CELLS_IN_AREA] = "No cells in location/tracking area",
+ [MM_MOBILE_EQUIPMENT_ERROR_MSC_TEMPORARILY_NOT_REACHABLE] = "MSC temporarily not reachable",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_FAILURE_ATTACH] = "Network failure (attach)",
+ [MM_MOBILE_EQUIPMENT_ERROR_CS_DOMAIN_UNAVAILABLE] = "CS domain unavailable",
+ [MM_MOBILE_EQUIPMENT_ERROR_ESM_FAILURE] = "ESM failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_CONGESTION] = "Congestion",
+ [MM_MOBILE_EQUIPMENT_ERROR_MBMS_BEARER_CAPABILITIES_INSUFFICIENT_FOR_SERVICE] = "MBMS bearer capabilities insufficient for service",
+ [MM_MOBILE_EQUIPMENT_ERROR_NOT_AUTHORIZED_FOR_CSG] = "Not authorized for CSG",
+ [MM_MOBILE_EQUIPMENT_ERROR_INSUFFICIENT_RESOURCES] = "Insufficient resources",
+ [MM_MOBILE_EQUIPMENT_ERROR_MISSING_OR_UNKNOWN_APN] = "Missing or unknown APN",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN_PDP_ADDRESS_OR_TYPE] = "Unknown PDP address or type",
+ [MM_MOBILE_EQUIPMENT_ERROR_USER_AUTHENTICATION_FAILED] = "User authentication failed",
+ [MM_MOBILE_EQUIPMENT_ERROR_ACTIVATION_REJECTED_BY_GGSN_OR_GW] = "Activation rejected by GGSN or GW",
+ [MM_MOBILE_EQUIPMENT_ERROR_ACTIVATION_REJECTED_UNSPECIFIED] = "Activation rejected (unspecified)",
+ [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_OPTION_NOT_SUPPORTED] = "Service option not supported",
+ [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_OPTION_NOT_SUBSCRIBED] = "Requested service option not subscribed",
+ [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_OPTION_OUT_OF_ORDER] = "Service option temporarily out of order",
+ [MM_MOBILE_EQUIPMENT_ERROR_NSAPI_OR_PTI_ALREADY_IN_USE] = "NSAPI/PTI already in use",
+ [MM_MOBILE_EQUIPMENT_ERROR_REGULAR_DEACTIVATION] = "Regular deactivation",
+ [MM_MOBILE_EQUIPMENT_ERROR_QOS_NOT_ACCEPTED] = "QoS not accepted",
+ [MM_MOBILE_EQUIPMENT_ERROR_CALL_CANNOT_BE_IDENTIFIED] = "Call cannot be identified",
+ [MM_MOBILE_EQUIPMENT_ERROR_CS_SERVICE_TEMPORARILY_UNAVAILABLE] = "CS service temporarily unavailable",
+ [MM_MOBILE_EQUIPMENT_ERROR_FEATURE_NOT_SUPPORTED] = "Feature not supported",
+ [MM_MOBILE_EQUIPMENT_ERROR_SEMANTIC_ERROR_IN_TFT_OPERATION] = "Semantic error in TFT operation",
+ [MM_MOBILE_EQUIPMENT_ERROR_SYNTACTICAL_ERROR_IN_TFT_OPERATION] = "Syntactical error in TFT operation",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN_PDP_CONTEXT] = "Unknown PDP context",
+ [MM_MOBILE_EQUIPMENT_ERROR_SEMANTIC_ERRORS_IN_PACKET_FILTER] = "Semantic error in packet filter",
+ [MM_MOBILE_EQUIPMENT_ERROR_SYNTACTICAL_ERROR_IN_PACKET_FILTER] = "Syntactical error in packet filter",
+ [MM_MOBILE_EQUIPMENT_ERROR_PDP_CONTEXT_WITHOUT_TFT_ALREADY_ACTIVATED] = "PDP context without TFT already activated",
+ [MM_MOBILE_EQUIPMENT_ERROR_MULTICAST_GROUP_MEMBERSHIP_TIMEOUT] = "Multicast group membership timeout",
+ [MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNKNOWN] = "Unspecified GPRS error",
+ [MM_MOBILE_EQUIPMENT_ERROR_PDP_AUTH_FAILURE] = "PDP authentication failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_INVALID_MOBILE_CLASS] = "Invalid mobile class",
+ [MM_MOBILE_EQUIPMENT_ERROR_LAST_PDN_DISCONNECTION_NOT_ALLOWED_LEGACY] = "Last PDN disconnection not allowed (legacy)",
+ [MM_MOBILE_EQUIPMENT_ERROR_LAST_PDN_DISCONNECTION_NOT_ALLOWED] = "Last PDN disconnection not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_SEMANTICALLY_INCORRECT_MESSAGE] = "Semantically incorrect message",
+ [MM_MOBILE_EQUIPMENT_ERROR_INVALID_MANDATORY_INFORMATION] = "Invalid mandatory information",
+ [MM_MOBILE_EQUIPMENT_ERROR_MESSAGE_TYPE_NOT_IMPLEMENTED] = "Message type not implemented",
+ [MM_MOBILE_EQUIPMENT_ERROR_CONDITIONAL_IE_ERROR] = "Conditional IE error",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNSPECIFIED_PROTOCOL_ERROR] = "Unspecified protocol error",
+ [MM_MOBILE_EQUIPMENT_ERROR_OPERATOR_DETERMINED_BARRING] = "Operator determined barring",
+ [MM_MOBILE_EQUIPMENT_ERROR_MAXIMUM_NUMBER_OF_BEARERS_REACHED] = "Maximum number of PDP/bearer contexts reached",
+ [MM_MOBILE_EQUIPMENT_ERROR_REQUESTED_APN_NOT_SUPPORTED] = "Requested APN not supported",
+ [MM_MOBILE_EQUIPMENT_ERROR_REQUEST_REJECTED_BCM_VIOLATION] = "Rejected BCM violation",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNSUPPORTED_QCI_OR_5QI_VALUE] = "Unsupported QCI/5QI value",
+ [MM_MOBILE_EQUIPMENT_ERROR_USER_DATA_VIA_CONTROL_PLANE_CONGESTED] = "User data via control plane congested",
+ [MM_MOBILE_EQUIPMENT_ERROR_SMS_PROVIDED_VIA_GPRS_IN_ROUTING_AREA] = "SMS provided via GPRS in routing area",
+ [MM_MOBILE_EQUIPMENT_ERROR_INVALID_PTI_VALUE] = "Invalid PTI value",
+ [MM_MOBILE_EQUIPMENT_ERROR_NO_BEARER_ACTIVATED] = "No bearer activated",
+ [MM_MOBILE_EQUIPMENT_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE] = "Message not compatible with protocol state",
+ [MM_MOBILE_EQUIPMENT_ERROR_RECOVERY_ON_TIMER_EXPIRY] = "Recovery on timer expiry",
+ [MM_MOBILE_EQUIPMENT_ERROR_INVALID_TRANSACTION_ID_VALUE] = "Invalid transaction ID value",
+ [MM_MOBILE_EQUIPMENT_ERROR_SERVICE_OPTION_NOT_AUTHORIZED_IN_PLMN] = "Service option not authorized in PLMN",
+ [MM_MOBILE_EQUIPMENT_ERROR_NETWORK_FAILURE_ACTIVATION] = "Network failure (activation)",
+ [MM_MOBILE_EQUIPMENT_ERROR_REACTIVATION_REQUESTED] = "Reactivation requested",
+ [MM_MOBILE_EQUIPMENT_ERROR_IPV4_ONLY_ALLOWED] = "IPv4 only allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_IPV6_ONLY_ALLOWED] = "IPv6 only allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_SINGLE_ADDRESS_BEARERS_ONLY_ALLOWED] = "Single address bearers only allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_COLLISION_WITH_NETWORK_INITIATED_REQUEST] = "Collision with network initiated request",
+ [MM_MOBILE_EQUIPMENT_ERROR_IPV4V6_ONLY_ALLOWED] = "IPv4v6 only allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_NON_IP_ONLY_ALLOWED] = "Non-IP only allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_BEARER_HANDLING_UNSUPPORTED] = "Bearer handling unsupported",
+ [MM_MOBILE_EQUIPMENT_ERROR_APN_RESTRICTION_INCOMPATIBLE] = "APN restriction incompatible",
+ [MM_MOBILE_EQUIPMENT_ERROR_MULTIPLE_ACCESS_TO_PDN_CONNECTION_NOT_ALLOWED] = "Multiple access to PDN connection not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_ESM_INFORMATION_NOT_RECEIVED] = "ESM information not received",
+ [MM_MOBILE_EQUIPMENT_ERROR_PDN_CONNECTION_NONEXISTENT] = "PDN connection nonexistent",
+ [MM_MOBILE_EQUIPMENT_ERROR_MULTIPLE_PDN_CONNECTION_SAME_APN_NOT_ALLOWED] = "Multiple PDN connection to same APN not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_SEVERE_NETWORK_FAILURE] = "Severe network failure",
+ [MM_MOBILE_EQUIPMENT_ERROR_INSUFFICIENT_RESOURCES_FOR_SLICE_AND_DNN] = "Insufficient resources for slice and DNN",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNSUPPORTED_SSC_MODE] = "Unsupported SSC mode",
+ [MM_MOBILE_EQUIPMENT_ERROR_INSUFFICIENT_RESOURCES_FOR_SLICE] = "Insufficient resources for slice",
+ [MM_MOBILE_EQUIPMENT_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE] = "Message type not compatible with protocol state",
+ [MM_MOBILE_EQUIPMENT_ERROR_IE_NOT_IMPLEMENTED] = "IE not implemented",
+ [MM_MOBILE_EQUIPMENT_ERROR_N1_MODE_NOT_ALLOWED] = "N1 mode not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_RESTRICTED_SERVICE_AREA] = "Restricted service area",
+ [MM_MOBILE_EQUIPMENT_ERROR_LADN_UNAVAILABLE] = "LADN unavailable",
+ [MM_MOBILE_EQUIPMENT_ERROR_MISSING_OR_UNKNOWN_DNN_IN_SLICE] = "Missing or unknown DNN in slice",
+ [MM_MOBILE_EQUIPMENT_ERROR_NGKSI_ALREADY_IN_USE] = "ngKSI already in use",
+ [MM_MOBILE_EQUIPMENT_ERROR_PAYLOAD_NOT_FORWARDED] = "Payload not forwarded",
+ [MM_MOBILE_EQUIPMENT_ERROR_NON_3GPP_ACCESS_TO_5GCN_NOT_ALLOWED] = "Non-3GPP access to 5GCN not allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_SERVING_NETWORK_NOT_AUTHORIZED] = "Serving network not authorized",
+ [MM_MOBILE_EQUIPMENT_ERROR_DNN_NOT_SUPPORTED_IN_SLICE] = "DNN not supported in slice",
+ [MM_MOBILE_EQUIPMENT_ERROR_INSUFFICIENT_USER_PLANE_RESOURCES_FOR_PDU_SESSION] = "Insufficient user plane resources for PDU session",
+ [MM_MOBILE_EQUIPMENT_ERROR_OUT_OF_LADN_SERVICE_AREA] = "Out of LADN service area",
+ [MM_MOBILE_EQUIPMENT_ERROR_PTI_MISMATCH] = "PTI mismatch",
+ [MM_MOBILE_EQUIPMENT_ERROR_MAX_DATA_RATE_FOR_USER_PLANE_INTEGRITY_TOO_LOW] = "Max data rate for user plane integrity too low",
+ [MM_MOBILE_EQUIPMENT_ERROR_SEMANTIC_ERROR_IN_QOS_OPERATION] = "Semantic error in QoS operation",
+ [MM_MOBILE_EQUIPMENT_ERROR_SYNTACTICAL_ERROR_IN_QOS_OPERATION] = "Syntactical error in QoS operation",
+ [MM_MOBILE_EQUIPMENT_ERROR_INVALID_MAPPED_EPS_BEARER_IDENTITY] = "Invalid mapped EPS bearer identity",
+ [MM_MOBILE_EQUIPMENT_ERROR_REDIRECTION_TO_5GCN_REQUIRED] = "Redirection to 5GCN required",
+ [MM_MOBILE_EQUIPMENT_ERROR_REDIRECTION_TO_EPC_REQUIRED] = "Redirection to EPC required",
+ [MM_MOBILE_EQUIPMENT_ERROR_TEMPORARILY_UNAUTHORIZED_FOR_SNPN] = "Temporarily unauthorized for SNPN",
+ [MM_MOBILE_EQUIPMENT_ERROR_PERMANENTLY_UNAUTHORIZED_FOR_SNPN] = "Permanently unauthorized for SNPN",
+ [MM_MOBILE_EQUIPMENT_ERROR_ETHERNET_ONLY_ALLOWED] = "Ethernet only allowed",
+ [MM_MOBILE_EQUIPMENT_ERROR_UNAUTHORIZED_FOR_CAG] = "Unauthorized for CAG",
+ [MM_MOBILE_EQUIPMENT_ERROR_NO_NETWORK_SLICES_AVAILABLE] = "No network slices available",
+ [MM_MOBILE_EQUIPMENT_ERROR_WIRELINE_ACCESS_AREA_NOT_ALLOWED] = "Wireline access area not allowed",
};
/* All generic ME errors should be < 255, as those are the only reserved ones in the 3GPP spec */
diff --git a/src/mm-modem-helpers-mbim.c b/src/mm-modem-helpers-mbim.c
index be9cd886..d01f4c38 100644
--- a/src/mm-modem-helpers-mbim.c
+++ b/src/mm-modem-helpers-mbim.c
@@ -243,141 +243,189 @@ mm_mobile_equipment_error_from_mbim_nw_error (MbimNwError nw_error)
switch (nw_error) {
case MBIM_NW_ERROR_IMSI_UNKNOWN_IN_HLR:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_IMSI_UNKNOWN_IN_HLR,
+ MM_MOBILE_EQUIPMENT_ERROR_IMSI_UNKNOWN_IN_HSS,
"IMSI unknown in HLR");
case MBIM_NW_ERROR_ILLEGAL_MS:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_ILLEGAL_MS,
- "Illegal MS");
+ MM_MOBILE_EQUIPMENT_ERROR_ILLEGAL_UE,
+ "Illegal UE/MS");
case MBIM_NW_ERROR_IMSI_UNKNOWN_IN_VLR:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_IMSI_UNKNOWN_IN_VLR,
+ MM_MOBILE_EQUIPMENT_ERROR_IMSI_UNKNOWN_IN_VLR,
"IMSI unknown in VLR");
case MBIM_NW_ERROR_ILLEGAL_ME:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_ILLEGAL_ME,
+ MM_MOBILE_EQUIPMENT_ERROR_ILLEGAL_ME,
"Illegal ME");
case MBIM_NW_ERROR_GPRS_NOT_ALLOWED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_NOT_ALLOWED,
- "GPRS not allowed");
+ MM_MOBILE_EQUIPMENT_ERROR_PS_SERVICES_NOT_ALLOWED,
+ "PS services not allowed");
case MBIM_NW_ERROR_GPRS_AND_NON_GPRS_NOT_ALLOWED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_NOT_ALLOWED,
- "GPRS and non-GPRS not allowed");
+ MM_MOBILE_EQUIPMENT_ERROR_PS_AND_NON_PS_SERVICES_NOT_ALLOWED,
+ "PS and non-PS services not allowed");
case MBIM_NW_ERROR_PLMN_NOT_ALLOWED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_PLMN_NOT_ALLOWED,
+ MM_MOBILE_EQUIPMENT_ERROR_PLMN_NOT_ALLOWED,
"PLMN not allowed");
case MBIM_NW_ERROR_LOCATION_AREA_NOT_ALLOWED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_LOCATION_NOT_ALLOWED,
- "Location area not allowed");
+ MM_MOBILE_EQUIPMENT_ERROR_AREA_NOT_ALLOWED,
+ "Location/tracking area not allowed");
case MBIM_NW_ERROR_ROAMING_NOT_ALLOWED_IN_LOCATION_AREA:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_ROAMING_NOT_ALLOWED,
- "Roaming not allowed in location area");
+ MM_MOBILE_EQUIPMENT_ERROR_ROAMING_NOT_ALLOWED_IN_AREA,
+ "Roaming not allowed in location/tracking area");
case MBIM_NW_ERROR_GPRS_NOT_ALLOWED_IN_PLMN:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_NOT_ALLOWED,
- "GPRS not allowed in PLMN");
+ MM_MOBILE_EQUIPMENT_ERROR_PS_SERVICES_NOT_ALLOWED_IN_PLMN,
+ "PS services not allowed in PLMN");
case MBIM_NW_ERROR_NO_CELLS_IN_LOCATION_AREA:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_NO_CELLS_IN_LOCATION_AREA,
- "No cells in location area");
+ MM_MOBILE_EQUIPMENT_ERROR_NO_CELLS_IN_AREA,
+ "No cells in location/tracking area");
case MBIM_NW_ERROR_NETWORK_FAILURE:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_NETWORK_FAILURE,
+ MM_MOBILE_EQUIPMENT_ERROR_NETWORK_FAILURE_ATTACH,
"Network failure");
case MBIM_NW_ERROR_CONGESTION:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_CONGESTION,
+ MM_MOBILE_EQUIPMENT_ERROR_CONGESTION,
"Congestion");
case MBIM_NW_ERROR_GSM_AUTHENTICATION_UNACCEPTABLE:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_USER_AUTHENTICATION_FAILED,
+ MM_MOBILE_EQUIPMENT_ERROR_USER_AUTHENTICATION_FAILED,
"GSM authentication unacceptable");
case MBIM_NW_ERROR_NOT_AUTHORIZED_FOR_CSG:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_USER_AUTHENTICATION_FAILED,
+ MM_MOBILE_EQUIPMENT_ERROR_NOT_AUTHORIZED_FOR_CSG,
"Not authorized for this CSG");
case MBIM_NW_ERROR_INSUFFICIENT_RESOURCES:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_INSUFFICIENT_RESOURCES,
+ MM_MOBILE_EQUIPMENT_ERROR_INSUFFICIENT_RESOURCES,
"Insufficient resources");
case MBIM_NW_ERROR_MISSING_OR_UNKNOWN_APN:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_MISSING_OR_UNKNOWN_APN,
+ MM_MOBILE_EQUIPMENT_ERROR_MISSING_OR_UNKNOWN_APN,
"Missing or unknown APN");
case MBIM_NW_ERROR_UNKNOWN_PDP_ADDRESS_OR_TYPE:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNKNOWN_PDP_ADDRESS_OR_TYPE,
+ MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN_PDP_ADDRESS_OR_TYPE,
"Unknown PDP address or type");
case MBIM_NW_ERROR_USER_AUTHENTICATION_FAILED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_USER_AUTHENTICATION_FAILED,
+ MM_MOBILE_EQUIPMENT_ERROR_USER_AUTHENTICATION_FAILED,
"User authentication failed");
case MBIM_NW_ERROR_ACTIVATION_REJECTED_BY_GGSN_OR_GW:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_ACTIVATION_REJECTED_BY_GGSN_OR_GW,
+ MM_MOBILE_EQUIPMENT_ERROR_ACTIVATION_REJECTED_BY_GGSN_OR_GW,
"Activation rejected by GGSN or GW");
case MBIM_NW_ERROR_ACTIVATION_REJECTED_UNSPECIFIED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_ACTIVATION_REJECTED_UNSPECIFIED,
+ MM_MOBILE_EQUIPMENT_ERROR_ACTIVATION_REJECTED_UNSPECIFIED,
"Activation rejected; unspecified");
case MBIM_NW_ERROR_SERVICE_OPTION_NOT_SUPPORTED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_OPTION_NOT_SUPPORTED,
+ MM_MOBILE_EQUIPMENT_ERROR_SERVICE_OPTION_NOT_SUPPORTED,
"Service option not supported");
case MBIM_NW_ERROR_REQUESTED_SERVICE_OPTION_NOT_SUBSCRIBED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_OPTION_NOT_SUBSCRIBED,
+ MM_MOBILE_EQUIPMENT_ERROR_SERVICE_OPTION_NOT_SUBSCRIBED,
"Requested service option not subscribed");
case MBIM_NW_ERROR_SERVICE_OPTION_TEMPORARILY_OUT_OF_ORDER:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_SERVICE_OPTION_OUT_OF_ORDER,
+ MM_MOBILE_EQUIPMENT_ERROR_SERVICE_OPTION_OUT_OF_ORDER,
"Service option temporarily out of order");
case MBIM_NW_ERROR_MAXIMUM_NUMBER_OF_PDP_CONTEXTS_REACHED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_MAXIMUM_NUMBER_OF_PDP_CONTEXTS_REACHED,
+ MM_MOBILE_EQUIPMENT_ERROR_MAXIMUM_NUMBER_OF_BEARERS_REACHED,
"Maximum number of PDP contexts reached");
case MBIM_NW_ERROR_REQUESTED_APN_NOT_SUPPORTED_IN_CURRENT_RAT_AND_PLMN:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_REQUESTED_APN_NOT_SUPPORTED,
+ MM_MOBILE_EQUIPMENT_ERROR_REQUESTED_APN_NOT_SUPPORTED,
"Requested APN not supported");
case MBIM_NW_ERROR_SEMANTICALLY_INCORRECT_MESSAGE:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_SEMANTICALLY_INCORRECT_MESSAGE,
+ MM_MOBILE_EQUIPMENT_ERROR_SEMANTICALLY_INCORRECT_MESSAGE,
"Semantically incorrect message");
case MBIM_NW_ERROR_PROTOCOL_ERROR_UNSPECIFIED:
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNSPECIFIED_PROTOCOL_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_UNSPECIFIED_PROTOCOL_ERROR,
"Unspecified protocol error");
case MBIM_NW_ERROR_IMEI_NOT_ACCEPTED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_IMEI_NOT_ACCEPTED,
+ "IMEI not accepted");
case MBIM_NW_ERROR_MS_IDENTITY_NOT_DERIVED_BY_NETWORK:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_UE_IDENTITY_NOT_DERIVED_FROM_NETWORK,
+ "UE identity not derived from network");
case MBIM_NW_ERROR_IMPLICITLY_DETACHED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_IMPLICITLY_DETACHED,
+ "Implicitly detached");
case MBIM_NW_ERROR_MSC_TEMPORARILY_NOT_REACHABLE:
- case MBIM_NW_ERROR_MAC_FAILURE:
- case MBIM_NW_ERROR_SYNCH_FAILURE:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_MSC_TEMPORARILY_NOT_REACHABLE,
+ "MSC temporarily not reachable");
case MBIM_NW_ERROR_NO_PDP_CONTEXT_ACTIVATED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_NO_BEARER_ACTIVATED,
+ "No bearer activated");
case MBIM_NW_ERROR_PDP_TYPE_IPV4_ONLY_ALLOWED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_IPV4_ONLY_ALLOWED,
+ "IPv4 only allowed");
case MBIM_NW_ERROR_PDP_TYPE_IPV6_ONLY_ALLOWED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_IPV6_ONLY_ALLOWED,
+ "IPv6 only allowed");
case MBIM_NW_ERROR_INVALID_MANDATORY_INFORMATION:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_INVALID_MANDATORY_INFORMATION,
+ "Invalid mandatory information");
case MBIM_NW_ERROR_MESSAGE_TYPE_NON_EXISTENT_OR_NOT_IMPLEMENTED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_MESSAGE_TYPE_NOT_IMPLEMENTED,
+ "Message type nonexistent or not implemented");
case MBIM_NW_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE,
+ "Message type not compatible with protocol state");
case MBIM_NW_ERROR_INFORMATION_ELEMENT_NON_EXISTENT_OR_NOT_IMPLEMENTED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_IE_NOT_IMPLEMENTED,
+ "Information element nonexistent or not implemented");
case MBIM_NW_ERROR_CONDITIONAL_IE_ERROR:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_CONDITIONAL_IE_ERROR,
+ "Conditional IE error");
case MBIM_NW_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE,
+ "Message not compatible with protocol state");
case MBIM_NW_ERROR_APN_RESTRICTION_VALUE_INCOMPATIBLE_WITH_ACTIVE_PDP_CONTEXT:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_APN_RESTRICTION_INCOMPATIBLE,
+ "APN restriction incompatible with active bearer");
case MBIM_NW_ERROR_MULTIPLE_ACCESSES_TO_A_PDN_CONNECTION_NOT_ALLOWED:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_MULTIPLE_ACCESS_TO_PDN_CONNECTION_NOT_ALLOWED,
+ "Multiple accesses to PDN connection not allowed");
case MBIM_NW_ERROR_UNKNOWN:
+ return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
+ MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN,
+ "Unknown error");
+ case MBIM_NW_ERROR_MAC_FAILURE:
+ case MBIM_NW_ERROR_SYNCH_FAILURE:
default:
msg = mbim_nw_error_get_string (nw_error);
return g_error_new (MM_MOBILE_EQUIPMENT_ERROR,
- MM_MOBILE_EQUIPMENT_ERROR_GPRS_UNKNOWN,
+ MM_MOBILE_EQUIPMENT_ERROR_UNKNOWN,
"Unsupported error (%u): %s",
nw_error, msg ? msg : "unknown");
}
diff --git a/src/tests/test-error-helpers.c b/src/tests/test-error-helpers.c
index ef4504ed..03bcab98 100644
--- a/src/tests/test-error-helpers.c
+++ b/src/tests/test-error-helpers.c
@@ -63,8 +63,8 @@ test_error_helpers_mobile_equipment_error_for_code (void)
g_clear_error (&error);
/* last */
- error = mm_mobile_equipment_error_for_code (MM_MOBILE_EQUIPMENT_ERROR_GPRS_REQUEST_REJECTED_BCM_VIOLATION, NULL);
- g_assert_error (error, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_GPRS_REQUEST_REJECTED_BCM_VIOLATION);
+ error = mm_mobile_equipment_error_for_code (MM_MOBILE_EQUIPMENT_ERROR_WIRELINE_ACCESS_AREA_NOT_ALLOWED, NULL);
+ g_assert_error (error, MM_MOBILE_EQUIPMENT_ERROR, MM_MOBILE_EQUIPMENT_ERROR_WIRELINE_ACCESS_AREA_NOT_ALLOWED);
g_clear_error (&error);
/* other > 255 */