diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mm-modem-base.c | 11 | ||||
-rw-r--r-- | src/mm-modem.c | 10 | ||||
-rw-r--r-- | src/mm-modem.h | 4 |
3 files changed, 24 insertions, 1 deletions
diff --git a/src/mm-modem-base.c b/src/mm-modem-base.c index 08c098de..b3b1db2c 100644 --- a/src/mm-modem-base.c +++ b/src/mm-modem-base.c @@ -60,6 +60,7 @@ typedef struct { guint32 unlock_retries; GArray *pin_retry_counts; guint32 ip_method; + guint32 ip_timeout; gboolean valid; MMModemState state; @@ -925,6 +926,9 @@ set_property (GObject *object, guint prop_id, case MM_MODEM_PROP_IP_METHOD: priv->ip_method = g_value_get_uint (value); break; + case MM_MODEM_PROP_IP_TIMEOUT: + priv->ip_timeout = g_value_get_uint (value); + break; case MM_MODEM_PROP_VALID: case MM_MODEM_PROP_TYPE: case MM_MODEM_PROP_ENABLED: @@ -997,6 +1001,9 @@ get_property (GObject *object, guint prop_id, case MM_MODEM_PROP_IP_METHOD: g_value_set_uint (value, priv->ip_method); break; + case MM_MODEM_PROP_IP_TIMEOUT: + g_value_set_uint (value, priv->ip_timeout); + break; case MM_MODEM_PROP_VALID: g_value_set_boolean (value, priv->valid); break; @@ -1106,6 +1113,10 @@ mm_modem_base_class_init (MMModemBaseClass *klass) MM_MODEM_IP_METHOD); g_object_class_override_property (object_class, + MM_MODEM_PROP_IP_TIMEOUT, + MM_MODEM_IP_TIMEOUT); + + g_object_class_override_property (object_class, MM_MODEM_PROP_VALID, MM_MODEM_VALID); diff --git a/src/mm-modem.c b/src/mm-modem.c index a78587b2..adfbeb26 100644 --- a/src/mm-modem.c +++ b/src/mm-modem.c @@ -862,6 +862,16 @@ mm_modem_init (gpointer g_iface) g_object_interface_install_property (g_iface, + g_param_spec_uint (MM_MODEM_IP_TIMEOUT, + "IP timeout", + "Maximum time to wait for a successful IP establishment, " + "when PPP is used. Modems with special needs will set this " + "property to a value greater than 0", + 0, G_MAXUINT32, 0, + G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); + + g_object_interface_install_property + (g_iface, g_param_spec_boolean (MM_MODEM_VALID, "Valid", "Modem is valid", diff --git a/src/mm-modem.h b/src/mm-modem.h index 2041fa0f..19640ac8 100644 --- a/src/mm-modem.h +++ b/src/mm-modem.h @@ -38,6 +38,7 @@ #define MM_MODEM_DRIVER "driver" #define MM_MODEM_TYPE "type" #define MM_MODEM_IP_METHOD "ip-method" +#define MM_MODEM_IP_TIMEOUT "ip-timeout" #define MM_MODEM_ENABLED "enabled" #define MM_MODEM_EQUIPMENT_IDENTIFIER "equipment-identifier" #define MM_MODEM_DEVICE_IDENTIFIER "device-identifier" @@ -71,7 +72,8 @@ typedef enum { MM_MODEM_PROP_DEVICE_IDENTIFIER, MM_MODEM_PROP_HW_VID, /* Not exported */ MM_MODEM_PROP_HW_PID, /* Not exported */ - MM_MODEM_PROP_NETWORK_TIMEZONE + MM_MODEM_PROP_NETWORK_TIMEZONE, + MM_MODEM_PROP_IP_TIMEOUT } MMModemProp; typedef struct _MMModem MMModem; |