summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/com/android/mms/service/MmsHttpClient.java43
-rw-r--r--src/com/android/mms/service/MmsService.java3
-rw-r--r--src/com/android/mms/service/PhoneUtils.java4
3 files changed, 41 insertions, 9 deletions
diff --git a/src/com/android/mms/service/MmsHttpClient.java b/src/com/android/mms/service/MmsHttpClient.java
index 281d9b6..1099b64 100644
--- a/src/com/android/mms/service/MmsHttpClient.java
+++ b/src/com/android/mms/service/MmsHttpClient.java
@@ -105,7 +105,7 @@ public class MmsHttpClient {
public byte[] execute(String urlString, byte[] pdu, String method, boolean isProxySet,
String proxyHost, int proxyPort, MmsConfig.Overridden mmsConfig)
throws MmsHttpException {
- Log.d(MmsService.TAG, "HTTP: " + method + " " + urlString
+ Log.d(MmsService.TAG, "HTTP: " + method + " " + redactUrlForNonVerbose(urlString)
+ (isProxySet ? (", proxy=" + proxyHost + ":" + proxyPort) : "")
+ ", PDU size=" + (pdu != null ? pdu.length : 0));
checkMethod(method);
@@ -193,11 +193,13 @@ public class MmsHttpClient {
+ (responseBody != null ? responseBody.length : 0));
return responseBody;
} catch (MalformedURLException e) {
- Log.e(MmsService.TAG, "HTTP: invalid URL " + urlString, e);
- throw new MmsHttpException(0/*statusCode*/, "Invalid URL " + urlString, e);
+ final String redactedUrl = redactUrlForNonVerbose(urlString);
+ Log.e(MmsService.TAG, "HTTP: invalid URL " + redactedUrl, e);
+ throw new MmsHttpException(0/*statusCode*/, "Invalid URL " + redactedUrl, e);
} catch (ProtocolException e) {
- Log.e(MmsService.TAG, "HTTP: invalid URL protocol " + urlString, e);
- throw new MmsHttpException(0/*statusCode*/, "Invalid URL protocol " + urlString, e);
+ final String redactedUrl = redactUrlForNonVerbose(urlString);
+ Log.e(MmsService.TAG, "HTTP: invalid URL protocol " + redactedUrl, e);
+ throw new MmsHttpException(0/*statusCode*/, "Invalid URL protocol " + redactedUrl, e);
} catch (IOException e) {
Log.e(MmsService.TAG, "HTTP: IO failure", e);
throw new MmsHttpException(0/*statusCode*/, e);
@@ -380,4 +382,35 @@ public class MmsHttpClient {
}
}
}
+
+ /**
+ * Redact the URL for non-VERBOSE logging. Replace url with only the host part and the length
+ * of the input URL string.
+ *
+ * @param urlString
+ * @return
+ */
+ public static String redactUrlForNonVerbose(String urlString) {
+ if (Log.isLoggable(MmsService.TAG, Log.VERBOSE)) {
+ // Don't redact for VERBOSE level logging
+ return urlString;
+ }
+ if (TextUtils.isEmpty(urlString)) {
+ return urlString;
+ }
+ String protocol = "http";
+ String host = "";
+ try {
+ final URL url = new URL(urlString);
+ protocol = url.getProtocol();
+ host = url.getHost();
+ } catch (MalformedURLException e) {
+ // Ignore
+ }
+ // Print "http://host[length]"
+ final StringBuilder sb = new StringBuilder();
+ sb.append(protocol).append("://").append(host)
+ .append("[").append(urlString.length()).append("]");
+ return sb.toString();
+ }
}
diff --git a/src/com/android/mms/service/MmsService.java b/src/com/android/mms/service/MmsService.java
index 09a86a9..8c31e71 100644
--- a/src/com/android/mms/service/MmsService.java
+++ b/src/com/android/mms/service/MmsService.java
@@ -64,7 +64,6 @@ import java.util.Arrays;
import java.util.List;
import java.util.Queue;
import java.util.concurrent.Callable;
-import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
@@ -204,7 +203,7 @@ public class MmsService extends Service implements MmsRequest.RequestManager {
public void downloadMessage(int subId, String callingPkg, String locationUrl,
Uri contentUri, Bundle configOverrides,
PendingIntent downloadedIntent) throws RemoteException {
- Log.d(TAG, "downloadMessage: " + locationUrl);
+ Log.d(TAG, "downloadMessage: " + MmsHttpClient.redactUrlForNonVerbose(locationUrl));
enforceSystemUid();
// Make sure the subId is correct
subId = checkSubId(subId);
diff --git a/src/com/android/mms/service/PhoneUtils.java b/src/com/android/mms/service/PhoneUtils.java
index fc1ff4b..8de881a 100644
--- a/src/com/android/mms/service/PhoneUtils.java
+++ b/src/com/android/mms/service/PhoneUtils.java
@@ -60,12 +60,12 @@ public class PhoneUtils {
if (phoneNumberUtil.isValidNumber(phoneNumber)) {
return phoneNumber;
} else {
- Log.e(MmsService.TAG, "getParsedNumber: not a valid phone number " + phoneText
+ Log.e(MmsService.TAG, "getParsedNumber: not a valid phone number"
+ " for country " + country);
return null;
}
} catch (final NumberParseException e) {
- Log.e(MmsService.TAG, "getParsedNumber: Not able to parse phone number " + phoneText);
+ Log.e(MmsService.TAG, "getParsedNumber: Not able to parse phone number");
return null;
}
}