8144300: http.nonProxyHosts value having wildcard * both at end and start are not honored

Added validation for wildcard at start and end

Reviewed-by: chegar, dfuchs, clanger
This commit is contained in:
Pallavi Sonal 2018-03-26 17:33:58 +05:30 committed by Ramanand Patil
parent d2e4f879b1
commit cab25623b6
2 changed files with 8 additions and 4 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2018 Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -395,7 +395,9 @@ public class DefaultProxySelector extends ProxySelector {
*/
static String disjunctToRegex(String disjunct) {
String regex;
if (disjunct.startsWith("*")) {
if (disjunct.startsWith("*") && disjunct.endsWith("*")) {
regex = ".*" + quote(disjunct.substring(1, disjunct.length() - 1)) + ".*";
} else if (disjunct.startsWith("*")) {
regex = ".*" + quote(disjunct.substring(1));
} else if (disjunct.endsWith("*")) {
regex = quote(disjunct.substring(0, disjunct.length() - 1)) + ".*";

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -23,7 +23,7 @@
/*
* @test
* @bug 8035158 8145732
* @bug 8035158 8145732 8144300
* @run main/othervm B8035158
*/
@ -153,6 +153,8 @@ public class B8035158 {
t.add(new TestCase("p-proxy.com", "http://p-proxy.com", false));
t.add(new TestCase("google.co*|google.ie", "http://google.co.uk",
false));
t.add(new TestCase("*google.*", "http://google.co.uk",
false));
t.add(new TestCase("*oracle.com", "http://my.oracle.com", false));
t.add(new TestCase("google.com|bing.com|yahoo.com", "http://127.0.0.1", false));