summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-02-15build: post-release version bump to 1.24.17qmi-1-24Aleksander Morgado1-1/+1
2021-02-15release: bump version to 1.24.161.24.16Aleksander Morgado1-1/+1
2021-02-15NEWS: update for 1.24.16Aleksander Morgado1-0/+9
2021-02-15libqmi-glib,endpoint-qmux: plug QmiClientCtl leakAleksander Morgado1-0/+1
This is a severe leak when using qmicli operations, as e.g. in OpenWRT based setups. It's shown as still reachable here, because it's really not a true leak as in we can no longer free it; there's some pointer to the objects around but we never free them, so the memory grows and keeps growing all the time. ==6589== 506,784 bytes in 10,558 blocks are still reachable in loss record 1,378 of 1,378 ==6589== at 0x4E84925: g_type_create_instance (in /usr/lib/libgobject-2.0.so.0.6600.7) ==6589== by 0x4E7501D: ??? (in /usr/lib/libgobject-2.0.so.0.6600.7) ==6589== by 0x4E768C3: g_object_new_valist (in /usr/lib/libgobject-2.0.so.0.6600.7) ==6589== by 0x4E76C39: g_object_new (in /usr/lib/libgobject-2.0.so.0.6600.7) ==6589== by 0x4911E39: client_ctl_setup (qmi-device.c:3009) ==6589== by 0x4911FA2: check_type_async_ready (qmi-device.c:3047) ==6589== by 0x4D39173: ??? (in /usr/lib/libgio-2.0.so.0.6600.7) ==6589== by 0x4D3D6E8: ??? (in /usr/lib/libgio-2.0.so.0.6600.7) ==6589== by 0x4916FEB: query_info_async_ready (qmi-file.c:105) ==6589== by 0x4D39173: ??? (in /usr/lib/libgio-2.0.so.0.6600.7) ==6589== by 0x4D391A8: ??? (in /usr/lib/libgio-2.0.so.0.6600.7) ==6589== by 0x4F01B83: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.6600.7) ==6589== ==6589== LEAK SUMMARY: ==6589== definitely lost: 0 bytes in 0 blocks ==6589== indirectly lost: 0 bytes in 0 blocks ==6589== possibly lost: 2,424 bytes in 25 blocks ==6589== still reachable: 1,702,273 bytes in 33,071 blocks ==6589== of which reachable via heuristic: ==6589== length64 : 1,384 bytes in 28 blocks ==6589== newarray : 1,776 bytes in 31 blocks ==6589== suppressed: 0 bytes in 0 blocks Fixes https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/issues/39 (cherry picked from commit 36a990794307e47806a6be2f97e3eabde220640b)
2020-06-05libqmi-glib,device: endpoint is cleared when device is closedAleksander Morgado1-1/+1
#0 qmi_endpoint_is_open (self=0x0) at ../../../libqmi-1.24.8/src/libqmi-glib/qmi-endpoint.c:180 #1 0x00007ffff7caf275 in qmi_device_command_abortable (self=self@entry=0x7fffe8006f00, message=message@entry=0x5555557e7330, message_context=message_context@entry=0x0, timeout=timeout@entry=30, abort_build_request_fn=abort_build_request_fn@entry=0x0, abort_parse_response_fn=abort_parse_response_fn@entry=0x0, abort_user_data=0x0, abort_user_data_free=0x0, cancellable=0x5555557e8a50, callback=0x7ffff7caf620 <transaction_abort_ready>, user_data=0x1120016) at ../../../libqmi-1.24.8/src/libqmi-glib/qmi-device.c:2301 #2 0x00007ffff7caf87b in qmi_device_command_full (self=self@entry=0x7fffe8006f00, message=message@entry=0x5555557e7330, message_context=message_context@entry=0x0, timeout=timeout@entry=30, cancellable=<optimized out>, callback=callback@entry=0x7ffff7caf620 <transaction_abort_ready>, user_data=0x1120016) at ../../../libqmi-1.24.8/src/libqmi-glib/qmi-device.c:2375 #3 0x00007ffff7caf966 in transaction_abort (self=0x7fffe8006f00, tr=tr@entry=0x7fffe0009800, abort_error_take=0x5555557fc3b0) at ../../../libqmi-1.24.8/src/libqmi-glib/qmi-device.c:361 #4 0x00007ffff7cafaf5 in transaction_timed_out (ctx=0x5555557b8690, ctx@entry=<error reading variable: value has been optimized out>) at ../../../libqmi-1.24.8/src/libqmi-glib/qmi-device.c:385 #5 0x00007ffff7809f94 in g_timeout_dispatch (source=0x5555558116b0, callback=<optimized out>, user_data=<optimized out>) at ../glib-2.60.7/glib/gmain.c:4678 #6 0x00007ffff78094ef in g_main_dispatch (context=0x55555570c670) at ../glib-2.60.7/glib/gmain.c:3189 #7 g_main_context_dispatch (context=context@entry=0x55555570c670) at ../glib-2.60.7/glib/gmain.c:3854 #8 0x00007ffff78098c0 in g_main_context_iterate (context=0x55555570c670, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib-2.60.7/glib/gmain.c:3927 #9 0x00007ffff7809bd3 in g_main_loop_run (loop=0x5555557233e0) at ../glib-2.60.7/glib/gmain.c:4123 #10 0x000055555559bbc0 in main (argc=<optimized out>, argv=<optimized out>) at ../../ModemManager-1.12.8/src/main.c:206 Fixes https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/issues/37 (cherry picked from commit ee61c03a76bf390693f04e8a5559c04ad87dac18)
2020-05-30build: post-release version to 1.24.15Aleksander Morgado1-1/+1
2020-05-30release: bump version to 1.24.141.24.14Aleksander Morgado1-1/+1
2020-05-30NEWS: update for 1.24.14Aleksander Morgado1-0/+9
2020-05-27libqmi-glib,utils: skip trailing NUL bytes from UTF-8 validationAleksander Morgado2-4/+46
Otherwise, --dms-swi-get-current-firmware will fail to report the correct strings: # qmicli -d /dev/cdc-wdm0 -p --dms-swi-get-current-firmware [/dev/cdc-wdm0] Successfully retrieved current firmware: Model: M??!S& Boot version: S.%J?k??C>A_ceL?.?Lq$?? AMSS version: S.%J?k??C>A_ceL?.?Lq$?? SKU ID: ???6 Package ID: unknown Carrier ID: 1 ?????? Config version: 0?Hq$f (cherry picked from commit e4052d52db2aead068da95a1e5906ff6155e2265)
2020-05-09qmicli,loc: avoid using g_autofree in 1.24 branchAleksander Morgado1-1/+2
2020-05-09build: post-release version bump to 1.24.13Aleksander Morgado1-1/+1
2020-05-09release: bump version to 1.24.121.24.12Aleksander Morgado1-1/+1
2020-05-09NEWS: update for 1.24.12Aleksander Morgado1-0/+17
2020-05-09libqmi-glib,proxy: forward broadcast messages to all clients of the serviceAleksander Morgado1-4/+3
Reported by Eric Caruso <ejcaruso@chromium.org> https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/merge_requests/116#note_492339 (cherry picked from commit 088997b6e407f539f1e1ba6afb7ffa62f83c8958)
2020-05-09qmicli,loc: fix printing sensor data usageAleksander Morgado1-3/+6
qmicli-loc.c: In function 'position_report_received': qmicli-loc.c:563:84: error: implicit conversion from 'QmiLocSensorDataUsage' to 'QmiLocReliability' [-Werror=enum-conversion] 563 | g_print (" sensor data usage: %s\n", qmi_loc_reliability_get_string (sensor_data_usage)); | ^~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors (cherry picked from commit f44a09b3fd25df0c6131ff47a08a9d865ec5aa0d)
2020-05-09qmicli,loc: don't use g_printerr() for success messagesAleksander Morgado1-2/+2
(cherry picked from commit 0164f6bfe7ece9d1fb485739e593f640b66be26f)
2020-05-09qmicli,loc: cleanup signal handler for the delete assistance data actionAleksander Morgado1-0/+3
(cherry picked from commit 597a0a011a49de21a6b1cb85ecc0d65ee401851d)
2020-05-09libqmi-glib,proxy: register indication/removal handlers for all clientsEric Caruso1-10/+17
Previously we were not registering these handlers if the client was using an already-constructed device. (cherry picked from commit f597b3a6299c3626f216feee0cf9a74376b7f540)
2020-04-15libqmi-glib,utils: consider CR and LF as valid string charactersAleksander Morgado2-5/+32
Otherwise, NMEA strings may be processed in a very bad way: TLV: <<<<<< type = "NMEA String" (0x01) <<<<<< length = 25 <<<<<< value = 24:47:50:52:4D:43:2C:2C:56:2C:2C:2C:2C:2C:2C:2C:2C:2C:2C:4E:2A:35:33:0D:0A <<<<<< translated = ¤ÅAΦUiΔΠ,,1aBéØΠ,X0aBEΓΩ5f4P (cherry picked from commit 05159e1a17e9d9a8812c59d00213df615164fd7f)
2020-04-15libqmi-glib,proxy: fix loss of last requests on client hangupTeijo Kinnunen1-26/+23
If a client sends requests just before the client disconnects, these may get lost. The reason is that connection_readable_cb() may be called with both G_IO_IN and G_IO_HUP set; in that case the hangup is processed immediately and received requests are lost. This commit changes behaviour so that incoming data is processed first (if available) before disconnecting from client. In practice, this problem caused CID leaking with ModemManager; the last Release CID requests could get lost when ModemManager was closing down the QMI port. (cherry picked from commit 16383670dcb471d6a5b802a9cca1e2a24eb86de5)
2020-04-11libqmi-glib,message: fixed sized string reading fix in 1.24.12 alreadyAleksander Morgado1-3/+3
2020-04-11libqmi-glib,message: fixed sized strings may be suffixed with 0xFFAleksander Morgado3-11/+183
If the contents of a fixed sized string are shorter than the field size (e.g. a 2-digit MNC in a 3-digit string), a 0xFF filled suffix will be included. Since the 0xFF suffix makes the full string not UTF-8 valid, the method that reads the fixed sized strings is updated to allow returning all the valid UTF-8 characters found at the beginning of the string, if any, instead of returning an error. Fixes https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/issues/33 (cherry picked from commit 86ca463762e74660491562dc1ffbe1bd4f1106c1)
2020-04-10build: post-release version bump to 1.24.11Aleksander Morgado1-1/+1
2020-04-10release: bump version to 1.24.101.24.10Aleksander Morgado1-1/+1
2020-04-10NEWS: update for 1.24.10Aleksander Morgado1-0/+17
2020-04-10libqmi-glib,wds: new verbose call end reasons in 1.24.10 alreadyAleksander Morgado2-106/+106
2020-04-10libqmi-glib,wds: add new 'ipv6' verbose call end reasonsAleksander Morgado1-1/+3
(cherry picked from commit 2712401e63030f63fa1aa507b566f5081ab1baaa)
2020-04-10libqmi-glib,wds: add new 'ppp' verbose call end reasonsAleksander Morgado1-2/+5
(cherry picked from commit ca926b1a6d8b99c25f39d3db9cf35556a0562170)
2020-04-10libqmi-glib,wds: add new '3gpp' verbose call end reasonsAleksander Morgado1-2/+4
(cherry picked from commit 7ffa0697259a81d2809ae0d8714f5887a9336df4)
2020-04-10libqmi-glib,wds: add new 'cm' verbose call end reasonsAleksander Morgado1-3/+154
(cherry picked from commit 60d9fff1f162f4a6b5bbbceccbe42b3cb7b75806)
2020-04-10libqmi-glib,wds: rename CM_CONFIGURATION_FAILED to CM_CONFERENCE_FAILEDAleksander Morgado3-2/+18
And provide a compat symbol to keep API/ABI. (cherry picked from commit b96ee9a3b42b890f47460778479a2b39cc02c261)
2020-04-10libqmi-glib,compat: new QmiDeprecatedProtocolError helperAleksander Morgado2-1/+6
To get deprecation warnings when using QMI_PROTOCOL_ERROR_QOS_UNAVAILABLE. (cherry picked from commit 2c2ae6abbf3f46c21830be06b5041860105c6e9f)
2020-04-10libqmi-glib,wds: add new 'internal' verbose call end reasonsAleksander Morgado1-0/+52
(cherry picked from commit ea780509fedd659728d656534ab031777b5f3579)
2020-04-10libqmi-glib,test-message: plug memleakAleksander Morgado1-0/+1
For a clean valgrind report... =331363== 56 (40 direct, 16 indirect) bytes in 1 blocks are definitely lost in loss record 226 of 347 ==331363== at 0x483977F: malloc (vg_replace_malloc.c:309) ==331363== by 0x4ECDCE9: g_malloc (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x4EB6733: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x4F03104: g_array_sized_new (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x10AF4F: test_message_new_request_from_data (test-message.c:292) ==331363== by 0x4EB1DEE: ??? (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x4EB1B7C: ??? (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x4EB1B7C: ??? (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x4EB1B7C: ??? (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x4EB22F9: g_test_run_suite (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x4EB2312: g_test_run (in /usr/lib/libglib-2.0.so.0.6400.0) ==331363== by 0x11475B: main (test-message.c:1590) (cherry picked from commit e85dae56228c92f3efa82a7c588210b23987b954)
2020-03-23qmi-device: detect rpmsg control portsLuca Weiss1-4/+12
and adjust the path to check for smdpkt nodes
2020-03-23qmi-device: support and detect smdpkt managed QMI control portsAleksander Morgado4-47/+106
Fixes https://gitlab.freedesktop.org/mobile-broadband/libqmi/issues/20
2020-03-20qmicli,pdc: use correct input string for --deactivate-configAleksander Morgado1-2/+2
Fixes https://gitlab.freedesktop.org/mobile-broadband/libqmi/issues/24 (cherry picked from commit 8cd6bced3dda5de9633ba3b00c63ed1f90d6e195)
2020-03-16build: post-release version bump to 1.24.9Aleksander Morgado1-1/+1
2020-03-16release: bump version to 1.24.81.24.8Aleksander Morgado1-1/+1
2020-03-16NEWS: update for 1.24.8Aleksander Morgado1-0/+11
2020-03-16qmi-service-uim: remove duplicate service entriesEric Caruso1-2/+0
(cherry picked from commit 3701c4682922cf00d0f4b05c4ac7ef1797e5c240)
2020-03-16libqmi-glib,test: add test for NAS Get Serving System with GSM7 PLMNAleksander Morgado1-0/+84
(cherry picked from commit d8a40bb7045ede077b0444dc47163b4e91fbbb94)
2020-03-16libqmi-glib,utils: assume non-printable UTF-8 is not expectedAleksander Morgado3-1/+34
When a string comes in GSM7 instead of UTF-8, it may also happen that it ends up being valid UTF-8 anyway. But, there may be cases that the UTF-8 validity accepts non-printable characters, and that is something we currently don't expect reported from the modem, so just go on and assume that even if a string is valid UTF-8, it must contain all printable UTF-8 characters, otherwise we'll attempt GSM-7 and UCS-2 decoding instead. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/191 (cherry picked from commit b5c46e12332adc1084bde6e3652af67009f56e3c)
2020-03-16libqmi-glib,test: reorder sourcesAleksander Morgado1-22/+26
(cherry picked from commit aea08947b6c268725f1409b8ab83bb5bcfd37441)
2020-03-16libqmi-glib,message: fix GSM7 fallback and memleakAleksander Morgado1-4/+0
The out pointer was being incorrectly re-set to the original contents even if we had attempted the GSM7 or UCS2 fallbacks. (cherry picked from commit 59ce5fdc3b6b124c1ff6faed60a836e8f388d653)
2020-02-27build: post-release version bump to 1.24.7Aleksander Morgado1-1/+1
2020-02-27release: bump version to 1.24.61.24.6Aleksander Morgado1-1/+1
2020-02-27NEWS: update for 1.24.6Aleksander Morgado1-0/+20
2020-02-27docs: add index for 1.24.6Aleksander Morgado1-0/+4
2020-02-27libqmi-glib,nas: 3GPP2 home network TLV rename already in 1.24.6Aleksander Morgado2-2/+2