aboutsummaryrefslogtreecommitdiff
path: root/src/mm-base-modem.c
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@lanedo.com>2011-12-15 20:23:35 +0100
committerAleksander Morgado <aleksander@lanedo.com>2012-03-15 14:14:34 +0100
commitc133c3284d03afb537c6467fc322d8174eb91fb4 (patch)
tree80b26a5ea8b39fe143feb3f105f29f83aefe1bf3 /src/mm-base-modem.c
parent88077cbbe83a8d6beaed92a3277cab3ba0e429d3 (diff)
base-modem: allow retrieving non-connected data ports
Bearers will ask for data ports that can be used for connections. Right now, only one data port is expected to be handled, but we don't impose any restriction in the API.
Diffstat (limited to 'src/mm-base-modem.c')
-rw-r--r--src/mm-base-modem.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/mm-base-modem.c b/src/mm-base-modem.c
index 6f209bfc..bef3ee36 100644
--- a/src/mm-base-modem.c
+++ b/src/mm-base-modem.c
@@ -302,9 +302,6 @@ mm_base_modem_grab_port (MMBaseModem *self,
if (!self->priv->data || MM_IS_AT_SERIAL_PORT (self->priv->data)) {
g_clear_object (&self->priv->data);
self->priv->data = g_object_ref (port);
-
- /* TODO: */
- /* check_valid (self); */
}
mm_dbg ("(%s/%s) port grabbed by %s",
@@ -420,6 +417,19 @@ mm_base_modem_get_port_qcdm (MMBaseModem *self)
return self->priv->qcdm;
}
+MMPort *
+mm_base_modem_get_best_data_port (MMBaseModem *self)
+{
+ g_return_val_if_fail (MM_IS_BASE_MODEM (self), NULL);
+
+ /* TODO: sometime we'll have a list of available data ports to use instead
+ * of a single one */
+
+ return (mm_port_get_connected (self->priv->data) ?
+ NULL :
+ self->priv->data);
+}
+
gboolean
mm_base_modem_auth_request (MMBaseModem *self,
const gchar *authorization,