[jboss-remoting-commits] JBoss Remoting SVN: r3847 - remoting2/branches/2.x/src/main/org/jboss/remoting/transport.

jboss-remoting-commits at lists.jboss.org jboss-remoting-commits at lists.jboss.org
Wed Apr 2 00:15:09 EDT 2008


Author: ron.sigal at jboss.com
Date: 2008-04-02 00:15:09 -0400 (Wed, 02 Apr 2008)
New Revision: 3847

Modified:
   remoting2/branches/2.x/src/main/org/jboss/remoting/transport/AddressUtil.java
Log:
JBREM-934: Put InetAddress.getByName() call in AccessController.doPrivileged() call.

Modified: remoting2/branches/2.x/src/main/org/jboss/remoting/transport/AddressUtil.java
===================================================================
--- remoting2/branches/2.x/src/main/org/jboss/remoting/transport/AddressUtil.java	2008-04-02 04:13:18 UTC (rev 3846)
+++ remoting2/branches/2.x/src/main/org/jboss/remoting/transport/AddressUtil.java	2008-04-02 04:15:09 UTC (rev 3847)
@@ -22,10 +22,10 @@
 */
 package org.jboss.remoting.transport;
 
-import java.io.IOException;
 import java.net.InetAddress;
 import java.net.ServerSocket;
 import java.net.Socket;
+import java.net.UnknownHostException;
 import java.security.AccessController;
 import java.security.PrivilegedActionException;
 import java.security.PrivilegedExceptionAction;
@@ -52,13 +52,29 @@
       return checkAddress(host, 5000);
    }
    
-   public static boolean checkAddress(String host, int timeout) throws Exception
+   public static boolean checkAddress(final String host, int timeout) throws Exception
    {
       try
       {
          log.trace("checking host: " + host);
          int port = PortUtil.findFreePort(host);
-         InetAddress addr = InetAddress.getByName(host);
+         
+         InetAddress addr = null;
+         try
+         {
+            addr = (InetAddress)AccessController.doPrivileged( new PrivilegedExceptionAction()
+            {
+               public Object run() throws UnknownHostException
+               {
+                  return InetAddress.getByName(host);
+               }
+            });
+         }
+         catch (PrivilegedActionException e)
+         {
+            throw (UnknownHostException) e.getCause();
+         }
+         
          ServerTestThread t1 = new ServerTestThread(addr, port);
          t1.setDaemon(true);
          t1.start();




More information about the jboss-remoting-commits mailing list