aboutsummaryrefslogtreecommitdiff
path: root/src/mm-modem-helpers-mbim.h
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2021-11-27 22:59:29 +0100
committerAleksander Morgado <aleksander@aleksander.es>2021-12-24 14:06:11 +0100
commitb90d64192aad518ca027265f5680314af75d2f12 (patch)
treeeb4091b164ff2b6af2ac40069cb6314d1b7e8f39 /src/mm-modem-helpers-mbim.h
parent6ba245cedccb9678e0d340280db154e7f2803734 (diff)
broadband-modem-mbim: support profile properties from MbimProvisionedContextElementV2
Microsoft defined a new extended version of the "provisioned contexts" operation from the generic MBIM basic connect service. This extended version adds several new settings that can be stored in the profile (e.g. IP type, media type, roaming allowance...). But this new version has a huge drawback; we cannot specify single profiles via their unique id while we perform update/delete operations in the modem. Instead, Microsoft explains that we should use the context type to identify the target context; but this will ONLY work if we have one context defined for each type. As soon as we have multiple contexts of the same type, this operation may fail or otherwise update multiple contexts at once.
Diffstat (limited to 'src/mm-modem-helpers-mbim.h')
-rw-r--r--src/mm-modem-helpers-mbim.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/mm-modem-helpers-mbim.h b/src/mm-modem-helpers-mbim.h
index 909d0186..abf5413b 100644
--- a/src/mm-modem-helpers-mbim.h
+++ b/src/mm-modem-helpers-mbim.h
@@ -67,6 +67,33 @@ MbimContextType mm_bearer_apn_type_to_mbim_context_type (MMBearerApnT
gpointer log_object,
GError **error);
+gboolean mm_bearer_roaming_allowance_to_mbim_context_roaming_control (MMBearerRoamingAllowance mask,
+ gpointer log_object,
+ MbimContextRoamingControl *out_value,
+ GError **error);
+MMBearerRoamingAllowance mm_bearer_roaming_allowance_from_mbim_context_roaming_control (MbimContextRoamingControl value,
+ GError **error);
+
+gboolean mm_bearer_access_type_preference_to_mbim_context_media_type (MMBearerAccessTypePreference value,
+ gpointer log_object,
+ MbimContextMediaType *out_value,
+ GError **error);
+gboolean mm_bearer_access_type_preference_from_mbim_context_media_type (MbimContextMediaType value,
+ MMBearerAccessTypePreference *out_value,
+ GError **error);
+
+gboolean mm_boolean_from_mbim_context_state (MbimContextState value,
+ gboolean *out_value,
+ GError **error);
+MbimContextState mm_boolean_to_mbim_context_state (gboolean value);
+
+MMBearerProfileSource mm_bearer_profile_source_from_mbim_context_source (MbimContextSource value,
+ GError **error);
+gboolean mm_bearer_profile_source_to_mbim_context_source (MMBearerProfileSource value,
+ gpointer log_object,
+ MbimContextSource *out_value,
+ GError **error);
+
gboolean mm_signal_error_rate_percentage_from_coded_value (guint coded_value,
gdouble *out_percentage,
gboolean is_gsm,