r3878 - in trunk/src/target/OM-2007.2/applications/openmoko-dialer2: . src/phone-kit
chris at sita.openmoko.org
chris at sita.openmoko.org
Fri Jan 18 12:05:47 CET 2008
Author: chris
Date: 2008-01-18 12:05:46 +0100 (Fri, 18 Jan 2008)
New Revision: 3878
Modified:
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.c
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.h
trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-network.c
Log:
* src/phone-kit/moko-listener.c: (moko_listener_on_network_number):
* src/phone-kit/moko-listener.h:
Add on_network_number for new lgsm_oper_n_get function
* src/phone-kit/moko-network.c: (retry_oper_get),
(retry_opern_get), (stop_retrying), (on_network_registered),
(on_network_number), (listener_interface_init), (net_msghandler),
(moko_network_init):
Use lgsm_oper_n_get to get network number instead of listing operators
Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog 2008-01-18 10:03:14 UTC (rev 3877)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/ChangeLog 2008-01-18 11:05:46 UTC (rev 3878)
@@ -1,3 +1,15 @@
+2008-01-18 Chris Lord <chris at openedhand.com>
+
+ * src/phone-kit/moko-listener.c: (moko_listener_on_network_number):
+ * src/phone-kit/moko-listener.h:
+ Add on_network_number for new lgsm_oper_n_get function
+
+ * src/phone-kit/moko-network.c: (retry_oper_get),
+ (retry_opern_get), (stop_retrying), (on_network_registered),
+ (on_network_number), (listener_interface_init), (net_msghandler),
+ (moko_network_init):
+ Use lgsm_oper_n_get to get network number instead of listing operators
+
2008-01-17 Chris Lord <chris at openedhand.com>
* src/phone-kit/moko-listener.c: (moko_listener_on_pin_requested):
Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.c 2008-01-18 10:03:14 UTC (rev 3877)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.c 2008-01-18 11:05:46 UTC (rev 3878)
@@ -81,6 +81,16 @@
}
void
+moko_listener_on_network_number (MokoListener *listener,
+ struct lgsm_handle *handle,
+ const gchar *number)
+{
+ MokoListenerInterface *interface = MOKO_LISTENER_GET_INTERFACE (listener);
+ if (interface->on_network_number)
+ interface->on_network_number (listener, handle, number);
+}
+
+void
moko_listener_on_network_list (MokoListener *listener,
struct lgsm_handle *handle,
const struct gsmd_msg_oper *opers)
Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.h
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.h 2008-01-18 10:03:14 UTC (rev 3877)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-listener.h 2008-01-18 11:05:46 UTC (rev 3878)
@@ -53,6 +53,9 @@
void (*on_network_name) (MokoListener *listener,
struct lgsm_handle *handle,
const gchar *name);
+ void (*on_network_number) (MokoListener *listener,
+ struct lgsm_handle *handle,
+ const gchar *number);
void (*on_network_list) (MokoListener *listener,
struct lgsm_handle *handle,
const struct gsmd_msg_oper *opers);
@@ -94,6 +97,9 @@
void moko_listener_on_network_name (MokoListener *listener,
struct lgsm_handle *handle,
const gchar *name);
+void moko_listener_on_network_number (MokoListener *listener,
+ struct lgsm_handle *handle,
+ const gchar *number);
void moko_listener_on_network_list (MokoListener *listener,
struct lgsm_handle *handle,
const struct gsmd_msg_oper *opers);
Modified: trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-network.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-network.c 2008-01-18 10:03:14 UTC (rev 3877)
+++ trunk/src/target/OM-2007.2/applications/openmoko-dialer2/src/phone-kit/moko-network.c 2008-01-18 11:05:46 UTC (rev 3878)
@@ -68,8 +68,8 @@
guint retry_oper;
gint retry_oper_n;
- guint retry_opers;
- gint retry_opers_n;
+ guint retry_opern;
+ gint retry_opern_n;
guint retry_imsi;
gint retry_imsi_n;
@@ -110,18 +110,18 @@
static gboolean
retry_oper_get (MokoNetwork *network)
{
- g_debug ("Retrying operator retrieval (%d)", network->priv->retry_oper_n);
+ g_debug ("Retrying operator name retrieval (%d)", network->priv->retry_oper_n);
lgsm_oper_get (network->priv->handle);
return (--network->priv->retry_oper_n) ? TRUE : FALSE;
}
static gboolean
-retry_opers_get (MokoNetwork *network)
+retry_opern_get (MokoNetwork *network)
{
- g_debug ("Retrying operators list retrieval (%d)",
- network->priv->retry_opers_n);
- lgsm_opers_get (network->priv->handle);
- return (--network->priv->retry_opers_n) ? TRUE : FALSE;
+ g_debug ("Retrying operator number retrieval (%d)",
+ network->priv->retry_opern_n);
+ lgsm_oper_n_get (network->priv->handle);
+ return (--network->priv->retry_opern_n) ? TRUE : FALSE;
}
static gboolean
@@ -140,9 +140,9 @@
g_source_remove (network->priv->retry_oper);
network->priv->retry_oper = 0;
}
- if (network->priv->retry_opers) {
- g_source_remove (network->priv->retry_opers);
- network->priv->retry_opers = 0;
+ if (network->priv->retry_opern) {
+ g_source_remove (network->priv->retry_opern);
+ network->priv->retry_opern = 0;
}
if (network->priv->retry_imsi) {
g_source_remove (network->priv->retry_imsi);
@@ -209,13 +209,13 @@
listener);
if (type == GSMD_NETREG_REG_ROAMING) {
- /* Retrieve operator list to get current country code */
- /* FIXME: This blocks other gsmd calls... Error states? */
- lgsm_opers_get (handle);
+ /* Retrieve operator number to get current country code */
+ lgsm_oper_n_get (handle);
- if (priv->retry_opers_n)
- priv->retry_opers = g_timeout_add_seconds (RETRY_DELAY,
- (GSourceFunc)retry_opers_get,
+ if (priv->retry_opern_n)
+ priv->retry_opern = g_timeout_add_seconds (RETRY_DELAY,
+ (GSourceFunc)
+ retry_opern_get,
listener);
}
}
@@ -351,20 +351,14 @@
}
static void
-on_network_list (MokoListener *listener, struct lgsm_handle *handle,
- const struct gsmd_msg_oper *opers)
+on_network_number (MokoListener *listener, struct lgsm_handle *handle,
+ const gchar *number)
{
MokoNetwork *network = MOKO_NETWORK (listener);
MokoNetworkPrivate *priv = network->priv;
- for (; !opers->is_last; opers++) {
- if (opers->stat == GSMD_OPER_CURRENT) {
- g_free (priv->network_number);
- priv->network_number = g_strndup (opers->opname_num,
- sizeof(opers->opname_num));
- break;
- }
- }
+ g_free (priv->network_number);
+ priv->network_number = g_strdup (number);
}
static void
@@ -491,7 +485,7 @@
iface->on_network_registered = on_network_registered;
iface->on_pin_requested = on_pin_requested;
iface->on_network_name = on_network_name;
- iface->on_network_list = on_network_list;
+ iface->on_network_number = on_network_number;
iface->on_imsi = on_imsi;
iface->on_subscriber_number = on_subscriber_number;
}
@@ -624,11 +618,11 @@
MokoNetwork *network = moko_network_get_default ();
MokoNetworkPrivate *priv = network->priv;
- const char *oper = (char *) gmh + sizeof(*gmh);
+ const char *oper = (char *) gmh + sizeof(*gmh);
const struct gsmd_own_number *num = (struct gsmd_own_number *)
((void *) gmh + sizeof(*gmh));
- const struct gsmd_msg_oper *opers = (struct gsmd_msg_oper *)
- ((void *) gmh + sizeof(*gmh));
+ const struct gsmd_msg_oper *opers = (struct gsmd_msg_oper *)
+ ((void *) gmh + sizeof(*gmh));
switch (gmh->msg_subtype) {
case GSMD_NETWORK_GET_NUMBER :
@@ -648,13 +642,19 @@
priv->handle, oper);
}
break;
- case GSMD_NETWORK_OPER_LIST :
- if (priv->retry_opers) {
- g_source_remove (priv->retry_opers);
- priv->retry_opers = 0;
- priv->retry_opers_n = RETRY_MAX;
+ case GSMD_NETWORK_OPER_N_GET :
+ if (priv->retry_opern) {
+ g_source_remove (priv->retry_opern);
+ priv->retry_opern = 0;
+ priv->retry_opern_n = RETRY_MAX;
}
for (l = priv->listeners; l; l = l->next) {
+ moko_listener_on_network_number (MOKO_LISTENER (l->data),
+ priv->handle, oper);
+ }
+ break;
+ case GSMD_NETWORK_OPER_LIST :
+ for (l = priv->listeners; l; l = l->next) {
moko_listener_on_network_list (MOKO_LISTENER (l->data),
priv->handle, opers);
}
@@ -820,7 +820,7 @@
priv = network->priv = MOKO_NETWORK_GET_PRIVATE (network);
priv->retry_oper_n = RETRY_MAX;
- priv->retry_opers_n = RETRY_MAX;
+ priv->retry_opern_n = RETRY_MAX;
priv->retry_imsi_n = RETRY_MAX;
network_init_gsmd (network);
More information about the commitlog
mailing list