summaryrefslogtreecommitdiff
path: root/data
Commit message (Collapse)AuthorAgeFilesLines
* build: new option to build plugins within the daemon binaryAleksander Morgado2023-01-032-2/+7
| | | | | | | | | | | Instead of creating libmm-plugin* and libmm-shared* libraries that are dlopen()-ed on runtime, allow incorporating all plugins into the daemon binary itself. This makes the startup of the daemon much faster and also avoids issues with builds that require linker namespace isolation. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/674
* build: move plugins directory to src/pluginsAleksander Morgado2023-01-031-1/+1
| | | | | | We are going to allow including the plugin sources built within the ModemManager daemon binary; moving the sources within the daemon sources directory makes it easier.
* fcc-unlock: switch bash shell scripts to use shChristian Taedcke2022-11-111-1/+1
| | | | | | | | This enables the usage with busybox and fixes yocto dependency issues. This is related to #483 and the previous commit 91ed72aa29ede06d3a5115128e2267793ca611d4.
* build: drop autotoolsAleksander Morgado2022-11-074-172/+0
|
* fcc-unlock: add FCC unlock support for Quectel EM05-GAleksander Morgado2022-10-103-0/+33
| | | | | | | Using the FCC unlock prepared and tested by: Leah Oswald <mail@leahoswald.de>, Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/640
* build: make tests optionalDylan Van Assche2022-07-252-2/+11
| | | | | | | | | | 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
* fcc-unlock: add support for new Lenovo T99W175 SDX55 FCC unlock methodThilo-Alexander Ginkel2022-05-301-4/+69
| | | | | Tested w/ Lenovo firmware T99W175.F0.1.0.0.9.DT.003.055 (old unlock method) and T99W175.F0.1.0.0.9.DT.003.079 (new unlock method)
* data: add example connection dispatcherAleksander Morgado2022-04-054-1/+69
| | | | Just a minimal example that prints the events in syslog
* build: rename directory where fcc unlocks are keptAleksander Morgado2022-04-056-1/+1
|
* systemd: don't run ModemManager in containersSimon Deziel2022-03-141-0/+1
| | | | | | | | | | | | | | | | | | | | | This assumes the needed modem hardware is typically not available inside containers. If however, the local admin configures the container to get access to the hardware in question, ModemManager can be instructed to run in that specific container by doing: `sudo systemctl edit ModemManager.service` Then entering the following text in the editor: [Unit] # Remove condition of "not container" ConditionVirtualization= Upon saving/exiting, ModemManager can then be started with: `sudo systemctl start ModemManager.service` Signed-off-by: Simon Deziel <simon@sdeziel.info>
* fcc-unlock: Make scripts POSIX shell compatibleSven Schwermer2022-02-253-11/+11
| | | | | | | | This allows us to not rely on bash which may not be available on constrained systems, e.g. Yocto-built embedded systems. The scripts now pass shellcheck. Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
* meson,data: generate test service fileAleksander Morgado2022-02-163-1/+16
| | | | | | The test service file is used in the test-plugin-generic unit tests, which require the ModemManager daemon to be launched in a private test DBus session.
* core: switch bash shell scripts to use /bin/sh for use w/Busybox.Bruce A. Johnson2022-01-053-3/+3
| | | | Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/483
* build,meson: Remove incorrect args for i18n.merge_fileXeonacid2021-12-231-1/+0
| | | | `i18n.merge_file` has been ignoring positional arguments for a time and explicitly rejects with error since meson 0.60.0.
* data,fcc-unlock: add example unlock scriptsAleksander Morgado2021-11-186-1/+175
| | | | | | | | | | | | | | | | | | | | | | | | Added scripts for Foxconn SDX55, Quectel EM120, and several old Sierra Wireless manufactured devices: * Installed but not used by default, the user needs to setup manual links from ${pkgdatadir}/fcc-unlock.available.d, to ${pkgsysconfdir}/fcc-unlock.d in order to enable them. * Installed with rights only for the owner, so that the dispatcher in ModemManager can validate them. * They rely on $PATH to find the qmicli/mbimcli tools. In addition to these scripts, per-vid:pid links are created in the same ${pkgdatadir}/fcc-unlock.available.d directory, specifying which are the specific devices that require the FCC unlock operation. This patch also creates the ${pkgsysconfdir}/fcc-unlock.d and ${pkglibdir}/fcc-unlock.d directories where ModemManager looks for the enabled tools. Note that the meson setup doesn't support creating/deleting links officially yet, so we use a workaround using meson.add_install_script that is not perfect (i.e. doesn't handle the symlink removal during uninstall). See https://github.com/mesonbuild/meson/issues/1602
* build: Port to mesonIñigo Martínez2021-09-071-0/+74
| | | | | | meson is a build system focused on speed an ease of use, which helps speeding up the software development. This patch adds meson support along autotools.
* service: add QIPCRTR address familyArnaud Ferraris2021-05-211-1/+1
| | | | | | | | With the recently added support for modems using QRTR, ModemManager needs to have access to the corresponding address family so it can interact with the modem. Signed-off-by: Arnaud Ferraris <arnaud.ferraris@collabora.com>
* service: Fix Mobile Data on EG25Undef2021-05-201-1/+1
| | | | This allows mobile data to work on the EG25 (and probably other modems).
* iface-modem-3gpp: define new API to disable facility locksMichal Mazur2021-04-301-0/+4
|
* iface-modem-3gpp-profile-manager: new interface for profile managementAleksander Morgado2021-04-291-0/+15
| | | | | | | | This interface will provide support for the profile management operations in different modem types. This initial commit introduces support for the interface and provides handlers for the methods that may be called in the interface.
* data,icon: resize to fit the contentsAleksander Morgado2021-04-141-26/+40
|
* data: added valgrind suppressions file imported from NMAleksander Morgado2019-12-021-0/+487
|
* systemd: always start MM after polkit service if enabling policyAleksander Morgado2019-10-112-1/+4
| | | | Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/113
* policy: USSD policy requires user authentication in strict modeAleksander Morgado2019-09-251-1/+1
|
* polkit,conf: trivial comment update regarding Signal.Setup()Aleksander Morgado2019-09-251-1/+1
|
* polkit,conf: add missing firmware management methodsAleksander Morgado2019-09-251-0/+10
|
* polkit,conf: add missing OMA methodsAleksander Morgado2019-09-251-0/+19
|
* polkit,time: protect GetNetworkTime() with a new 'Time' policy ruleAleksander Morgado2019-09-252-0/+16
|
* polkit,conf: add missing supplementary voice service methodsAleksander Morgado2019-09-251-0/+36
|
* polkit,conf: add missing InjectAssistanceDataAleksander Morgado2019-09-251-0/+4
|
* polkit,conf: add missing SetInitialEpsBearerSettingsAleksander Morgado2019-09-251-0/+4
|
* polkit,conf: add missing SetEpsUeModeOperationAleksander Morgado2019-09-251-0/+4
|
* polkit,conf: add missing SetCurrentCapabilitiesAleksander Morgado2019-09-251-0/+4
|
* polkit,conf: add missing SetPowerStateAleksander Morgado2019-09-251-0/+4
|
* policy,conf: use SetCurrentBands instead of SetBandsAleksander Morgado2019-09-251-1/+1
|
* policy: Use SetCurrentModes instead of SetAllowedModesMohammed Sadiq2019-09-241-1/+1
| | | | There is no DBus API for SetAllowedModes, but only for SetCurrentModes.
* policy: Call method name should be SendDtmf rather than SendToneBob Ham2018-12-071-1/+1
| | | | | | The method on MMBaseCall is send_tone but the D-Bus method call is SendDtmf. Without this patch, calls return org.freedesktop.DBus.Error.AccessDenied.
* service: set User=root so that gio doesn't have to look into /etc/passwdlr/service-userLubomir Rintel2018-06-131-0/+1
| | | | | | | | | | | | | | | | GVfs' libgvfsdbus.so GIo module, when automatically loaded, attempts to discover if there's a session D-Bus instance to use. It tries real hard to get the socket name it would use -- in absence of XDG_RUNTIME_DIR it decides to make it up with user's home directory. When HOME is unset too, it just tries to figure it out by looking into /etc/passwd. Which upsets SELinux that would better not see us looking into it. We trigger the load of the GIo modules, by using the GFile API to access the the ports in /dev. They're utterly uesless to us, but there doesn't seem to be a way to disable their load. Oh well. For now, let's just ensure HOME is set and the problematic path in glib is not taken.
* i18n: deprecate intltool and use only gettext 0.19.8Aleksander Morgado2017-09-074-25/+49
| | | | | | | | | | | | | | | | Instead of mixing both intltool and gettext, which not always work correctly together, this patch obsoletes intltool and uses only gettext, which includes support for translating XML files with ITS rules. See migration steps for GNOME projects here: https://wiki.gnome.org/MigratingFromIntltoolToGettext The gettext ITS rules for polkit policy files are imported from the upstream polkit repository. We don't use the polkit-installed rule files yet because there is no tagged release that contains those files yet, so we cannot build-depend on any specific polkit version. https://bugs.freedesktop.org/show_bug.cgi?id=96940
* polkit: add missing Location interface method rulesAleksander Morgado2017-08-121-0/+8
| | | | https://bugs.freedesktop.org/show_bug.cgi?id=102182
* systemd: drop After=syslog.target ruleAleksander Morgado2017-06-181-1/+0
| | | | | | | | syslog implementations are using socket activation nowadays, so an explicit ordering is not necessary anymore. Plus, syslog.target was already dropped from systemd in v198. Reported-by: Michael Biebl <biebl@debian.org>
* systemd: tighten the service security a bitLubomir Rintel2016-10-241-0/+6
| | | | | | | | | | | | What's left enabled: * Access to /dev -- obviously * CAP_SYS_ADMIN -- this is needed by TIOCSSERIAL only. Too bad this also allows TIOCSTI, which allows for code injection unless something else (SELinux) disallows access to ttys with shells. Maybe kernel should use CAP_SYS_TTY_CONFIG for this. * socket(AF_NETLINK) -- udev & kernel device changes * socket(AF_UNIX) -- D-Bus
* core: allow disabling auto-scan and notifying ports one by one via APIAleksander Morgado2016-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit enables a new core ModemManager daemon option, so that automatic detection of available modems is totally disabled: '--no-auto-scan'. Note that this option also replaces the previously used '--test-no-auto-scan' option, which was only used during tests. Along with the new ModemManager option, a new ReportKernelEvent() method in the API is defined, which allows notifying the daemon of which interfaces it should be accessing, as well as the main details of each interface. The only mandatory parameters in the new method are 'action' (add/remove), 'name' (the name of the interface) and 'subsystem' (the subsystem of the interface). The mmcli tool has support for using the new api method via several new options: * The '--report-kernel-event' option allows specifying device ports one by one, and is a direct mapping of the ReportKernelEvent() method: $ sudo mmcli --report-kernel-event="action=add,name=wwan0,subsystem=net" $ sudo mmcli --report-kernel-event="action=add,name=cdc-wdm0,subsystem=usbmisc" * The '--report-kernel-event-auto-scan' option uses udev monitoring to notify events automatically to the daemon. This allows to operate in a way equivalent to the default daemon operation (with implicit auto-scan). Worth noting that the ReportKernelEvent() method is only usable when '--no-auto-scan' is explicitly used in the daemon. An error will be reported if the method is tried while standard udev monitoring is enabled (implicit if auto scan isn't explicitly disabled in the daemon). If mmcli is going to be used only to report 'real time' events, an optional '--initial-kernel-events=[PATH]' may be given in the ModemManager call to automatically process a set of port kernel events one by one on boot. The file may e.g. contain: action=add,name=wwan0,subsystem=net action=add,name=cdc-wdm0,subsystem=usbmisc
* policy: fix minor typoAleksander Morgado2015-08-021-1/+1
|
* polkit: added Voice policy ruleAleksander Morgado2015-08-022-0/+44
|
* policy: don't prevent us from receiving signalsDavid Herrmann2015-07-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | By using: <deny send_destination="org.freedesktop.ModemManager1"/> ..we prevent anyone on the system from sending us signals, even if we subscribed to them. This is clearly not what this line intended. More importantly, we silently break mm-auth-provider-polkit, as we never receiver 'changed' signals via PolkitAuthority. Right now, this is not required by the implementation of PolkitAuthority, but ModemManager should not place restrictions on the implementation of external libraries. So make sure we only prevent Method-Calls to be sent to us. Any other message that we didn't expect is automatically discarded by gdbus, anyway. Without this change, debugging dbus policies constantly shows messages that Polkit couldn't send the 'changed' signal to ModemManager. This is suppressed in non-debugging mode. But it would make debugging a lot easier, if we'd avoid force-dropping those events and not clutter the debug-log.
* polkit: fix Location.Setup() authorization rulesAleksander Morgado2014-07-111-1/+1
|
* data: add iconAleksander Morgado2014-03-091-0/+197
|
* context: new '--test-plugin-dir' to allow specifying where the plugins areAleksander Morgado2014-02-131-1/+1
|
* service,tests: run in MM in debug mode in service testsAleksander Morgado2014-02-131-1/+1
|