Add private permission for sending SMS via Messaging app

When the phone dialer sends an sms, it will use the Messaging app.
That way the sent messages will end up in the messaging provider db
and sending will be more reliable. Currently, the phone dialer
uses the SmsManager directly. For now, the feature is only
available to system apps and the permission is private. Bug 4563486

Change-Id: I10f7e1042683164ee61d01a2aaf738d19084da72
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index dc0106c..b9868db 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -122,6 +122,15 @@
         android:label="@string/permlab_sendSms"
         android:description="@string/permdesc_sendSms" />
 
+    <!-- Allows an application to send SMS messages via the Messaging app with no user
+         input or confirmation.
+         @hide -->
+    <permission android:name="android.permission.SEND_SMS_NO_CONFIRMATION"
+        android:permissionGroup="android.permission-group.COST_MONEY"
+        android:protectionLevel="signatureOrSystem"
+        android:label="@string/permlab_sendSmsNoConfirmation"
+        android:description="@string/permdesc_sendSmsNoConfirmation" />
+
     <!-- Allows an application to initiate a phone call without going through
          the Dialer user interface for the user to confirm the call
          being placed. -->
@@ -1413,7 +1422,7 @@
         android:description="@string/permdesc_modifyNetworkAccounting"
         android:protectionLevel="signatureOrSystem" />
 
-    <!-- C2DM permission. 
+    <!-- C2DM permission.
          @hide Used internally.
      -->
     <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index 6b0c6a3..e065753 100755
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -474,6 +474,13 @@
       messages. Malicious applications may cost you money by sending
       messages without your confirmation.</string>
 
+     <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
+    <string name="permlab_sendSmsNoConfirmation">send SMS messages with no confirmation</string>
+    <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
+    <string name="permdesc_sendSmsNoConfirmation">Allows application to send SMS
+      messages. Malicious applications may cost you money by sending
+      messages without your confirmation.</string>
+
     <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
     <string name="permlab_readSms">read SMS or MMS</string>
     <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
@@ -933,19 +940,19 @@
     <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
     <string name="permlab_readCalendar">read calendar events plus confidential information</string>
     <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
-    <string name="permdesc_readCalendar" product="tablet">Allows an application to read all calendar 
+    <string name="permdesc_readCalendar" product="tablet">Allows an application to read all calendar
         events stored on your tablet, including those of friends or coworkers. A malicious application with
         this permission can extract personal information from these calendars without the owners\' knowledge.</string>
     <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
-    <string name="permdesc_readCalendar" product="default">Allows an application to read all calendar 
+    <string name="permdesc_readCalendar" product="default">Allows an application to read all calendar
         events stored on your phone, including those of friends or coworkers. A malicious application with
         this permission can extract personal information from these calendars without the owners\' knowledge.</string>
 
     <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
     <string name="permlab_writeCalendar">add or modify calendar events and send email to guests without owners\' knowledge</string>
     <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
-    <string name="permdesc_writeCalendar">Allows an application to send event invitations as the calendar owner and add, remove, 
-        change events that you can modify on your device, including those of friends or co-workers. A malicious application with this permission 
+    <string name="permdesc_writeCalendar">Allows an application to send event invitations as the calendar owner and add, remove,
+        change events that you can modify on your device, including those of friends or co-workers. A malicious application with this permission
         can send spam emails that appear to come from calendar owners, modify events without the owners\' knowledge, or add fake events.</string>
 
     <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->