aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-08-09libmm-glib,profile-manager: fix memory leaks when listing connection profilesLouis-Alexis Eyraud
This commit fixes memory leaks that occur when invoking mm_modem_3gpp_profile_manager_list function. When processing the connection profile data retrieved from dbus in build_list_results function, the iterator data (of GVariant type) were not properly freed after use in the while loop. ==7903== 2,697 (144 direct, 2,553 indirect) bytes in 3 blocks are definitely lost in loss record 2,525 of 2,538 ==7903== at 0x484086F: malloc (vg_replace_malloc.c:381) ==7903== by 0x4A13938: g_malloc (gmem.c:106) ==7903== by 0x4A2B1F4: g_slice_alloc (gslice.c:1069) ==7903== by 0x4A51322: UnknownInlinedFun (gvariant-core.c:486) ==7903== by 0x4A51322: UnknownInlinedFun (gvariant-core.c:624) ==7903== by 0x4A51322: g_variant_builder_end (gvariant.c:3718) ==7903== by 0x4C2FEC1: parse_value_from_blob.isra.0 (gdbusmessage.c:1866) ==7903== by 0x4C2FE8F: parse_value_from_blob.isra.0 (gdbusmessage.c:1766) ==7903== by 0x4C2FF37: parse_value_from_blob.isra.0 (gdbusmessage.c:1850) ==7903== by 0x4BF93A7: g_dbus_message_new_from_blob (gdbusmessage.c:2226) ==7903== by 0x4C09334: _g_dbus_worker_do_read_cb (gdbusprivate.c:750) ==7903== by 0x4B9EA79: g_task_return_now (gtask.c:1219) ==7903== by 0x4B9EABC: complete_in_idle_cb (gtask.c:1233) ==7903== by 0x4A0774A: g_idle_dispatch (gmain.c:5848) Signed-off-by: Louis-Alexis Eyraud <louis-alexis.eyraud@unabiz.com>
2022-08-09sleep-monitor-powerd: remove unused variablesAleksander Morgado
mm-sleep-monitor-powerd.c: In function ‘signal_cb’: mm-sleep-monitor-powerd.c:81:14: error: unused variable ‘is_about_to_suspend’ [-Werror=unused-variable] 81 | gboolean is_about_to_suspend; | ^~~~~~~~~~~~~~~~~~~ mm-sleep-monitor-powerd.c: In function ‘on_pd_proxy_acquired’: mm-sleep-monitor-powerd.c:100:11: error: unused variable ‘owner’ [-Werror=unused-variable] 100 | char *owner; | ^~~~~
2022-08-09build,autotools: print powerd suspend/resume status in configure outputAleksander Morgado
2022-08-09ci: fix systemd suspend-resume enabling in default testAleksander Morgado
2022-08-09ci: new test to build with powerd suspend-resume supportAleksander Morgado
2022-08-09ci: new test to build without suspend-resume supportAleksander Morgado
2022-08-09ci: remove check for WITH_NEWEST_QMI_COMMANDSAleksander Morgado
The newest QMI commands are already builtin the default compilation of ModemManager.
2022-08-09ci: move no-tests check before the default onesAleksander Morgado
2022-08-09mm-sim-mbim: Fix compile failure if WITH_SUSPEND_RESUME is not setPavan Holla
Fixes 86f6d3351351f7143a7f1c5fb90ddb465089ac69
2022-08-05core, log: make libraries logging use the MM level and formatAleksander Morgado
The log level of the libraries was not honoring the log level configured in MM, so we would see debug messages reported even if the default log level configured was INFO or MSG. The format of the logs emitted by the libraries was also not following the format of the rest of MM logs, e.g. they would not include timing info in the logs which would make it hard to follow certain event transitions. Make the libraries logging use the ModemManager logging method, to fix all those issues.
2022-08-05core,log: minor coding style changesAleksander Morgado
2022-08-04broadband-modem-mbim: SIM slots ptr array should have GDestroyNotifyAleksander Morgado
The SIM slots ptr array should have a proper GDestroyNotify, so that whenever the array is unref-ed as part of the modem disposal logic, the SIM objects (and the modem object references they keep) are also unref-ed. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/571
2022-08-04shared-qmi: minor rework SetPacketServiceState()Aleksander Morgado
Port to using g_autoptr() so that we avoid the gotos.
2022-08-04iface-modem-3gpp: update packet service state in the interfaceAleksander Morgado
The skeleton property will be update automatically as they're bound.
2022-08-04iface-modem-simple: wait for packet service state is 3GPP specificAleksander Morgado
2022-08-04broadband-modem-qmi: force IDLE state if PS registered but DSD RAT unavailableAleksander Morgado
We provide a consolidated method to update the PS/EPS/5GS registration states, based on the actual state reported via NAS and the availabiity or not of the DSD data RAT. On this consolidated method, we now force the IDLE state for every case where it would have been HOME/ROAMING if the data RAT reported via the DSD service is unknown. This includes not only transitions into the HOME/ROAMING state, but also transitions to unknown data RAT.
2022-08-04iface-modem-simple: wait for packet service 'attach' state in ConnectionStepAkash Aggarwal
2022-08-04broadband-modem-qmi,mm-shared-qmi: implement support for ↵Akash Aggarwal
'SetPacketServiceState()'
2022-08-04broadband-modem-qmi: Move to "registered" state based on DSD System Status ↵Akash Aggarwal
for PS domain "registered" state should not wholly depend on the PS/EPS/5GS domain state reported by NAS. It should listen to DSD system status for availabilty of data network at modem before moving to 'registered' state".
2022-08-04broadband-modem: SIM swap check should consider errors loading as no SIMAleksander Morgado
A failure loading IMSI or ICCID (unless for the UNSUPPORTED case) could be an indication that there is no SIM. Ideally, the logic checking if a SIM swap happened should have checked first if there is a SIM card in the slot, and only if there is one go on to try to load IMSI or ICCID.
2022-08-01sim-mbim: clear cached subscriber info on modem sync requestAleksander Morgado
2022-08-01broadband-modem: notify when a sync is needed after a suspend/resumeAleksander Morgado
Modem/SIM implementations that keep cached info that is not supposed to change during runtime of a modem may need to be notified about when a suspend/resume has happened, so that they can clear and reload the internally cached data.
2022-07-29iface-modem: reordering of ready methods in sync()Aleksander Morgado
2022-07-29broadband-modem: quick sync the Modem interface also if disabledAleksander Morgado
If the modem was in disabled state, we still want to sync the Modem interface, among other things to make sure no SIM event happened during the system suspension. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/605
2022-07-27po: add Georgian translationNorwayFun
2022-07-27mm-enums: Added E-UTRAN Band 85 to MMModemBand.Alexey Orishko
LTE Band 85 is supported by modems based on Qualcomm 9205 chipset.
2022-07-25helpers-mbim: report correct network availability from mbim bitmaskAleksander Morgado
MbimProviderState is a bitset, so don't try to match exact values in a switch statement when converting to MMModem3gppNetworkAvailability. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/524
2022-07-25ci: build without testcasesDylan Van Assche
Verify if ModemManager builds with everything disabled
2022-07-25build: make tests optionalDylan Van Assche
Add a meson option -Dtests and --without-tests automake option to disable the compilation of all available testcases. This is useful for compiling projects with Flatpak such as GNOME Control Center which disables all possible integrations since they only need the DBus part of ModemManager. Contributes to https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1392
2022-07-24base-sms: don't clear parts on send/store errorAleksander Morgado
The part generation logic is independent to whether the SMS send or store operation failed, so just avoid doing the parts cleanup. E.g. if we created the parts for store() but storing failed, the same parts could still be used for send() successfully.
2022-07-24base-sms: fix segfault when storing already sent messagesAleksander Morgado
The internal list of parts in the base SMS object is created either when the message is sent or when the message is stored. The daemon should not expect the list of SMS parts to be empty upon a store() operation requested via DBus, as the list of parts may have already been created during send(). Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/598
2022-07-20sierra: disable CPOL in the GL7600Dan Carpenter
Similar to the EM7345 (also from Sierra Wireless), the GL7600 becomes unresponsive after using "AT+CPOL?". Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/595
2022-07-16broadband-modem: don't make fatal SIM swap check of IMSI or ICCIDAleksander Morgado
If the SIM swap check using ICCID or IMSI fail, don't completely fail the operation, as the other one may still succeed. Fail the operation only if both checks failed.
2022-07-16broadband-modem: plug leaks in sim_swap_context_free()Aleksander Morgado
2022-07-16shared-qmi: improve logging of steps in SIM hot swap setupAleksander Morgado
2022-07-16shared-qmi: only transfer state to priv info if SIM hotswap setup succeedsAleksander Morgado
Don't transfer state to the private info until we know the operation has fully succeeded.
2022-07-16shared-qmi: move indication callbacks out of the SIM hot swap setupAleksander Morgado
2022-07-16shared-qmi: return error if none of the methods succeeded in SIM hot swap setupAleksander Morgado
2022-07-16shared-qmi: avoid jumps in the SIM hot swap setup state machineAleksander Morgado
Always transition to the next step, and decide what to do based on the state tracked by the previously run steps.
2022-07-16shared-qmi: make refresh all non-fatal during SIM hot swap setupAleksander Morgado
If for any reason "Refresh all" fails, don't return an error, as we may have already configured SIM slot status correctly.
2022-07-16shared-qmi: add slot status indication in its own step during SIM hot swap setupAleksander Morgado
2022-07-16shared-qmi: add slot status check in its own step during SIM hot swap setupAleksander Morgado
Also, don't make the "Get Slot Status" operation fatal; just go on assuming that the slot status indications are unsupported.
2022-07-16shared-qmi: new step in SIM hot swap setup to connect to refresh signalAleksander Morgado
Instead of connecting to the signal in multiple places, do it in one single place in the logic.
2022-07-16mm-iface-modem,mm-broadband-modem,mm-shared-qmi: support SIM IMSI switchPrakash Pabba
It is possible that SIM IMSI might change in roaming conditions for a sim. Register for UIM refresh indication always and reprobe if ICCID or IMSI changes for QMI modem.
2022-07-16api,tags: fix typo in ID_MM_PORT_TYPE_AT_GPS_CONTROL docAleksander Morgado
2022-07-16docs: add missing reference to ID_MM_PORT_TYPE_AT_GPS_CONTROLAleksander Morgado
2022-07-16po: update after source file renameAleksander Morgado
2022-07-16mm-call-qmi: implement DTMF supportDylan Van Assche
Overwrite the base class with a QMI implementation to send DTMF characters during a call. Uses the continuous DTMF QMI messages to support both CDMA and 3GPP networks.
2022-07-16mm-call-qmi: drop unnecessary white spaceDylan Van Assche
2022-07-16mm-call-qmi: fix comment consistencyDylan Van Assche
Do not use caps for 'call'