diff options
author | Hung-ying Tyan <tyanh@google.com> | 2010-12-16 20:46:50 +0800 |
---|---|---|
committer | Hung-ying Tyan <tyanh@google.com> | 2010-12-16 20:46:50 +0800 |
commit | 58ee2acba8953814cc4bf65d2f28f7dd498b5779 (patch) | |
tree | 00bb9d5ae633bf92712b03088cc3ad483dff7284 | |
parent | 4ea442b49c2f44c180346fe780a2b8c9766b587b (diff) | |
download | frameworks_base-58ee2acba8953814cc4bf65d2f28f7dd498b5779.zip frameworks_base-58ee2acba8953814cc4bf65d2f28f7dd498b5779.tar.gz frameworks_base-58ee2acba8953814cc4bf65d2f28f7dd498b5779.tar.bz2 |
Check port in create peer's SIP profile.
SipURI returns port -1 when port is not present in the URI.
Don't call SipProfile.Builder.setPort() when that happens.
Bug: 3291248
Change-Id: I8e608cbc56ea82862df55fdba885f6a864db83ab
-rw-r--r-- | voip/java/android/net/sip/SipProfile.java | 2 | ||||
-rw-r--r-- | voip/java/com/android/server/sip/SipSessionGroup.java | 10 |
2 files changed, 7 insertions, 5 deletions
diff --git a/voip/java/android/net/sip/SipProfile.java b/voip/java/android/net/sip/SipProfile.java index 4029ed0..f8fd2b7 100644 --- a/voip/java/android/net/sip/SipProfile.java +++ b/voip/java/android/net/sip/SipProfile.java @@ -177,7 +177,7 @@ public class SipProfile implements Parcelable, Serializable, Cloneable { */ public Builder setPort(int port) throws IllegalArgumentException { if ((port > 65535) || (port < 1000)) { - throw new IllegalArgumentException("incorrect port arugment"); + throw new IllegalArgumentException("incorrect port arugment: " + port); } mProfile.mPort = port; return this; diff --git a/voip/java/com/android/server/sip/SipSessionGroup.java b/voip/java/com/android/server/sip/SipSessionGroup.java index 30ddfb5..edf8b52 100644 --- a/voip/java/com/android/server/sip/SipSessionGroup.java +++ b/voip/java/com/android/server/sip/SipSessionGroup.java @@ -1333,10 +1333,12 @@ class SipSessionGroup implements SipListener { SipURI uri = (SipURI) address.getURI(); String username = uri.getUser(); if (username == null) username = ANONYMOUS; - return new SipProfile.Builder(username, uri.getHost()) - .setPort(uri.getPort()) - .setDisplayName(address.getDisplayName()) - .build(); + int port = uri.getPort(); + SipProfile.Builder builder = + new SipProfile.Builder(username, uri.getHost()) + .setDisplayName(address.getDisplayName()); + if (port > 0) builder.setPort(port); + return builder.build(); } catch (IllegalArgumentException e) { throw new SipException("createPeerProfile()", e); } catch (ParseException e) { |