--- ../original/packages/apps/Mms//res/values/strings.xml	2009-07-01 22:04:57.000000000 +0900
+++ packages/apps/Mms//res/values/strings.xml	2009-07-01 19:26:23.000000000 +0900
@@ -332,6 +332,17 @@
     <!-- Settings item description for boolean MMS auto-retrieve while roaming option -->
     <string name="pref_summary_mms_retrieval_during_roaming">Automatically retrieve messages while roaming</string>
 
+    <!-- Settings item title for User-Agent Alteration-->
+    <string name="pref_title_mms_useragent">User-Agent String</string>
+    <!-- Settings item description for User-Agent Alteration -->
+    <string name="pref_summary_mms_useragent">Change MMS HTTP Client User-Agent String</string>
+    <!-- Settings item description for User-Agent Alteration -->
+    <string name="pref_key_mms_useragent">User-Agent String</string>
+    <!-- Settings item description for User-Agent Alteration -->
+    <string name="pref_dialogtitle_mms_useragent">Change MMS HTTP Client User-Agent String</string>
+    <!-- Settings item default value for User-Agent Alteration -->
+    <string name="pref_default_mms_useragent">Android-Mms/0.1</string>
+
     <!-- Label prepended to recipient's name in Undelivered Messages screen -->
     <string name="to_label">"To "</string>
 
--- ../original/packages/apps/Mms//res/xml/preferences.xml	2009-07-01 19:02:46.000000000 +0900
+++ packages/apps/Mms//res/xml/preferences.xml	2009-07-01 19:47:58.000000000 +0900
@@ -47,6 +47,15 @@
                         android:key="pref_key_mms_retrieval_during_roaming"
                         android:title="@string/pref_title_mms_retrieval_during_roaming"
                         android:summary="@string/pref_summary_mms_retrieval_during_roaming" />
+    <EditTextPreference
+			android:key="pref_key_mms_useragent"
+			android:title="@string/pref_title_mms_useragent"
+			android:summary="@string/pref_summary_mms_useragent"
+			android:dialogTitle="@string/pref_dialogtitle_mms_useragent"
+                       android:defaultValue="@string/pref_default_mms_useragent"
+                       android:singleLine="true"
+			/>
+
   </PreferenceCategory>
   <PreferenceCategory android:title="@string/pref_notification_settings_title">
     <CheckBoxPreference android:key="pref_key_enable_notifications"
--- ../original/packages/apps/Mms//src/com/android/mms/transaction/HttpUtils.java	2009-07-01 21:10:50.000000000 +0900
+++ packages/apps/Mms//src/com/android/mms/transaction/HttpUtils.java	2009-07-01 21:57:16.000000000 +0900
@@ -16,6 +16,11 @@
  */
 
 package com.android.mms.transaction;
+
+import com.android.mms.ui.MessagingPreferenceActivity;
+import android.content.SharedPreferences;
+import android.preference.PreferenceManager;
+
 import org.apache.http.HttpEntity;
 import org.apache.http.HttpHost;
 import org.apache.http.HttpRequest;
@@ -84,6 +89,10 @@
      * @throws IOException if any error occurred on network interface or
      *         an HTTP error code(&gt;=400) returned from the server.
      */
+
+    static SharedPreferences prefs;
+    static String useragent;
+
     protected static byte[] httpConnection(Context context, long token,
             String url, byte[] pdu, int method, boolean isProxySet,
             String proxyHost, int proxyPort) throws IOException {
@@ -91,6 +100,10 @@
             throw new IllegalArgumentException("URL must not be null.");
         }
 
+    prefs = PreferenceManager.getDefaultSharedPreferences(context);
+    useragent = prefs.getString( MessagingPreferenceActivity.USERAGENT, "KUBA" );
+    Log.v(TAG, "KUBA, UserAgent string: "+useragent);
+
         if (LOCAL_LOGV) {
             Log.v(TAG, "httpConnection: params list");
             Log.v(TAG, "\ttoken\t\t= " + token);
@@ -220,7 +233,7 @@
 
     private static AndroidHttpClient createHttpClient() {
         AndroidHttpClient client
-                = AndroidHttpClient.newInstance("Android-Mms/0.1");
+                = AndroidHttpClient.newInstance(useragent);
         HttpParams params = client.getParams();
         HttpProtocolParams.setContentCharset(params, "UTF-8");
         return client;
--- ../original/packages/apps/Mms//src/com/android/mms/ui/MessagingPreferenceActivity.java	2009-07-01 19:01:50.000000000 +0900
+++ packages/apps/Mms//src/com/android/mms/ui/MessagingPreferenceActivity.java	2009-07-01 21:33:36.000000000 +0900
@@ -58,6 +58,7 @@
     public static final String NOTIFICATION_RINGTONE    = "pref_key_ringtone";
     public static final String AUTO_RETRIEVAL           = "pref_key_mms_auto_retrieval";
     public static final String RETRIEVAL_DURING_ROAMING = "pref_key_mms_retrieval_during_roaming";
+    public static final String USERAGENT		= "pref_key_mms_useragent";
 
     // Menu entries
     private static final int MENU_RESTORE_DEFAULTS    = 1;
