summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-05-23qmicli-ims: fix a silly argument mixupmainLubomir Rintel1-3/+3
Possibly a cut'n'paste oversight or something.
2024-05-23qmicli-pdc: avoid leaking file_contents[]Lubomir Rintel1-0/+1
Release it when not needed any more.
2024-05-23qmicli-nas: avoid leaking mncLubomir Rintel1-0/+1
2024-05-23qmicli-dms: do not leak result on errorLubomir Rintel1-0/+1
The result is not properly disposed in error handling path, resulting in a potential leak.
2024-05-23qmicli-dms: use automatic pointers for split stringsLubomir Rintel1-16/+8
Do it for consistence's sake but also because it's apparently an easy thing to mess up. No change in behavior, purely a cosmetic change.
2024-05-23qmicli-dms: do not leak split[]Lubomir Rintel1-4/+2
In various places we fail to free up whatever g_strsplit() returned in error handling paths. Let's use automatic pointers in those cases.
2024-05-23qmicli: avoid leaking the input messagesLubomir Rintel2-14/+25
In various places in we follow this pattern: input = qmi_message_uim_power_on_sim_input_new (); if (bad arguments) { complain(); return; // leak input } issue_message(input); Let's, instead, always do the argument sanity checks before allocating the message, to avoid leaking the message.
2024-05-23swi-update: close the file handle even if it's zeroLubomir Rintel1-1/+1
Technically, zero is a perfectly fine file descriptor for open() to return in case the parent process feels frivolous and chooses to close stdin.
2024-05-23test-fixture: assert the service type index fits into service_info[]Lubomir Rintel1-0/+1
Largest QmiService is QMI_SERVICE_SSC=0x190 (400 dec) whereas service_info[] has 255 elements. This made a static analyzer frown. Make it happy again!
2024-05-13build: unstable release version bump to 1.35.41.35.4-devAleksander Morgado1-1/+1
2024-05-13uim: Add "File Control Information" to Open Logical Channel requestLuca Weiss1-1/+7
According to gobi-api sources this TLV exists: https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/blob/main/gobi-api/GobiAPI_2013-07-31-1347/GobiConnectionMgmt/GobiConnectionMgmtAPIStructs.h#L24641-24645
2024-05-13uim: Add Logical Channel commandLuca Weiss5-0/+173
While the "Logical Channel" command can do more things, it can be used for closing a logical channel that has been opened previously. QMI format is based on gobi-api definition: https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/blob/main/gobi-api/GobiAPI_2013-07-31-1347/GobiConnectionMgmt/GobiConnectionMgmtAPIStructs.h#L24531-24584
2024-05-13uim: Add Send APDU commandLuca Weiss3-0/+147
Allow an APDU to be sent to the SIM card, using the logical channel opened with Open Logical Channel. QMI format is based on ChromiumOS hermes definition: https://chromium.googlesource.com/chromiumos/platform2/+/eab2f7edb247fc11b3f0ec4b886aa7a5b12f24f6/hermes/uim_cmd.qmi#38
2024-05-13uim: Add Open Logical Channel commandLuca Weiss3-0/+144
Allows the client to open a logical channel to the SIM card which can then be used to e.g. send APDU requests to the SIM card. QMI format is based on ChromiumOS hermes definition: https://chromium.googlesource.com/chromiumos/platform2/+/eab2f7edb247fc11b3f0ec4b886aa7a5b12f24f6/hermes/uim_cmd.qmi#17
2024-04-29qmicli,ims: add bind messageRichard Acayan1-1/+57
This message is sometimes required to precede other IMS Settings messages. Add the qmicli action to bind a number for IMS Settings.
2024-04-29qmicli,imsa: add bind messageRichard Acayan1-2/+58
This message is sometimes required to precede other IMSA messages. Add the qmicli action to bind this number for IMSA.
2024-04-29data: qmi-service-imsa: add indicationsRichard Acayan2-0/+123
Indications on the IMSA service allow the Application Processor to be notified when the modem's IMS state changes. Add the indications, which are similar to Get IMS Services/Registration Status responses. Since the Application Processor must subscribe to the indications to receive them, also add the IMSA Register Indications request. There is another 0x33 indication which corresponds to field 0x1B of the IMSA Register Indications request, but omit it until it is understood enough to be named.
2024-04-26data: qmi-service-imsa: add binding messageRichard Acayan2-1/+15
Binding a number is a prerequisite to reading the IMS status on the IMS application service using the 0x20, 0x21, and 0x22 message IDs. It is the first request sent on startup. Without it, an invalid operation error is emitted for all IMSA requests. Add this message to allow status reporting on the IMS application service.
2024-04-26data: qmi-service-ims: add binding messageRichard Acayan2-1/+15
Binding a number is a prerequisite to interacting with IMS settings using the 0x8F and 0x90 message IDs. It is the first request sent on startup. Without it, an invalid operation error is emitted for both settings requests. Add this message to allow the listing and changing of IMS settings.
2024-04-22build: unstable release version bump to 1.35.31.35.3-devAleksander Morgado1-1/+1
2024-04-18feat: add optional key-value-pair parameters to allow specification of a ↵Jonas K1-31/+116
session-type This commit makes it possible to unlock other SIM cards in multi-SIM environments. Instead of using the hard-coded session-type `card-slot-1` it is now possible to append `,session-type=card-slot-2` to the parameters of the following actions: - `--uim-set-pin-protection=[(PIN1|PIN2|UPIN),(disable|enable),(current PIN)[,"key=value,..."]]` - `--uim-verify-pin=[(PIN1|PIN2|UPIN),(current PIN)[,"key=value,..."]]` - `--uim-unblock-pin=[(PIN1|PIN2|UPIN),(PUK),(new PIN)[,"key=value,..."]]` - `--uim-change-pin=[(PIN1|PIN2|UPIN),(old PIN),(new PIN)[,"key=value,..."]]` This change is backward compatible because the key-value-pair parameters are optional and without them `card-slot-1` will be used.
2024-03-11.editorconfig: fix insert_final_newline behaviourYegor Yefremov1-1/+1
Enable insert_final_newline to comply with the current style.
2024-02-12build: add EditorConfig configuration fileYegor Yefremov1-0/+15
EditorConfig projects helps maintaining consistent coding styles across various editors and IDEs.
2024-02-01.gitignore: Ignore Visual Studio Code directory and fileFabio Porcedda1-0/+2
2024-02-01gas: add request for getting the Ethernet PDU MAC addressFabio Porcedda3-2/+99
Example: $ sudo qmicli -d /dev/wwan0qmi0 --gas-dms-get-ethernet-mac-address Ethernet MAC address 0: E2:92:0C:A6:27:07 Ethernet MAC address 1: DD:95:72:49:59:48
2024-02-01qmi-common: turn qmi_helpers_str_hex into qmi_common_str_hexFabio Porcedda14-49/+94
Rename qmi_helpers_str_hex() to qmi_common_str_hex() and move it to the new library libqmi-common that will be shared between libqmi-glib and qmicli.
2024-02-01docs: add API index for 1.36Fabio Porcedda1-0/+4
2024-01-29build: unstable release version bump to 1.35.21.35.2-devAleksander Morgado1-1/+1
2024-01-11.gitignore: ignore ctags tags fileYegor Yefremov1-0/+1
2024-01-11libqmi-glib: consolidate how "Since" info is added in single itemsAleksander Morgado6-121/+121
2024-01-11libqmi-glib,wds: add QMI_WDS_RAT_3GPP_5GNRAleksander Morgado1-0/+2
https://lists.freedesktop.org/archives/libqmi-devel/2023-November/003922.html
2023-12-13build: unstable release version bump to 1.35.11.35.1-devAleksander Morgado1-1/+1
2023-12-01libqmi-glib,udev: change qmi_wwan sysfs attr ownership to QMI_USERNAME if setAleksander Morgado1-0/+5
If the build system has defined a username to change the ownership of the QMI control device, use the same username to change ownership of the sysfs attributes exposed by the qmi_wwan driver, which allow us to control e.g. raw-ip vs 802.3 link layer protocol management or multiplexing support features. # ls -ltr /sys/class/net/wwan0/qmi total 0 -rw-r--r--. 1 modem root 4096 Nov 20 05:35 del_mux -rw-r--r--. 1 modem root 4096 Nov 20 05:35 add_mux -rw-r--r--. 1 modem root 4096 Nov 20 05:36 pass_through -rw-r--r--. 1 modem root 4096 Nov 20 05:36 raw_ip
2023-11-20libqmi-glib,message: fix 16-bit service on big endian architecturesArnaud Ferraris1-1/+1
The latest release introduces handling of 16-bit service indications. However, only the raw message data is returned from `qmi_message_get_service()`, leading to incorrect values on big-endian architectures. As a consequence, `libqmi` ultimately fails to build as the corresponding test errors out in this case. This patch ensures the service indication is correct on all kinds of architectures.
2023-11-20libqmi-glib,udev: remove GOTO in ownership change ruleAleksander Morgado1-5/+1
Just a simplification.
2023-11-20libqmi-glib,udev: avoid [0-9] as shell globbing patternAleksander Morgado1-1/+1
As a shell globbing pattern, "[0-9]" means "one single digit", and would not apply if there is more than one digit.
2023-11-20build: cleanup gitignore as we removed autotools supportAleksander Morgado1-76/+0
2023-11-20libqmi-glib: the device ownership rules are not proxy specificAleksander Morgado4-21/+20
Move the udev rule under the libqmi-glib sources, not the qmi-proxy sources.
2023-11-20qmicli: hide QMI over MBIM related open flags if support not builtAleksander Morgado1-0/+8
There is no reason why we should allow attempting to use QMI over MBIM if the library is built without that support.
2023-11-20libqmi-glib,device: normalize format of help in QmiDeviceOpenFlagsAleksander Morgado1-6/+6
Ensure all strings start with a capital letter.
2023-10-11build: post-release version bump to 1.35.0Aleksander Morgado1-1/+1
2023-10-11release: bump version to 1.34.01.34.0Aleksander Morgado1-3/+3
2023-10-11AUTHORS: update based on latest git statsAleksander Morgado1-20/+24
2023-10-02NEWS: include SSC service supportAleksander Morgado1-0/+4
2023-10-02build: bump version to 1.33.901 (1.34-rc2)1.34-rc2Aleksander Morgado1-1/+1
2023-09-29libqmi-glib,message: add missing ssc service headerAleksander Morgado1-0/+1
Otherwise the message printing won't work for the SSC service.
2023-09-29libqmi-glib,test: add test for 16bit service message parsingAleksander Morgado1-0/+71
2023-09-29libqmi-glib,device: release_cid_ready defined as a macroAleksander Morgado1-59/+33
So that the same logic is reused with the new 16bit service support.
2023-09-29libqmi-glib,device: allocate_cid_ready defined as a macroAleksander Morgado1-98/+54
So that the same logic is reused with the new 16bit service support.
2023-09-29libqmi-glib,message: add note about qmux/qrtr header sizesAleksander Morgado1-1/+4