aboutsummaryrefslogtreecommitdiff
path: root/src/mm-modem-helpers.c
AgeCommit message (Collapse)Author
2013-03-27broadband-modem: parse +GSN response for IMEI, MEID, and ESN (bgo #696596)Dan Williams
+GSN response differs widely between modems. Some prefix the MEID and/or ESN with 0x, some have leading zeros, some return the MEID and the ESN, and some append the serial number to the end of the IMEI. Handle that and make the ESN, MEID, IMEI, and EquipmentIdentifier parsing consistent.
2013-02-15modem: use +CEREG to determine EPS network registration statusBen Chan
This patch adds the support for solicited/unsolicited EPS network registration status via AT+CEREG, which is configurable via the 'iface-modem-3gpp-eps-network-supported' property of the MMIfaceModem3gpp interface and is disabled by default.
2012-12-05modem-helpers: add EVDO rev. B and "CDMA2000 1X" to access tech helperDan Williams
Some Huawei modems report these, and we may use the generic helper in the future.
2012-11-27core: fix possible crash in g_utf8_validate()Jiří Klimeš
We can skip additional UTF-8 validity check when parsing operator. mm_charset_take_and_convert_to_utf8() already does a UTF-8 validity check internally before returning the string, so it's pointless to do a new one on the returned string. Plus, mm_charset_take_and_convert_to_utf8() may really return NULL, which would end up in segfaulting as g_utf8_validate() expects always a non-NULL string. Based on 219424a6e2d017491a05ecbed661bccde3f991ef (MM_06 branch)
2012-10-22iface-modem: always ensure that current bands is a subset of supported bandsAleksander Morgado
In QMI modems the logic behind supported and current bands is completely separated in different services (DMS vs NAS). Actually, the list reported by NAS as current band preferences seems to include more values than the ones reported by DMS as supported bands (e.g. CDMA bands are reported even if the firmware image is GSM/HSPA only). So, just clean up the list of current preferred bands so that no more than those given as supported is used.
2012-10-04libmm-glib: remove the `libmm-common.h' headerAleksander Morgado
Both the ModemManager daemon and the mmcli will now include `libmm-glib.h' only. We also handle two new special `_LIBMM_INSIDE_MM' and `LIBMM_INSIDE_MMCLI' symbols, which if included before the `libmm-glib.h' library allow us to: * Don't include the libmm-glib high level API in the ModemManager daemon, as the object names would clash with those in the core. * Define some of the methods of helper objects to be included only if compiling ModemManager daemon or the mmcli.
2012-09-20modem-helpers: handle the case when operator name is "Unknown"Ben Chan
Some modems report "Unknown" as the operator name when failed to obtain the actual value: --> 'AT+COPS=3,0;+COPS?<CR>' <-- '<CR><LF>+COPS: 0,0,"Unknown",0<CR><LF><CR><LF>OK<CR><LF>' This patch prevents "Unknown" from being treated as a valid operator name.
2012-09-19broadband-modem: skip +CGMM: prefix when loading device modelAleksander Morgado
Some devices, e.g. ZTE MF820D, seem to prefix the `AT+CGMM?' response with the `+CGMM:' string, resulting in the following model string being loaded: model: '+CGMM: "MF820D"' Avoid this by: 1) Removing the expected prefixes. 2) Unquoting the resulting string. Reported by: Marius Kotsbak <marius.kotsbak@gmail.com>
2012-09-14broadband-modem: process not-stored SMS part indicationsAleksander Morgado
2012-09-02modem-helpers: recognize "4G" as LTE access technologyMarius B. Kotsbak
Some modems (e.g. ZTE MF 820D) report LTE access technology as "4G": +ZPAS: "4G","PS_ONLY"
2012-08-31modem-helpers: new helper to convert from netmask string to CIDRAleksander Morgado
2012-08-29modem-helpers: new method to validate and/or parse MCC/MNC operator ID stringAleksander Morgado
2012-08-23modem-helpers: ERI parser is generic enough, not just for !SPERIAleksander Morgado
2012-08-22api,dbus: 'ip-type' property now given as a MMBearerIpFamily (u)Aleksander Morgado
Instead of using a predefined set of string values for 'ip-type' in Modem.CreateBearer() and Simple.Connect(), we'll use an enumeration. The implementation will then need to convert the requested IP family type to e.g. the correct PDP type in 3GPP modems. This change also consolidates the use of enums in dictionary properties when possible to do so, as with the Rm Protocol.
2012-05-04modem-helpers: recognize 3GPP2 access tech strings tooDan Williams
Various Gobi-based devices (USB551L, probably Gobis too) can report EVDO and 1X as the current RAT from CNTI so parse that here too.
2012-04-13helpers: adjust parsing of +CNUM response to permit spaces in the ↵Nathan Williams
alphanumeric descriptor. This permits matching a response such as '"Line 1","+19999999999",145', which previously did not match. Change-Id: I666af8774507c6c3b3e214b820449542065dd8b4
2012-03-18libmm-common: new common uint/int/str parsersAleksander Morgado
2012-03-16modem-helpers: refactor and reorganize sourcesAleksander Morgado
2012-03-16modem-helpers: new +CNUM response parser and testsAleksander Morgado
2012-03-16modem-helpers: port facility lock related helpers to use `MMModemFacility' enumsAleksander Morgado
2012-03-16modem-helpers: temporarily disable facility-related helpersAleksander Morgado
2012-03-16modem-helpers: updated the string to access technology converterAleksander Morgado
We can now return a mask of flags specifying more than one access technology, and therefore the order is not really important any more, unless for special cases like looking for substrings of valid expected strings (e.g "HSPA" and "HSPA+"). Also, add "LTE" in the list of expected strings.
2012-03-15modem-helpers: allow leading zeroes in CREG/CGREG responsesAleksander Morgado
2012-03-15modem-helpers: new CPMS format result parserAleksander Morgado
2012-03-15modem-helpers: use new common charset converter when parsing operator name/codeAleksander Morgado
This is the port of commit 4af8483ae4e32ca3d815f14aaf5f012b0ed98eed into the 06-api branch.
2012-03-15modem-helpers: new common CMTI regex getterAleksander Morgado
2012-03-15modem-helpers: allow strings instead of indexes in CIEV unsolicited eventsAleksander Morgado
Some modems will report strings instead of indicator indexes, like: +CIEV: roam,1 So allow non-integer indicators.
2012-03-15modem-helpers: update the regex for the AT+CIND=? responseAleksander Morgado
Cinterion modems seem to include "signal",(0-7,99) We just get rid of the ',99' part.
2012-03-15modem-helpers: new CMGF format query result parserAleksander Morgado
2012-03-15modem-helpers: new method to get common CUSD regexAleksander Morgado
2012-03-15core: use new enums/flags string getters/buildersAleksander Morgado
2012-03-15bearer-cdma: implement bearer connection and disconnectionAleksander Morgado
2012-03-15bearer-cdma: when specific RM protocol given to be used, ensure it is supportedAleksander Morgado
If the requested RM protocol is not supported, the CDMA Bearer creation will fail.
2012-03-15core: use g_list_free_full() when possibleAleksander Morgado
2012-03-15modem-helpers: new CDMA helper parsersAleksander Morgado
2012-03-15modem-helpers: new common regex for CIEV unsolicited messagesAleksander Morgado
2012-03-15modem-helpers: MMModemAccessTechnology is flags, not enumAleksander Morgado
2012-03-15api,enums: renamed `MMModemAccessTech' to `MMModemAccessTechnology'Aleksander Morgado
This one was the last enum without full name.
2012-03-15modem-helpers: renamed 3GPP registration related helpers with `mm_3gpp' prefixAleksander Morgado
2012-03-15core,libmm-glib: include ony `libmm-common.h'Aleksander Morgado
Don't include one by one all the headers from libmm-common, just include the global `libmm-common.h' which includes all the others.
2012-03-15helpers: implement CGDCONT reply parsingAleksander Morgado
New method to parse the PDP query reply, and build a list of structs with the found info.
2012-03-15modem-helpers: new helper to count number of bits set in a bitmaskAleksander Morgado
2012-03-15modem-helpers: provide list of scanned networks in a list of structsAleksander Morgado
We provide the result of the +COPS=? parsing in a GList of MM3gppNetworkInfo structures. We avoid the previous hash table, or using a dictionary, as a list of structs with a predefined set of elements, which should be easier for plugins wanting to make their own version
2012-03-15broadband-modem: implement Operator Code and Name loadingAleksander Morgado
2012-03-15modem-helpers: use MMModemAccessTech when parsing C(G)REG responsesAleksander Morgado
2012-03-15modem-helpers: use MMModem3gppRegistrationState when parsing C(G)REG responsesAleksander Morgado
2012-03-15core: start using our newly defined errorsAleksander Morgado
2012-02-29modem-helpers: plug memleakAleksander Morgado
g_match_info_fetch() returns always a heap-allocated string which should be freed by the caller.
2012-02-17gsm: allow leading zeroes in numbers in CREG/CGREG responsesAleksander Morgado
2011-12-30modem-helpers: plug a leak when parsing CREG responsesAleksander Morgado