Harmony
  1. Harmony
  2. HARMONY-6411

[classlib][luni]DatagramSock do NOT throw Exception

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.0M13
    • Component/s: Classlib
    • Labels:
      None

      Description

      Run following simple test case, got different results from RI:

      public static void main(String[] args) throws SocketException, IOException

      { InetSocketAddress sa = InetSocketAddress.createUnresolved("localhost",0); new DatagramSocket().send(new DatagramPacket(new byte[272], 3, sa)); }

      RI 5:
      Exception in thread "main" java.lang.NullPointerException: null address || null buffer
      at java.net.PlainDatagramSocketImpl.send(Native Method)
      at java.net.DatagramSocket.send(DatagramSocket.java:612)
      at DST2.main(DST2.java:10)
      Harmony 5: No Exception

      RI 6:
      Exception in thread "main" java.lang.IllegalArgumentException: unresolved address
      at java.net.DatagramPacket.setSocketAddress(DatagramPacket.java:295)
      at java.net.DatagramPacket.<init>(DatagramPacket.java:123)
      at java.net.DatagramPacket.<init>(DatagramPacket.java:158)
      at DST2.main(DST2.java:10)
      Harmony 6: No Exception

      According to the spec, InetSocketAddress.createUnresolved() says "A port number of zero will let the system pick up an ephemeral port in a bind operation."
      But DatagramPacket just says "throws IllegalArgumentException - if address type is not supported"

      Harmony's behavior should be as same as RI's

        Activity

        Hide
        Ray Chen added a comment -

        Please refer to JIRA-6412 and JIRA-6413

        Show
        Ray Chen added a comment - Please refer to JIRA-6412 and JIRA-6413

          People

          • Assignee:
            Unassigned
            Reporter:
            Ray Chen
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development