Hi,
to summarize the amendments below:
ServiceConfigurationError removed - the code no longer reads the
nameservice provider property, it silently ignored
try-with-resources statement added in getHostByAddr and
lookupAllHostAddr methods of NameService, and duplicate statements removed
hosts file name in tests changed to TestHosts to avoid any potential
confusion with /etc/hosts
regards
Mark
On 12/11/2015 16:46, Mark Sheppard wrote:
Hi,
based on feedback from first review the updates have been amended
please oblige and review the current set of changes as per
http://cr.openjdk.java.net/~msheppar/8134577/webrev.02/
regards
Mark
On 25/10/2015 23:32, Mark Sheppard wrote:
Hi,
please oblige and review the following changes
http://cr.openjdk.java.net/~msheppar/8134577/webrev/
which address the issue raised in
https://bugs.openjdk.java.net/browse/JDK-8134577
the operative word has been "eliminate".
As such, the interface and service descriptor
sun.net.spi.nameservice.NameService
sun.net.spi.nameservice.NameServiceDescriptor*
*together with its implementation
(sun.net.nameservice.dns.DNSNameService)
has been remove from the JDK libraries.
The immediate impact is seen in the JDK testing framework.
To facilitate testing activity, and provide a replacement for the
customized NameService implementations in the
JDK tests, the default NameService has been extended to support
the retrieval of host to IP address mappings from a file.
The file path is specified with a system property " jdk.internal.hosts".
Previously a nameservice provider was specified by setting the system
property
"sun.net.spi.nameservice.provider.", as per the documentation
http://docs.oracle.com/javase/8/docs/technotes/guides/net/properties.html
InetAddress now tests to determine if this property is set and will
throw a ServiceConfigurationError
indicating that this functionality is no longer supported. The choice
of ServideConfigurationError may cause
some debate, or disagreement. The rationale was that InternalError,
is documented to relate to a JVM error,
and javax.naming.NamingException has a context of DirContext.
A possible alternative candidate could be
javax.naming.ServiceUnavailableException.
As such, the setting of the property
"sun.net.spi.nameservice.provider." was used, previously, as a
configuration
parameter for the loading of a NamerService service provider, and as
this is now (considered) an error, ServiceConfigurationError,
seemed a best fit!
These changes impacted a number of jdk security tests, also. The
affected tetsts have been amended to adopt the
changes, with the exception of
test/sun/security/x509/URICertStore/ExtensionsWithLDAP.java
which will require some rewrite.
regards
Mark