aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--introspection/org.freedesktop.ModemManager.Modem.Cdma.xml2
-rw-r--r--src/mm-generic-cdma.c9
-rw-r--r--src/mm-modem-cdma.c9
-rw-r--r--src/mm-modem-cdma.h8
4 files changed, 27 insertions, 1 deletions
diff --git a/introspection/org.freedesktop.ModemManager.Modem.Cdma.xml b/introspection/org.freedesktop.ModemManager.Modem.Cdma.xml
index fd6a4d3d..13ddc97f 100644
--- a/introspection/org.freedesktop.ModemManager.Modem.Cdma.xml
+++ b/introspection/org.freedesktop.ModemManager.Modem.Cdma.xml
@@ -93,7 +93,7 @@
</arg>
</method>
- <property name="MEID" type="s" access="read">
+ <property name="Meid" type="s" access="read">
<tp:docstring>
The modem's Mobile Equipment Identifier.
</tp:docstring>
diff --git a/src/mm-generic-cdma.c b/src/mm-generic-cdma.c
index e453d1d8..386acdb7 100644
--- a/src/mm-generic-cdma.c
+++ b/src/mm-generic-cdma.c
@@ -68,6 +68,8 @@ typedef struct {
guint poll_id;
+ char *meid;
+
MMModemCdmaRegistrationState cdma_1x_reg_state;
MMModemCdmaRegistrationState evdo_reg_state;
@@ -2279,6 +2281,9 @@ get_property (GObject *object, guint prop_id,
case MM_MODEM_PROP_TYPE:
g_value_set_uint (value, MM_MODEM_TYPE_CDMA);
break;
+ case MM_MODEM_CDMA_PROP_MEID:
+ g_value_set_string (value, priv->meid);
+ break;
case PROP_EVDO_REV0:
g_value_set_boolean (value, priv->evdo_rev0);
break;
@@ -2331,6 +2336,10 @@ mm_generic_cdma_class_init (MMGenericCdmaClass *klass)
MM_MODEM_PROP_TYPE,
MM_MODEM_TYPE);
+ g_object_class_override_property (object_class,
+ MM_MODEM_CDMA_PROP_MEID,
+ MM_MODEM_CDMA_MEID);
+
g_object_class_install_property (object_class, PROP_EVDO_REV0,
g_param_spec_boolean (MM_GENERIC_CDMA_EVDO_REV0,
"EVDO rev0",
diff --git a/src/mm-modem-cdma.c b/src/mm-modem-cdma.c
index 3f4ffe54..722918e0 100644
--- a/src/mm-modem-cdma.c
+++ b/src/mm-modem-cdma.c
@@ -357,6 +357,15 @@ mm_modem_cdma_init (gpointer g_iface)
if (initialized)
return;
+ /* Properties */
+ g_object_interface_install_property
+ (g_iface,
+ g_param_spec_string (MM_MODEM_CDMA_MEID,
+ "MEID",
+ "MEID",
+ NULL,
+ G_PARAM_READABLE));
+
/* Signals */
signals[SIGNAL_QUALITY] =
g_signal_new ("signal-quality",
diff --git a/src/mm-modem-cdma.h b/src/mm-modem-cdma.h
index 89751518..4d30386a 100644
--- a/src/mm-modem-cdma.h
+++ b/src/mm-modem-cdma.h
@@ -35,6 +35,14 @@ typedef enum {
#define MM_MODEM_CDMA_REGISTRATION_STATE_CHANGED "registration-state-changed"
+#define MM_MODEM_CDMA_MEID "meid"
+
+typedef enum {
+ MM_MODEM_CDMA_PROP_FIRST = 0x1200,
+
+ MM_MODEM_CDMA_PROP_MEID = MM_MODEM_CDMA_PROP_FIRST,
+} MMModemCdmaProp;
+
typedef struct _MMModemCdma MMModemCdma;
typedef void (*MMModemCdmaServingSystemFn) (MMModemCdma *modem,