[rilmodem] Release parcel after message sending

Parcel needs to be released after message sending. Otherwise
there is a minor memory leak.

Signed-off-by: Jussi Kangas <jussi.kangas@oss.tieto.com>
[rilmodem] When sim stays on in offline mode PIN cache can be emptied

After modem is configured to keep SIM alive in offline mode PIN
cache can and should be tied to SIM presence notification. Note:
inserting this fix before modem configuration change will
effectively break PIN caching part of the hidden reset.

Signed-off-by: Jussi Kangas <jussi.kangas@oss.tieto.com>
[ofono] Make DTMF sending via rilmodem more robust

Loop DTMF requests via core, not via driver. Drop unused variables.

Signed-off-by: Martti Piirainen <martti.piirainen@oss.tieto.com>
[rilmodem] Set technology preference values to match recent RIL changes
[rilmodem] unregister unsolicited message

Signed-off-by: Jarko Poutiainen <Jarko.Poutiainen@oss.tieto.com>
[rilmodem] fix group queue cleanup

Signed-off-by: Jarko Poutiainen <Jarko.Poutiainen@oss.tieto.com>
[rilmodem] Check the ratmode and force it to be as configured

After flashing default rat mode might be different than configured. If
so, it needs to be set.

Signed-off-by: Jussi Kangas <jussi.kangas@oss.tieto.com>
[gdbus] Fix crash when disconnecting from D-Bus

Upstream commit:

From b4b4b35d0beac7340aed6da979f043dd1424a631 Mon Sep 17 00:00:00 2001
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Date: Mon, 9 Sep 2013 11:25:12 +0300
Subject: [PATCH 01/25] gdbus/watch: Fix crash when disconnecting from D-Bus

When disconnecting from D-Bus a message could be recieved with no sender:
Invalid read of size 1
   at 0x4A09EE1: strcmp (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x3B03C386B8: g_str_equal (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x4065D6: message_filter (watch.c:529)
   by 0x3B0700F9E5: dbus_connection_dispatch (in /usr/lib64/libdbus-1.so.3.7.4)
   by 0x4052E7: message_dispatch (mainloop.c:76)
   by 0x3B03C48962: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C47E05: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C48157: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C48559: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x4038C5: client_proxy_removed (test-gdbus-client.c:902)
   by 0x3B03C6B566: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C6B6E5: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
 Address 0x0 is not stack'd, malloc'd or (recently) free'd
[nettime] Prefer CLOCK_BOOTTIME over CLOCK_MONOTONIC

The CLOCK_MONOTONIC might get frozen during suspend.
CLOCK_BOOTTIME does not have this problem and should be used
when available.
[rilmodem] Queue DTMF requests in driver

Signed-off-by: Martti Piirainen <martti.piirainen@oss.tieto.com>
[smsutil] Allow partial conversion of UCS2 SMS

Signed-off-by: Martti Piirainen <martti.piirainen@oss.tieto.com>
[smsutil] Improve conversion of incoming UCS2 SMS to UTF-8

By this change characters found from incoming UCS2 SMS which are not part
of UTF-8 character set are passed to message manager API client as
Unicode escape characters (\uxxxx or \Uxxxxyyyy). The decoding codeset
has been changed from UCS-2BE to UTF-16BE as UTF-16 allows surrogates
(the use of two characters/four bytes to make one codepoint).

Signed-off-by: Petri Takalokastari <petri.takalokastari@oss.tieto.com>
[rilmodem] do not check spdi if mcc and mnc are not valid

It is possible that network is received before current operator
is retrieved. In rare occasions this causes crash when tried
to compare mnc and mcc of current operator to spdi.

Signed-off-by: Jussi Kangas <jussi.kangas@oss.tieto.com>
[rilmodem] numeric value can be null in response to RIL_REQUEST_OPERATOR

According to ril.h numeric value can be null in response to
RIL_REQUEST_OPERATOR. That means phone is unregistered and
current operator should return error

Signed-off-by: Jussi Kangas <jussi.kangas@oss.tieto.com>
[ofono] Handle gril ioconnection shutdown by exit

Before: gril connection hand up (G_IO_HUP) causes ofono gril
to shutdown and no messages are handled.
After: gril notifies ril plugin which emits a message
to clients and exits ofono.

Signed-off-by: Tommi Kenakkala <tommi.kenakkala@oss.tieto.com>