aboutsummaryrefslogtreecommitdiff
path: root/src/mm-util.c
diff options
context:
space:
mode:
authorTambet Ingo <tambet@gmail.com>2009-02-18 14:48:08 +0200
committerTambet Ingo <tambet@gmail.com>2009-02-18 14:48:08 +0200
commit1215bd6a9d607018e0af7ad7afa85bc35cb713a0 (patch)
treecc33208fdbd4de15703fe8fefbd578f2d68908be /src/mm-util.c
parent13facad4fa3be24d07768892135caebd88e95fcc (diff)
Rework unsolicited message handling.
Implement registration using unsolicited messages for generic GSM class (which is disabled by default, HSO and Huawei plugins enable it). Modify all GSM modem subclasses that used unsolicited messages to use the new method.
Diffstat (limited to 'src/mm-util.c')
-rw-r--r--src/mm-util.c57
1 files changed, 0 insertions, 57 deletions
diff --git a/src/mm-util.c b/src/mm-util.c
deleted file mode 100644
index 46badcf3..00000000
--- a/src/mm-util.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-
-#include "mm-util.h"
-
-static gboolean
-remove_eval_cb (const GMatchInfo *match_info,
- GString *result,
- gpointer user_data)
-{
- int *result_len = (int *) user_data;
- int start;
- int end;
-
- if (g_match_info_fetch_pos (match_info, 0, &start, &end))
- *result_len -= (end - start);
-
- return FALSE;
-}
-
-void
-mm_util_strip_string (GString *string,
- GRegex *regex,
- MMUtilStripFn callback,
- gpointer user_data)
-{
- GMatchInfo *match_info;
- gboolean matches;
- char *str;
-
- g_return_if_fail (string != NULL);
- g_return_if_fail (regex != NULL);
-
- matches = g_regex_match_full (regex, string->str, string->len, 0, 0, &match_info, NULL);
- if (callback) {
- while (g_match_info_matches (match_info)) {
- str = g_match_info_fetch (match_info, 1);
- callback (str, user_data);
- g_free (str);
-
- g_match_info_next (match_info, NULL);
- }
- }
-
- g_match_info_free (match_info);
-
- if (matches) {
- /* Remove matches */
- int result_len = string->len;
-
- str = g_regex_replace_eval (regex, string->str, string->len, 0, 0,
- remove_eval_cb, &result_len, NULL);
-
- g_string_truncate (string, 0);
- g_string_append_len (string, str, result_len);
- g_free (str);
- }
-}