RFR:8170868: DefaultProxySelector should use system defaults on Windows, MacOS and Gnome
Chris Hegarty
chris.hegarty at oracle.com
Wed Feb 1 13:33:38 UTC 2017
> On 31 Jan 2017, at 19:14, Zeller, Arno <arno.zeller at sap.com> wrote:
>
> Hi Chris,
>
> thanks for all the improvements. I imported your webrev and prepared another webrev:
> http://cr.openjdk.java.net/~clanger/webrevs/8170868.6/
Much better, thanks Arno.
Two more minor suggestions ( patch below ):
1) As suggested by Erik remove the unnecessary exclude.
2) As I suggested off-line add a timeout for badly configured systems
where the PAC URL cannot be retrieved in a timely manner.
If you need a sponsor I can push this for you, otherwise I think I’m done
with the review. Thanks for your patience.
---
diff -r 4432850b8099 make/lib/NetworkingLibraries.gmk
--- a/make/lib/NetworkingLibraries.gmk Tue Jan 31 13:12:14 2017 +0100
+++ b/make/lib/NetworkingLibraries.gmk Wed Feb 01 13:29:28 2017 +0000
@@ -25,16 +25,11 @@
LIBNET_SRC_DIRS := $(call FindSrcDirsForLib, java.base, net)
-ifeq ($(OPENJDK_TARGET_OS), macosx)
- LIBNET_EXCLUDE_FILES := $(JDK_TOPDIR)/src/java.base/unix/native/libnet/DefaultProxySelector.c
-endif
-
$(eval $(call SetupNativeCompilation,BUILD_LIBNET, \
LIBRARY := net, \
OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
SRC := $(LIBNET_SRC_DIRS), \
OPTIMIZATION := LOW, \
- EXCLUDE_FILES := $(LIBNET_EXCLUDE_FILES), \
CFLAGS := $(CFLAGS_JDKLIB) -I$(SUPPORT_OUTPUTDIR)/headers/java.base \
$(LIBJAVA_HEADER_FLAGS) $(addprefix -I, $(LIBNET_SRC_DIRS)), \
DISABLED_WARNINGS_gcc := format-nonliteral, \
diff -r 4432850b8099 src/java.base/macosx/native/libnet/DefaultProxySelector.c
--- a/src/java.base/macosx/native/libnet/DefaultProxySelector.c Tue Jan 31 13:12:14 2017 +0100
+++ b/src/java.base/macosx/native/libnet/DefaultProxySelector.c Wed Feb 01 13:29:28 2017 +0000
@@ -102,6 +102,7 @@
CFURLRef scriptURL;
CFTypeRef result = NULL;
CFStreamClientContext context = { 0, &result, NULL, NULL, NULL };
+ CFTimeInterval timeout = 5;
scriptURL = CFDictionaryGetValue(currentProxy, kCFProxyAutoConfigurationURLKey);
@@ -114,7 +115,7 @@
* release the return CFRunLoopSourceRef <rdar://problem/5533931>.
*/
CFRunLoopAddSource(CFRunLoopGetCurrent(), runLoop, kResolveProxyRunLoopMode);
- CFRunLoopRunInMode(kResolveProxyRunLoopMode, 1.0e10, false);
+ CFRunLoopRunInMode(kResolveProxyRunLoopMode, timeout, false);
CFRunLoopRemoveSource(CFRunLoopGetCurrent(), runLoop, kResolveProxyRunLoopMode);
/*
-Chris.
More information about the net-dev
mailing list