aboutsummaryrefslogtreecommitdiff
path: root/src/mm-iface-modem-simple.c
AgeCommit message (Collapse)Author
2012-10-11core: make sure objects retrieved with g_object_get() are valid in the ifacesAleksander Morgado
The interfaces usually retrieve objects (e.g. skeletons) from the Modem object using g_object_get(), but we didn't make sure that these objects were actually valid before using them. This should clean up errors happening when the modem gets unplugged and still some actions are ongoing. Should fix https://bugzilla.gnome.org/show_bug.cgi?id=685933
2012-10-04libmm-glib: remove the `libmm-common.h' headerAleksander Morgado
Both the ModemManager daemon and the mmcli will now include `libmm-glib.h' only. We also handle two new special `_LIBMM_INSIDE_MM' and `LIBMM_INSIDE_MMCLI' symbols, which if included before the `libmm-glib.h' library allow us to: * Don't include the libmm-glib high level API in the ModemManager daemon, as the object names would clash with those in the core. * Define some of the methods of helper objects to be included only if compiling ModemManager daemon or the mmcli.
2012-09-04iface-modem-simple: never remove connected bearersAleksander Morgado
Modems have a maximum of bearers allowed to be connected at a time, number which is given by the number of available ports that may be used for data connections. When Simple.Connect() tries to launch a connection, it will try to find first an existing bearer with the required parameters (e.g. APN, IP type). If such bearer is found, it will just use it. If no such bearer is found, it will try to create one. When trying to create one, if there is no more room for bearers in the modem, we will remove the first disconnected bearer that we find, if any, before trying to create the new one. This logic now makes sure that no connected bearer gets removed in order to create a new one, and also that only one existing gets removed if possible (not every bearer as we did previously). Further logic to connect multiple bearers at a time cannot be done using the Simple interface.
2012-08-30iface-mode-simple: when setting bands or modes, wait some time to settle downAleksander Morgado
When bands or allowed modes are changed, the modem will very likely reset its current registration and start from scratch. We will now give it some seconds to settle down before going on with the connection request, so that the modem has enough time to report being unregistered. Without this sleep time, the unsolicited message reporting being unregistered may arrive *after* having checked registration status in the Simple connect sequence, and therefore we end up failing the connection request.
2012-08-28iface-modem-simple: don't launch band/mode updates unless explicitly requiredAleksander Morgado
2012-03-30simple: need to wait to get fully initialized before trying to enableAleksander Morgado
2012-03-16iface-modem-simple: try to skip initial steps in the Simple Connect sequenceAleksander Morgado
2012-03-16iface-modem-simple: don't request to connect the bearer if already connectedAleksander Morgado
2012-03-16iface-modem-simple: don't call the enable() methods in the class directlyAleksander Morgado
Use the new `mm_base_modem_enable()' instead, which will pass down the modem-wide cancellable to the enable() implementation.
2012-03-16iface-modem-simple: don't assume bearer is always setAleksander Morgado
2012-03-16libmm-common: `MMSimpleStatus' won't be considered internal any moreAleksander Morgado
Renamed `MMCommonSimpleProperties' to `MMSimpleStatus', and removed the `MMSimpleStatusProperties' provided in libmm-glib. We'll just use the original one from libmm-common always.
2012-03-16libmm-common: `MMSimpleConnectProperties' won't be considered internal any moreAleksander Morgado
Renamed `MMCommonConnectProperties' to `MMSimpleConnectProperties', and removed the `MMModemSimpleConnectProperties' provided in libmm-glib. We'll just use the original one from libmm-common always.
2012-03-16libmm-common: `MMBearerProperties' won't be considered internal any moreAleksander Morgado
Renamed `MMCommonBearerProperties' to `MMBearerProperties', and removed the `MMBearerProperties' provided in libmm-glib. We'll just use the original one from libmm-common always.
2012-03-16iface-modem-simple: include policy authorization checksAleksander Morgado
2012-03-16api,dbus: rename `AllowedBands' to just `Bands'Aleksander Morgado
ModemManager will load: 1) The list of supported bands. Note that this doesn't mean that any possible combination of bands is supported, as modems may support only specific combinations, but at least gives a rough idea of what the modem is capable of handling. 2) The list of CURRENT bands. There is no such "Allowed" bands, as we do with modes, modems will have a specific set of bands being currently used, which will be reported in the `Bands' property. If the modem allows modifying the list of bands to use, this can be done with the `SetBands()' method. If the modem doesn't support using a specific combination of bands, this method will report an error.
2012-03-15iface-modem-simple: SIM-PIN2 locking does not prevent from connectingAleksander Morgado
2012-03-15iface-modem-simple: don't create a bearer if we can reuse an existing oneAleksander Morgado
2012-03-15sim: allow subclassing pin/puk sending operationsAleksander Morgado
2012-03-15iface-modem-simple: remove dual 3GPP/CDMA bearers logicAleksander Morgado
Just rely on a single Bearer object created.
2012-03-15core: use new enums/flags string getters/buildersAleksander Morgado
2012-03-15libmm-common: fix usage of main library headerAleksander Morgado
2012-03-15broadband-modem: we can expect non-LTE 3GPP+CDMA modemsAleksander Morgado
2012-03-15iface-modem-simple: new connection logic when more than one bearer aroundAleksander Morgado
For mixed 3GPP+CDMA modems, we first try to connect the 3GPP bearers, and then the CDMA ones.
2012-03-15iface-modem-simple: build 3GPP+CDMA registration check logicAleksander Morgado
For mixed 3GPP+CDMA modems, we check registrations in both 3GPP and CDMA networks, and we stop checks when we find ourselves registered in either one or the other.
2012-03-15core: use g_list_free_full() when possibleAleksander Morgado
2012-03-15iface-modem-simple: plug memleakAleksander Morgado
2012-03-15iface-modem-simple: include setting bands during simple Connect()Aleksander Morgado
2012-03-15iface-modem-simple: implement GetStatus()Aleksander Morgado
2012-03-15iface-modem-simple: implement Disconnect()Aleksander Morgado
2012-03-15iface-modem-simple: implement bearer creation and connection during Connect()Aleksander Morgado
2012-03-15iface-modem-simple: use the new connect properties objectAleksander Morgado
2012-03-15iface-modem-simple: implement Connect()Aleksander Morgado
2012-03-15iface-modem-simple: new interface to handle the Simple interfaceAleksander Morgado