8193596: java/net/DatagramPacket/ReuseBuf.java failed due to timeout
authordfuchs
Fri, 30 Aug 2019 12:44:52 +0100
changeset 57965 ef15850629cd
parent 57964 6bee0a3d2a3a
child 57966 e89c7aaf2906
child 57967 481a6a3449c8
8193596: java/net/DatagramPacket/ReuseBuf.java failed due to timeout Summary: The test is changed to bind to InetAddress.getLocalHost() instead of binding to the wildcard. Reviewed-by: alanb, dfuchs, msheppar Contributed-by: Patrick Concannon <catrick.concannon@oracle.com>
test/jdk/java/net/DatagramPacket/ReuseBuf.java
--- a/test/jdk/java/net/DatagramPacket/ReuseBuf.java	Wed Aug 28 20:05:43 2019 +0530
+++ b/test/jdk/java/net/DatagramPacket/ReuseBuf.java	Fri Aug 30 12:44:52 2019 +0100
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2019, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,7 +38,9 @@
         DatagramSocket ds;
         public ServerThread() {
             try {
-                ds = new DatagramSocket();
+                InetAddress local = InetAddress.getLocalHost();
+                InetSocketAddress bindaddr = new InetSocketAddress(local, 0);
+                ds = new DatagramSocket(bindaddr);
                 port = ds.getLocalPort();
             } catch (Exception e) {
                 throw new RuntimeException(e.getMessage());
@@ -68,7 +70,9 @@
     public static void main(String args[]) throws Exception {
         ServerThread st = new ServerThread();
         st.start();
-        DatagramSocket ds = new DatagramSocket();
+        InetAddress local = InetAddress.getLocalHost();
+        InetSocketAddress bindaddr = new InetSocketAddress(local, 0);
+        DatagramSocket ds = new DatagramSocket(bindaddr);
         byte b[] = new byte[100];
         DatagramPacket dp = new DatagramPacket(b,b.length);
         for (int i = 0; i < msgs.length; i++) {