diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2016-02-15 00:12:11 +0100 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2016-02-15 13:25:42 +0100 |
commit | 5d8b26eeeb9d18ff6022998edd200aa480203d93 (patch) | |
tree | 32d70af48b19f80c66a9b6fb6a97aa13fac2f8eb | |
parent | eeb23637bd5a637e67955281a97223809023f23b (diff) |
huawei: ignore ^ECCLIST unsolicited messages
These messages list the emergency numbers reported by the network, we don't use
them yet.
E.g.:
^ECCLIST: 112,911\r\n
-rw-r--r-- | plugins/huawei/mm-broadband-modem-huawei.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/plugins/huawei/mm-broadband-modem-huawei.c b/plugins/huawei/mm-broadband-modem-huawei.c index 5a3187b5..0449bc58 100644 --- a/plugins/huawei/mm-broadband-modem-huawei.c +++ b/plugins/huawei/mm-broadband-modem-huawei.c @@ -117,6 +117,7 @@ struct _MMBroadbandModemHuaweiPrivate { GRegex *rfswitch_regex; GRegex *position_regex; GRegex *posend_regex; + GRegex *ecclist_regex; FeatureSupport ndisdup_support; FeatureSupport rfswitch_support; @@ -4057,6 +4058,10 @@ set_ignored_unsolicited_events_handlers (MMBroadbandModemHuawei *self) port, self->priv->posend_regex, NULL, NULL, NULL); + mm_port_serial_at_add_unsolicited_msg_handler ( + port, + self->priv->ecclist_regex, + NULL, NULL, NULL); } g_list_free_full (ports, (GDestroyNotify)g_object_unref); @@ -4173,6 +4178,8 @@ mm_broadband_modem_huawei_init (MMBroadbandModemHuawei *self) G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, NULL); self->priv->posend_regex = g_regex_new ("\\r\\n\\^POSEND:.+\\r\\n", G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, NULL); + self->priv->ecclist_regex = g_regex_new ("\\r\\n\\^ECCLIST:.+\\r\\n", + G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, NULL); /* Voice related regex * <CR><LF>^ORIG: <call_x>,<call_type><CR><LF> @@ -4240,6 +4247,7 @@ finalize (GObject *object) g_regex_unref (self->priv->rfswitch_regex); g_regex_unref (self->priv->position_regex); g_regex_unref (self->priv->posend_regex); + g_regex_unref (self->priv->ecclist_regex); g_regex_unref (self->priv->orig_regex); g_regex_unref (self->priv->conf_regex); g_regex_unref (self->priv->conn_regex); |