Commit Graph

168 Commits

Author SHA1 Message Date
Alexander Couzens 13181d1a01 network: debug log the network time on update 2019-04-28 10:13:07 -05:00
Alexander Couzens c508574f68 network/ofono_netreg_status_notify: debug log the lac and ci 2019-04-28 10:13:07 -05:00
Alexander Couzens 19218065a2 network: allow drivers to generate more specific error codes
For certain modems it's not clear if they support all actions or not.
In such cases use CME errors which allows generate NotSupported
messages.
2017-12-05 22:06:44 -06:00
Alexander Couzens e98f683309 network.c: notify_status_watches: check for NULL
In rare cases when ofono_netreg_status_notify() is called before
ofono_netreg_register() netreg->status_watches is NULL.
2017-09-11 10:39:17 -05:00
John Ernberg 43f9efc1fd network: Use g_slist_free_full 2016-04-22 15:30:01 -05:00
John Ernberg c331d72d1d network: Fix crash caused by empty Scan() results
When issuing a Scan() in poor reception while attached to an operator it's
fully possible to get no results, which causes the attached operator to be
cleaned up. In certain scenarios this would cause a use-after-free as there
are still references to this operator.
Transfer the attached operator to the new list regardless of removal caused
by the Scan() results.
2016-01-07 10:31:10 -06:00
Tony Espy f2f279b28d src: make bearer/operator enums public
Move enums for operator_status and packet_bearer to common.h to avoid
duplication in drivers.
2015-10-13 16:00:17 -05:00
Marcel Holtmann f20e7e9b3d network: Avoid shadowing of strength variable 2012-07-15 20:21:19 -03:00
Marcel Holtmann 82a1f62994 network: Avoid shadowing of mode parameter 2012-07-15 20:20:39 -03:00
Lucas De Marchi e0d6f9f0ce Do not set signature and reply in GDBus tables
Use GDBUS_* macros, so signature and reply fields are not set in each
method/signal.
2012-05-20 02:47:57 -07:00
Lucas De Marchi b3489f2ee8 Convert GDBus methods to use macro helpers
With these macro helpers we can separate in/out arguments and use their
own vector.
2012-05-20 02:47:57 -07:00
Henrique Dante de Almeida 924ee02ff7 Constify GDBus signal tables
Constify signal tables with the following command:

    find . -name '*.[ch]' -exec \
             sed -i 's/\(GDBusSignalTable .* =\)/const \1/g' {} \;
2012-05-20 02:47:56 -07:00
Henrique Dante de Almeida 63bbdebdf2 Constify GDBus method tables
Constify method tables with the following command:

find . -name '*.[ch]' -exec \
             sed -i 's/\(GDBusMethodTable .* =\)/const \1/g' {} \;
2012-05-20 02:47:56 -07:00
Marcel Holtmann 5fb0594750 network: Add debug for signal strength updates 2012-02-16 08:11:35 +01:00
Marcel Holtmann 1f42acc86e network: Add debug for network registration status updates 2012-02-11 07:00:49 +01:00
Denis Kenzior 12e481104d network: Use __ofono_atom_find macro 2012-01-18 12:21:33 -06:00
Oleg Zhurakivskyy e04f0ef027 network: Access SPN directly from the sim atom 2012-01-18 10:44:54 -06:00
Denis Kenzior 137c602351 network: Optimize away one unneeded assignment 2012-01-18 10:41:43 -06:00
Oleg Zhurakivskyy 0f79546eaf network: Use sim SPN watch API 2012-01-18 10:38:51 -06:00
Denis Kenzior 6c2f23cd48 network: Refactor CPHS SPN & Short SPN handling 2011-12-16 18:46:27 -06:00
Denis Kenzior 5e62fe711f network: CPHS Short SPN bits do not apply to SPN 2011-12-16 16:38:20 -06:00
Denis Kenzior 70287f87a6 network: Use __ofono_cphs_service_available 2011-12-16 16:30:57 -06:00
Oleg Zhurakivskyy e4e934c368 network: Add CPHS SPN, short-SPN fallbacks 2011-12-16 08:03:58 -06:00
Denis Kenzior 1245664962 network: Guard PNN reading
In a somewhat bizarre case, both PNN and OPL might change, which will
trigger sim_pnn_opl_changed twice.  This can have some funny
side-effects, so don't allow this to happen in the first place.
2011-12-16 08:02:44 -06:00
Oleg Zhurakivskyy 1dc0597f36 network: Use netreg_emit_operator_display_name()
Redundant in place code removed, netreg_emit_operator_display_name()
is now used consistently everywhere in network.c
2011-12-15 22:57:12 -06:00
Denis Kenzior 1e052ef1fe network: Split EFspn and EFspdi Refresh handling
If both EFspn and EFspdi are changed, then we trigger reading of EFspn
twice which leads to a memory leak.  Instead, always read EFspdi if the
relevant service is available.

If EFspdi is changed, use a simple heuristic to update the 'Name'
property if appropriate.  This heuristic is not always correct, but in
the worst case we will emit the same name.
2011-12-02 16:00:02 -06:00
Denis Kenzior 6746715715 network: Refactor sim_spdn_spdi_changed 2011-12-02 15:58:35 -06:00
Denis Kenzior 3df763c4cc network: Tweak naming 2011-12-02 14:27:18 -06:00
Oleg Zhurakivskyy 6e60296eed network: Rename spname to spn 2011-12-02 12:53:16 -06:00
Denis Kenzior d1a7c63b95 network: Go back to the original
The code is a little bit more readable and slightly more efficient this
way
2011-12-02 12:52:27 -06:00
Oleg Zhurakivskyy a67bc1a4b0 network: Refactor sim_spn_read_cb()
Refactor sim_spn_read_cb() for CPHS SPN, short-SPN inclusion
2011-12-02 12:44:52 -06:00
Oleg Zhurakivskyy 58fc48c6c4 network: M9 coding style corrections 2011-12-02 12:39:50 -06:00
Denis Kenzior 2f77d1a3e4 netreg: Fix memory leak in HFP case 2011-10-21 14:02:51 -05:00
Marcel Holtmann 7e6afe37bf core: Update copyright information 2011-10-10 13:39:42 -07:00
Denis Kenzior ee0c621e54 network: Fix crash with an empty mcc/mnc cops list
Some hardware returns an empty mcc/mnc operator during an operator scan
when no operators are found (e.g. on an LTE dongle in a non-LTE area).
This results in oFono mistaking trying to update a non-existent operator
object.

For reference:
ofonod[27532]: Device: < \r\n+NWSTATEIND: 4\r\n\r\n+COPS:
(0,"","","",255),,(0-4),(0-2)\r\n\r
\nOK\r\n
process 27532: arguments to dbus_message_new_signal() were incorrect,
assertion "_dbus_check_
is_valid_path (path)" failed in file dbus-message.c line 1289.
This is normally a bug in some application using the D-Bus library.
  D-Bus not built with -rdynamic so unable to print a backtrace
2011-08-18 13:51:40 -05:00
Marcel Holtmann a159a0f9fc network: Force auto-only mode if manual registration is not supported
If the network registration driver decides to not provide a manual
registration method, then force the mode to auto-only.
2011-07-27 23:54:37 +02:00
Denis Kenzior 4b3796cc6b network: handle hfp operator change correctly 2011-07-22 04:52:12 -05:00
Denis Kenzior d80698f25d netreg: Remove unused variable 2011-05-31 11:32:56 -05:00
Denis Kenzior d6838a2095 network: One more trivial fix
total_length and record_length are the same in this context, but using
total_length makes the code more readable
2011-04-14 17:33:40 -05:00
Denis Kenzior 1e00ed554c network: Refactor EFcsp to support STK Refresh 2011-04-14 17:02:22 -05:00
Denis Kenzior 441456503e network: Use strings instead of ints in settings 2011-04-14 17:02:22 -05:00
Denis Kenzior e4fda1e36d network: Read EFcsp after initializing reg state
This is to avoid some benign race conditions when EFcsp might be read
before the registration state has been established.
2011-04-14 17:02:22 -05:00
Denis Kenzior 49928bece3 network: Try not to clash with 27.007-defined modes 2011-04-14 17:02:22 -05:00
Denis Kenzior 59f32bd353 netreg: Refactor register_callback 2011-04-14 17:02:22 -05:00
Aki Niemi 41c42f1606 netreg: Add CPHS CSP implementation 2011-04-14 17:02:22 -05:00
Denis Kenzior 44953be406 network: Notify only registered emulator atoms 2011-03-30 13:06:57 -05:00
Denis Kenzior 6c9a6b064f network: Remove un-needed code
With the new add_atom_watch semantics the foreach statement is not
needed.
2011-03-30 12:38:14 -05:00
Frédéric Danis 3c3d00dac8 netreg: add +COPS support for HFP emulator 2011-03-29 21:52:37 -05:00
Marcel Holtmann 9ab7c19f69 build: Fix wrong include of public header 2011-03-01 23:07:50 -08:00
Frédéric Danis 2524bbffdd emulator: add support of indicators 2011-02-23 11:11:18 -06:00