diff options
Diffstat (limited to 'libnm-core/nm-setting-gsm.c')
| -rw-r--r-- | libnm-core/nm-setting-gsm.c | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/libnm-core/nm-setting-gsm.c b/libnm-core/nm-setting-gsm.c index 86166df2..be32b852 100644 --- a/libnm-core/nm-setting-gsm.c +++ b/libnm-core/nm-setting-gsm.c @@ -62,6 +62,7 @@ typedef struct { NMSettingSecretFlags pin_flags; gboolean home_only; + guint32 mtu; } NMSettingGsmPrivate; enum { @@ -78,6 +79,7 @@ enum { PROP_DEVICE_ID, PROP_SIM_ID, PROP_SIM_OPERATOR_ID, + PROP_MTU, LAST_PROP }; @@ -269,6 +271,22 @@ nm_setting_gsm_get_sim_operator_id (NMSettingGsm *setting) return NM_SETTING_GSM_GET_PRIVATE (setting)->sim_operator_id; } +/** + * nm_setting_gsm_get_mtu: + * @setting: the #NMSettingGsm + * + * Returns: the #NMSettingGsm:mtu property of the setting + * + * Since: 1.8 + **/ +guint32 +nm_setting_gsm_get_mtu (NMSettingGsm *setting) +{ + g_return_val_if_fail (NM_IS_SETTING_GSM (setting), 0); + + return NM_SETTING_GSM_GET_PRIVATE (setting)->mtu; +} + static gboolean verify (NMSetting *setting, NMConnection *connection, GError **error) { @@ -524,6 +542,9 @@ set_property (GObject *object, guint prop_id, g_free (priv->sim_operator_id); priv->sim_operator_id = g_value_dup_string (value); break; + case PROP_MTU: + priv->mtu = g_value_get_uint (value); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -573,6 +594,9 @@ get_property (GObject *object, guint prop_id, case PROP_SIM_OPERATOR_ID: g_value_set_string (value, nm_setting_gsm_get_sim_operator_id (setting)); break; + case PROP_MTU: + g_value_set_uint (value, nm_setting_gsm_get_mtu (setting)); + break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -780,6 +804,23 @@ nm_setting_gsm_class_init (NMSettingGsmClass *setting_class) G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); + /** + * NMSettingGsm:mtu: + * + * If non-zero, only transmit packets of the specified size or smaller, + * breaking larger packets up into multiple frames. + * + * Since: 1.8 + **/ + g_object_class_install_property + (object_class, PROP_MTU, + g_param_spec_uint (NM_SETTING_GSM_MTU, "", "", + 0, G_MAXUINT32, 0, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT | + NM_SETTING_PARAM_FUZZY_IGNORE | + G_PARAM_STATIC_STRINGS)); + /* Ignore incoming deprecated properties */ _nm_setting_class_add_dbus_only_property (parent_class, "allowed-bands", G_VARIANT_TYPE_UINT32, |