From dc154cf005bbcb2f0bd1123093f6ac3c402c4de8 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Sun, 11 Nov 2018 14:46:53 +0100 Subject: api,bearer: new 'BearerType' property Until now we have only allowed to use and setup 'default bearers' (in 4G) or 'primary contexts' (in 2G/3G). We can define a couple of additional bearer types, though: * The 'dedicated bearers' (in 4G) or 'secondary contexts' (in 2G/3G), which are associated to a specific default/primary one, but which provide specific QoS settings configured via traffic flow templates. * The 'initial default EPS bearer', which is a special case of default bearer in LTE, which is automatically created and connected when the modem is registered in the LTE network. This commit introduces a new 'MMBearerType' enumeration that will be associated to each bearer through a 'BearerType' property in the org.freedesktop.ModemManager1.Bearer interface, showing what kind of bearer/context this is. By default, right now, all bearer objects created are 'default' bearers. --- include/ModemManager-enums.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'include/ModemManager-enums.h') diff --git a/include/ModemManager-enums.h b/include/ModemManager-enums.h index cc78cdc9..8f06bb91 100644 --- a/include/ModemManager-enums.h +++ b/include/ModemManager-enums.h @@ -970,6 +970,28 @@ typedef enum { /*< underscore_name=mm_modem_contacts_storage >*/ MM_MODEM_CONTACTS_STORAGE_MT = 3, } MMModemContactsStorage; +/** + * MMBearerType: + * @MM_BEARER_TYPE_UNKNOWN: Unknown bearer. + * @MM_BEARER_TYPE_DEFAULT: Primary context (2G/3G) or default bearer (4G), + * defined by the user of the API. + * @MM_BEARER_TYPE_DEFAULT_ATTACH: The initial default bearer established + * during LTE attach procedure, automatically connected as long as the device is + * regitered in the LTE network. + * @MM_BEARER_TYPE_DEDICATED: Secondary context (2G/3G) or dedicated bearer + * (4G), defined by the user of the API. These bearers use the same IP address + * used by a primary context or default bearer and provide a dedicated flow for + * specific traffic with different QoS settings. + * + * Type of context (2G/3G) or bearer (4G). + */ +typedef enum { /*< underscore_name=mm_bearer_type >*/ + MM_BEARER_TYPE_UNKNOWN = 0, + MM_BEARER_TYPE_DEFAULT = 1, + MM_BEARER_TYPE_DEFAULT_ATTACH = 2, + MM_BEARER_TYPE_DEDICATED = 3, +} MMBearerType; + /** * MMBearerIpMethod: * @MM_BEARER_IP_METHOD_UNKNOWN: Unknown method. -- cgit v1.2.3-70-g09d2