You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Vladimir Ivanov (JIRA)" <ji...@apache.org> on 2006/07/17 09:51:14 UTC
[jira] Created: (HARMONY-890) [classlib][net] compatibility:
incorrect default port number for new DatagramPacket(new byte[], int)
[classlib][net] compatibility: incorrect default port number for new DatagramPacket(new byte[], int)
----------------------------------------------------------------------------------------------------
Key: HARMONY-890
URL: http://issues.apache.org/jira/browse/HARMONY-890
Project: Harmony
Issue Type: Bug
Components: Classlib
Reporter: Vladimir Ivanov
The Harmony method new DatagramPacket(new byte[], int) construct the object with '0' port number while RI with '-1'.
It leads to different exception behavior for Harmony vs RI.
===================== test.java ====================
import java.net.*;
public class test {
public static void main (String [] args) {
try {
System.out.println("getPort = " + new DatagramPacket(new byte[942],4).getPort());
} catch (Exception e) {
e.printStackTrace();
}
try {
System.out.println("getSocketAddress = " + new DatagramPacket(new byte[942],4).getSocketAddress());
} catch (Exception e) {
e.printStackTrace();
}
}
}
================================================
Output:
C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
getPort = -1
java.lang.IllegalArgumentException: port out of range:-1
at java.net.InetSocketAddress.<init>(InetSocketAddress.java:83)
at java.net.DatagramPacket.getSocketAddress()Ljava.net.SocketAddress;(Unknown Source)
at test.main(test.java:11)
C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
java version 1.5 (subset)
(c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
getPort = 0
getSocketAddress = 0.0.0.0/0.0.0.0:0
C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -cp . -showversion test
Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug
getPort = 0
getSocketAddress = 0.0.0.0/0.0.0.0:0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Updated: (HARMONY-890) [classlib][net] compatibility:
incorrect default port number for new DatagramPacket(new byte[], int)
Posted by "spark shen (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/HARMONY-890?page=all ]
spark shen updated HARMONY-890:
-------------------------------
Attachment: 890.diff
The old patch of JIRA 890 is outdated. I update the patch for
this JIRA. Would you please try this patch?
Best regards
> [classlib][net] compatibility: incorrect default port number for new DatagramPacket(new byte[], int)
> ----------------------------------------------------------------------------------------------------
>
> Key: HARMONY-890
> URL: http://issues.apache.org/jira/browse/HARMONY-890
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Attachments: 890.diff, DatagramPacket.patch
>
>
> The Harmony method new DatagramPacket(new byte[], int) construct the object with '0' port number while RI with '-1'.
> It leads to different exception behavior for Harmony vs RI.
> ===================== test.java ====================
> import java.net.*;
> public class test {
> public static void main (String [] args) {
> try {
> System.out.println("getPort = " + new DatagramPacket(new byte[942],4).getPort());
> } catch (Exception e) {
> e.printStackTrace();
> }
> try {
> System.out.println("getSocketAddress = " + new DatagramPacket(new byte[942],4).getSocketAddress());
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> ================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> getPort = -1
> java.lang.IllegalArgumentException: port out of range:-1
> at java.net.InetSocketAddress.<init>(InetSocketAddress.java:83)
> at java.net.DatagramPacket.getSocketAddress()Ljava.net.SocketAddress;(Unknown Source)
> at test.main(test.java:11)
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
> C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -cp . -showversion test
> Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Updated: (HARMONY-890) [classlib][net] compatibility:
incorrect default port number for new DatagramPacket(new byte[], int)
Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/HARMONY-890?page=all ]
Vladimir Ivanov updated HARMONY-890:
------------------------------------
Attachment: DatagramPacket.patch
unit test + patch
> [classlib][net] compatibility: incorrect default port number for new DatagramPacket(new byte[], int)
> ----------------------------------------------------------------------------------------------------
>
> Key: HARMONY-890
> URL: http://issues.apache.org/jira/browse/HARMONY-890
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Attachments: DatagramPacket.patch
>
>
> The Harmony method new DatagramPacket(new byte[], int) construct the object with '0' port number while RI with '-1'.
> It leads to different exception behavior for Harmony vs RI.
> ===================== test.java ====================
> import java.net.*;
> public class test {
> public static void main (String [] args) {
> try {
> System.out.println("getPort = " + new DatagramPacket(new byte[942],4).getPort());
> } catch (Exception e) {
> e.printStackTrace();
> }
> try {
> System.out.println("getSocketAddress = " + new DatagramPacket(new byte[942],4).getSocketAddress());
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> ================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> getPort = -1
> java.lang.IllegalArgumentException: port out of range:-1
> at java.net.InetSocketAddress.<init>(InetSocketAddress.java:83)
> at java.net.DatagramPacket.getSocketAddress()Ljava.net.SocketAddress;(Unknown Source)
> at test.main(test.java:11)
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
> C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -cp . -showversion test
> Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Closed: (HARMONY-890) [classlib][net] compatibility:
incorrect default port number for new DatagramPacket(new byte[], int)
Posted by "Paulex Yang (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/HARMONY-890?page=all ]
Paulex Yang closed HARMONY-890.
-------------------------------
Verified by Vladimir.
> [classlib][net] compatibility: incorrect default port number for new DatagramPacket(new byte[], int)
> ----------------------------------------------------------------------------------------------------
>
> Key: HARMONY-890
> URL: http://issues.apache.org/jira/browse/HARMONY-890
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Assigned To: Paulex Yang
> Attachments: 890.diff, DatagramPacket.patch
>
>
> The Harmony method new DatagramPacket(new byte[], int) construct the object with '0' port number while RI with '-1'.
> It leads to different exception behavior for Harmony vs RI.
> ===================== test.java ====================
> import java.net.*;
> public class test {
> public static void main (String [] args) {
> try {
> System.out.println("getPort = " + new DatagramPacket(new byte[942],4).getPort());
> } catch (Exception e) {
> e.printStackTrace();
> }
> try {
> System.out.println("getSocketAddress = " + new DatagramPacket(new byte[942],4).getSocketAddress());
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> ================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> getPort = -1
> java.lang.IllegalArgumentException: port out of range:-1
> at java.net.InetSocketAddress.<init>(InetSocketAddress.java:83)
> at java.net.DatagramPacket.getSocketAddress()Ljava.net.SocketAddress;(Unknown Source)
> at test.main(test.java:11)
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
> C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -cp . -showversion test
> Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Resolved: (HARMONY-890) [classlib][net] compatibility:
incorrect default port number for new DatagramPacket(new byte[], int)
Posted by "Paulex Yang (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/HARMONY-890?page=all ]
Paulex Yang resolved HARMONY-890.
---------------------------------
Resolution: Fixed
Vladimir and Spark, updated patch applied at revision r448767, thanks a lot for this enhancement. Please verify the problem is fully resolved as you expected.
> [classlib][net] compatibility: incorrect default port number for new DatagramPacket(new byte[], int)
> ----------------------------------------------------------------------------------------------------
>
> Key: HARMONY-890
> URL: http://issues.apache.org/jira/browse/HARMONY-890
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Assigned To: Paulex Yang
> Attachments: 890.diff, DatagramPacket.patch
>
>
> The Harmony method new DatagramPacket(new byte[], int) construct the object with '0' port number while RI with '-1'.
> It leads to different exception behavior for Harmony vs RI.
> ===================== test.java ====================
> import java.net.*;
> public class test {
> public static void main (String [] args) {
> try {
> System.out.println("getPort = " + new DatagramPacket(new byte[942],4).getPort());
> } catch (Exception e) {
> e.printStackTrace();
> }
> try {
> System.out.println("getSocketAddress = " + new DatagramPacket(new byte[942],4).getSocketAddress());
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> ================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> getPort = -1
> java.lang.IllegalArgumentException: port out of range:-1
> at java.net.InetSocketAddress.<init>(InetSocketAddress.java:83)
> at java.net.DatagramPacket.getSocketAddress()Ljava.net.SocketAddress;(Unknown Source)
> at test.main(test.java:11)
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
> C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -cp . -showversion test
> Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Commented: (HARMONY-890) [classlib][net] compatibility:
incorrect default port number for new DatagramPacket(new byte[], int)
Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/HARMONY-890?page=comments#action_12436732 ]
Vladimir Ivanov commented on HARMONY-890:
-----------------------------------------
verified, thanks
> [classlib][net] compatibility: incorrect default port number for new DatagramPacket(new byte[], int)
> ----------------------------------------------------------------------------------------------------
>
> Key: HARMONY-890
> URL: http://issues.apache.org/jira/browse/HARMONY-890
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Assigned To: Paulex Yang
> Attachments: 890.diff, DatagramPacket.patch
>
>
> The Harmony method new DatagramPacket(new byte[], int) construct the object with '0' port number while RI with '-1'.
> It leads to different exception behavior for Harmony vs RI.
> ===================== test.java ====================
> import java.net.*;
> public class test {
> public static void main (String [] args) {
> try {
> System.out.println("getPort = " + new DatagramPacket(new byte[942],4).getPort());
> } catch (Exception e) {
> e.printStackTrace();
> }
> try {
> System.out.println("getSocketAddress = " + new DatagramPacket(new byte[942],4).getSocketAddress());
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> ================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> getPort = -1
> java.lang.IllegalArgumentException: port out of range:-1
> at java.net.InetSocketAddress.<init>(InetSocketAddress.java:83)
> at java.net.DatagramPacket.getSocketAddress()Ljava.net.SocketAddress;(Unknown Source)
> at test.main(test.java:11)
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
> C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -cp . -showversion test
> Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Assigned: (HARMONY-890) [classlib][net] compatibility:
incorrect default port number for new DatagramPacket(new byte[], int)
Posted by "Paulex Yang (JIRA)" <ji...@apache.org>.
[ http://issues.apache.org/jira/browse/HARMONY-890?page=all ]
Paulex Yang reassigned HARMONY-890:
-----------------------------------
Assignee: Paulex Yang
> [classlib][net] compatibility: incorrect default port number for new DatagramPacket(new byte[], int)
> ----------------------------------------------------------------------------------------------------
>
> Key: HARMONY-890
> URL: http://issues.apache.org/jira/browse/HARMONY-890
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Assigned To: Paulex Yang
> Attachments: 890.diff, DatagramPacket.patch
>
>
> The Harmony method new DatagramPacket(new byte[], int) construct the object with '0' port number while RI with '-1'.
> It leads to different exception behavior for Harmony vs RI.
> ===================== test.java ====================
> import java.net.*;
> public class test {
> public static void main (String [] args) {
> try {
> System.out.println("getPort = " + new DatagramPacket(new byte[942],4).getPort());
> } catch (Exception e) {
> e.printStackTrace();
> }
> try {
> System.out.println("getSocketAddress = " + new DatagramPacket(new byte[942],4).getSocketAddress());
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
> ================================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized over throughput (initial strategy singleparpar))
> getPort = -1
> java.lang.IllegalArgumentException: port out of range:-1
> at java.net.InetSocketAddress.<init>(InetSocketAddress.java:83)
> at java.net.DatagramPacket.getSocketAddress()Ljava.net.SocketAddress;(Unknown Source)
> at test.main(test.java:11)
> C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -cp . -showversion test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
> C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -cp . -showversion test
> Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug
> getPort = 0
> getSocketAddress = 0.0.0.0/0.0.0.0:0
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira