Code Review 7030256: Cleanup/Remove code supporting old Windows versions (98, NT, 2000, etc)
Alan Bateman
Alan.Bateman at oracle.com
Thu Mar 24 08:50:49 PDT 2011
Chris Hegarty wrote:
> :
>
> You are right, before these changes iphlpapi.dll is not loaded unless
> NetworkInterface or ResolverConfigurationImpl are called. After these
> changes iphlpapi.dll is loaded once net.dll is loaded.
>
> I think we should use specify the loading of these dll's to be
> delayed. I can confirm that with the below changes iphlpapi.dll is
> only loaded when necessary.
>
> diff -r ef5bbbe0dd75 make/java/net/Makefile
> --- a/make/java/net/Makefile Mon Mar 21 22:02:00 2011 -0700
> +++ b/make/java/net/Makefile Thu Mar 24 15:27:38 2011 +0000
> @@ -37,10 +37,6 @@ AUTO_FILES_JAVA_DIRS = java/net
> AUTO_FILES_JAVA_DIRS = java/net
>
> ifeq ($(PLATFORM), windows)
> - # Windows 9x module only needed on 32-bit build
> - ifeq ($(ARCH_DATA_MODEL), 32)
> - FILES_c += NetworkInterface_win9x.c
> - endif
> FILES_c += NTLMAuthSequence.c
> FILES_c += NetworkInterface_winXP.c
> else
> @@ -96,7 +92,9 @@ include $(BUILDDIR)/common/Library.gmk
> include $(BUILDDIR)/common/Library.gmk
>
> ifeq ($(PLATFORM), windows)
> - OTHER_LDLIBS = ws2_32.lib $(JVMLIB)
> + OTHER_LDLIBS = ws2_32.lib $(JVMLIB) \
> + secur32.lib iphlpapi.lib delayimp.lib \
> + /DELAYLOAD:secur32.dll /DELAYLOAD:iphlpapi.dll
> else
> OTHER_LDLIBS = $(LIBSOCKET) $(LIBNSL) -ldl $(JVMLIB)
>
Thanks for doing this, this seems a good candidate for a delayed load.
Thumbs up from me.
-Alan
More information about the net-dev
mailing list