On Thu, 13 Jan 2022 12:10:11 GMT, Michael McMahon <micha...@openjdk.org> wrote:

> Hi,
> 
> This change adds Channel Binding Token (CBT) support to HTTPS 
> (java.net.HttpsURLConnection) when used with the Negotiate (SPNEGO, Kerberos) 
> authentication scheme. When enabled, the implementation preemptively includes 
> a CBT with authentication requests over Kerberos. The feature is enabled as 
> follows:
> 
> A system property "jdk.spnego.cbt" is defined which can have the values 
> "never" (default), which means the feature is disabled, "always", which means 
> the CBT is included for all https Negotiate authentications, or it can take 
> the form "domain:a,b.c,*.d.com" which is a comma separated list of 
> domains/hosts where the feature is enabled, and disabled everywhere else. In 
> the given example, the CBT would be included in authentication requests for 
> hosts "a", "b.c" and all hosts under the domain "d.com" and all of its 
> sub-domains.
> 
> A test will be added separately to the implementation.
> 
> Bug report: https://bugs.openjdk.java.net/browse/JDK-8279842
> 
> Thanks,
> Michael

src/java.base/share/classes/sun/net/www/http/HttpClient.java line 180:

> 178:     static String normalizeCBT(String s) {
> 179:         if (s == null || ! (s.equals("always") ||
> 180:                 s.equals("never") || s.startsWith("domain:"))) {

I guess there's a `!` missing in front of  `s.startsWith("domain:")` here?

-------------

PR: https://git.openjdk.java.net/jdk/pull/7065

Reply via email to