DcTracker: Don't leave CMD_IS_PROVISIONING_APN dangling

Change I99344d89235b24689cde14335bf593099169ef0d exited the message
handler without a reply to the caller, leaving the singlethread queue
waiting for a reply and blocking other async tasks.

Change-Id: If12361c0037e9ca0662d720acfe55215924b67fd
Frameworks : Make sure a reply is sent when not provisioning default apn

Not doing so holds up the entire async executor service and breaks things like
loading icons in the share dialog. To reproduce :

Upon boot, take screenshot and click share in the notification.

Change-Id: I1b1443bfa42d62b99881e770c08f79ebe3673139
Added support for DC-HSPA+ also in opt/telephony

Change-Id: Ieb6b36a418dcf5570156458aa5169b3bb831d19a
Fix Samsung STK code for msim

Change-Id: I726f03351f42ce58b8387fad20adfac224c28199
Telephony: Allow ruim to fetch in CDMA LTE mode

... if device has LTE in NV mode.
Fixes cases where iccid could be unknown on some CDMA NV devices.

Change-Id: Ie8e676a59e20c6da70eded511a979022667aa6fa
SamsungExynos4RIL: buffer CAT Proactive Command

The RIL sends a CAT proactive command (init) before the registrant
is registered causing the command to be missed and STK menu to
not show up. Buffer it and fire it when the registrant is registered.

Change-Id: I021ce911e55b30c1a2d95d8060f7d9ff72e3b742
Telephony: DcTracker: Fix CDMA APN Data issues.

Fix CDMA data issue when it can't find an APN match. This fixes cases
CDMA NV or RIUM/SIM doesn't have the information to pass on.
It assumes GSM like mode on CDMA. So fix that and pass on to CDMA
stubbed apn found in android 4.2.

Change-Id: Ib4467dd955eb71cbc5781db965d34357b7d4d2d9
Remove SemcQualcomm7x30RIL

There's no officially supported device using this.
We'll put it in the device tree making it easier to maintain

Change-Id: I512841331ec4d126b23312f1d79153d2574e0c16
Telephony: Bring back older IMSI method for legacy RIL

Non-MSIM RIL don't support the newer method.

Change-Id: Iccef3086f28ac1ae72c85b9143e6df84e3b1c08b
SamsungQualcommRIL: fix power on and off state

 remove obsolete code

Change-Id: Ib7b288e50e603ff91ac715113db9dc1769a3a09f
DCTracker: upgrade stubbed apn to Qcril Standard.

* this is still needed because sprint lte and legacy
 has the same operator numeric are not passing the check to
 lte apn is filled and not passing mDps.empty() check.
Change-Id: Ic13235744fca561cff4d49ae5c799420c30b3840
DcTracker: wait for default apn to disconnect before setting up new

Including the removal of a previous attempt to fix this issue:

Revert "Frameworks : Make sure a reply is sent when not provisioning default apn"

This reverts commit 8733a2d2a1c5c88f661c4d6947cc9eb8f27d4874.

Revert "DcTrackerBase: Dont provision APN if default is disconnecting"

This reverts commit cf13f20b88c5add9d2e8ea74b8fe9fbeb88101b2.

Change-Id: I8181dca843eb3de4be68c5b2be6aac9d81732558
Telephony: fix null pointer exception

	that could force close phone app
	while inserting/modifying/deleting SIM contacts

Change-Id: I769cb184062c67af0d231c3d903e301c43ded335
Telephony: Mock SMS (2/4)

This change brings the possibility of simulate the reception of SMS on real devices.
This change adds a MockSmsReceiver inside SMSDispatcher that have a BroadcastReceiver listening
for Intents.MOCK_SMS_RECEIVED_ACTION actions. This class accept the SMS simulation if and only if
Settings.Secure.ALLOW_MOCK_SMS is enabled and the sender application has the
"android.permission.SEND_MOCK_SMS" permission.

This receiver should be used in the next way:

Devs should declare <uses-permission android:name="android.permission.SEND_MOCK_SMS" />
and call it with:

Intent in = new Intent(Intents.MOCK_SMS_RECEIVED_ACTION);
in.putExtra("scAddr", "+01123456789");
in.putExtra("senderAddr", "+01123456789");
in.putExtra("msg", "This is a mock SMS message.");
sendBroadcast(in);

or

String pdu = "07914151551512f2040B916105551511f100006060605130308A04D4F29C0E";
byte[][] pdus = new byte[1][];
pdus[0] = HexDump.hexStringToByteArray(pdu);
Intent in = new Intent(Intents.MOCK_SMS_RECEIVED_ACTION);
intent.putExtra("pdus", pdus);
sendBroadcast(in);

Ported from http://review.cyanogenmod.org/#/c/23017 + Some changes:

* Move receiver to ImsSMSDispatcher class
* Send message as SMS_DELIVER_ACTION action, so it send to the registered SMS app

Change-Id: I14cab3d8ceb484df71a676dcfa44ca1634be908d
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>