From 58ee2acba8953814cc4bf65d2f28f7dd498b5779 Mon Sep 17 00:00:00 2001 From: Hung-ying Tyan Date: Thu, 16 Dec 2010 20:46:50 +0800 Subject: 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 --- voip/java/android/net/sip/SipProfile.java | 2 +- voip/java/com/android/server/sip/SipSessionGroup.java | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'voip/java') 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) { -- cgit v1.1