Introspection can't copy with a '.' in the value nicks, so just remove those.
Note: This could be considered an ABI break!
Bug #705641.
Patch based on a previous one from Christian Persch <chpe@gnome.org>.
Along with a new '--cdma-activate-manual-with-prl'.
These can be used to request CDMA Manual Activation, like:
$> sudo mmcli \
-m 0 \
--cdma-activate-manual="spc=123456,sid=ab,mdn=0123456789abcde,min=0123456789abcde"
Or:
$> sudo mmcli \
-m 0 \
--cdma-activate-manual="spc=123456,sid=ab,mdn=0123456789abcde,min=0123456789abcde" \
--cdma-activate-manual-with-prl=/path/to/my/prl.data
The format of CREG/CGREG/CEREG responses is not very precisely defined
in or strictly enforced by the 3GPP specifications. That leads to the
fact that some modems put leading zeros in integer type fields (e.g.
<n>, <stat>, <AcT>), and not all modems put double quotes around string
type fields (e.g. <lac>, <ci>) in those C*REG responses.
For example, 0001 can be a valid value for both <stat> and <lac>. The
original C*REG parsing code in ModemManager could potentially interpret
'+CREG: <stat>,<lac>,<ci>,<AcT>' as '+CREG: <n>,<stat>,<lac>,<ci>'. This
patch addresses this issue by refining the regular expressions returned
by mm_3gpp_creg_regex_get() with the following assumptions:
1. If a modem puts leading zeros in integer type fields, it puts double
quotes around string type fields.
2. If a modem omits double quotes around string type fields, it does not
put leading zeros in integer type fields.
This patch modifies the regular expressions for parsing ^RSSI, ^RSSILVL,
and ^HRSSILVL responses to handle any whitespace that is inserted
between the colon and the RSSI value.
The issue is identified by Dan Williams <dcbw@redhat.com>
When we're exposing not-yet-completed multipart messages, we need to provide a
correct value for the validity property, or gdbus may crash, see e.g.:
https://bugzilla.gnome.org/show_bug.cgi?id=704319
With a non-zero send delay, the communication over the ttyACM port of
the modem is not very stable when USB auto-suspend is enabled for the
modem. The send delay is not necessary and thus removed by this patch.
Ori Inbar <ori.inbar@altair-semi.com> reported the issue and suggested
this fix.
plugins/Makefile.am:375: warning: EXTRA_DIST multiply defined in condition TRUE ...
gtester.make:6: ... 'EXTRA_DIST' previously defined here
plugins/Makefile.am:1: 'gtester.make' included from here
This patch fixes the following incorrect conversions from double to gint32:
mm-broadband-modem-qmi.c:4785:27: error: implicit conversion from 'double' to 'gint32' (aka 'int')
changes value from 2.225073858507201E-308 to 0 [-Werror,-Wliteral-conversion]
gint32 bs_longitude = MM_LOCATION_LONGITUDE_UNKNOWN;
~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mm-broadband-modem-qmi.c:4786:26: error: implicit conversion from 'double' to 'gint32' (aka 'int')
changes value from 2.225073858507201E-308 to 0 [-Werror,-Wliteral-conversion]
gint32 bs_latitude = MM_LOCATION_LATITUDE_UNKNOWN;
~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
This patch fixes the following enumeration type mismatches:
mm-modem-helpers-qmi.c:980:12: error: implicit conversion from
enumeration type 'QmiNasRatModePreference' to different
enumeration type 'QmiNasRadioTechnologyPreference' [-Werror,-Wenum-conversion]
return qmi;
~~~~~~ ^~~
mm-modem-helpers-qmi.c:1082:12: error: implicit conversion from
enumeration type 'MMModemMode' to different
enumeration type 'QmiNasGsmWcdmaAcquisitionOrderPreference' [-Werror,-Wenum-conversion]
return MM_MODEM_MODE_NONE;
~~~~~~ ^~~~~~~~~~~~~~~~~~
mm-modem-helpers-qmi.c:1096:16: error: implicit conversion from
enumeration type 'QmiNasRegistrationState' to different
enumeration type 'MMModem3gppRegistrationState' [-Werror,-Wenum-conversion]
return QMI_NAS_REGISTRATION_STATE_NOT_REGISTERED;
~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Prints out a warning if ioctl(TIOCSSERIAL) fails to set closing_wait to
none. This helps debug issues when a serial driver does not support or
properly handle closing_wait, which may cause closing of the serial port
to block.
This patch fixes a potential crash when
MMIfaceModem::load_current_bands_ready() dereferences a NULL GError
pointer, which happens when the altair-lte plugin fails to load the
current bands but does not propagate the error. It also fixes a similar
issue with the plugin fails to load the supported bands, even though
MMIfaceModem::load_supported_bands_ready() checks for a NULL GError
pointer.
Icera-based Nokia modems may reply correctly to the Icera probing only in some
AT ports, not in all. In order to handle this situation we override the final
plugin selected to be the Icera-based one if we find that the mismatched plugins
have the 'icera-allowed' and 'icera-forbidden' filters.
https://bugzilla.gnome.org/show_bug.cgi?id=703022