[ http://issues.apache.org/jira/browse/JAMES-302?page=all ]

Stefano Bagnara updated JAMES-302:
----------------------------------

    Fix Version: 2.3.0
                     (was: 2.1.3)
    Description: 
org.apache.james.dnsserver.DNSServer.getByName(String) does not always return 
the same result as java.net.InetAddress.getByName(address). Sometimes an 
exception is thrown when the standard implementation does not.

When passed a fully qualified domain name the results are the same. When passed 
a hostname or the special name 'localhost', a java.net.UnknownHostException is 
thrown by org.apache.james.dnsserver.DNSServer while java.net.InetAddress 
resolves the addresses correctly.

This is a critical issue as in v2.2.0 java.net.InetAddress.getByName() has 
pretty thoroughly been replaced by 
org.apache.james.dnsserver.DNSServer.getByName(), but in the noted 
circumstances it doesn't perform the same. Dependent code breaks.

Here are the contrasting examples...

// FAILS
String address = "localhost";
java.net.InetAddress inetAddress = 
org.apache.james.dnsserver.DNSServer.getByName(address);
return inetAddress;

// FAILS
String address = "hostname";
java.net.InetAddress inetAddress = 
org.apache.james.dnsserver.DNSServer.getByName(address);
return inetAddress;

// SUCCEEDS
String address = "localhost";
java.net.InetAddress inetAddress = java.net.InetAddress.getByName(address);
return inetAddress;

// SUCCEEDS
String address = "hostname";
java.net.InetAddress inetAddress = java.net.InetAddress.getByName(address);
return inetAddress;

  was:
org.apache.james.dnsserver.DNSServer.getByName(String) does not always return 
the same result as java.net.InetAddress.getByName(address). Sometimes an 
exception is thrown when the standard implementation does not.

When passed a fully qualified domain name the results are the same. When passed 
a hostname or the special name 'localhost', a java.net.UnknownHostException is 
thrown by org.apache.james.dnsserver.DNSServer while java.net.InetAddress 
resolves the addresses correctly.

This is a critical issue as in v2.2.0 java.net.InetAddress.getByName() has 
pretty thoroughly been replaced by 
org.apache.james.dnsserver.DNSServer.getByName(), but in the noted 
circumstances it doesn't perform the same. Dependent code breaks.

Here are the contrasting examples...

// FAILS
String address = "localhost";
java.net.InetAddress inetAddress = 
org.apache.james.dnsserver.DNSServer.getByName(address);
return inetAddress;

// FAILS
String address = "hostname";
java.net.InetAddress inetAddress = 
org.apache.james.dnsserver.DNSServer.getByName(address);
return inetAddress;

// SUCCEEDS
String address = "localhost";
java.net.InetAddress inetAddress = java.net.InetAddress.getByName(address);
return inetAddress;

// SUCCEEDS
String address = "hostname";
java.net.InetAddress inetAddress = java.net.InetAddress.getByName(address);
return inetAddress;


> Functionality of org.apache.james.dnsserver.DNSServer.getByName(String) is 
> not symetric to java.net.InetAddress.getByName(String)
> ---------------------------------------------------------------------------------------------------------------------------------
>
>          Key: JAMES-302
>          URL: http://issues.apache.org/jira/browse/JAMES-302
>      Project: James
>         Type: Bug
>   Components: DNSServer
>     Versions: 2.2.0
>  Environment: Tested on WIN2000, JDK 1.4.1_01-b01
>     Reporter: Steve Brewin
>     Priority: Critical
>      Fix For: 2.3.0

>
> org.apache.james.dnsserver.DNSServer.getByName(String) does not always return 
> the same result as java.net.InetAddress.getByName(address). Sometimes an 
> exception is thrown when the standard implementation does not.
> When passed a fully qualified domain name the results are the same. When 
> passed a hostname or the special name 'localhost', a 
> java.net.UnknownHostException is thrown by 
> org.apache.james.dnsserver.DNSServer while java.net.InetAddress resolves the 
> addresses correctly.
> This is a critical issue as in v2.2.0 java.net.InetAddress.getByName() has 
> pretty thoroughly been replaced by 
> org.apache.james.dnsserver.DNSServer.getByName(), but in the noted 
> circumstances it doesn't perform the same. Dependent code breaks.
> Here are the contrasting examples...
> // FAILS
> String address = "localhost";
> java.net.InetAddress inetAddress = 
> org.apache.james.dnsserver.DNSServer.getByName(address);
> return inetAddress;
> // FAILS
> String address = "hostname";
> java.net.InetAddress inetAddress = 
> org.apache.james.dnsserver.DNSServer.getByName(address);
> return inetAddress;
> // SUCCEEDS
> String address = "localhost";
> java.net.InetAddress inetAddress = java.net.InetAddress.getByName(address);
> return inetAddress;
> // SUCCEEDS
> String address = "hostname";
> java.net.InetAddress inetAddress = java.net.InetAddress.getByName(address);
> return inetAddress;

-- 
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


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to