RFR: 8044609: javax.net.debug options not working and documented as expected [v18]

Sean Coffey coffeys at openjdk.org
Tue Sep 16 12:49:15 UTC 2025


On Sat, 30 Aug 2025 02:34:40 GMT, Bradford Wetmore <wetmore at openjdk.org> wrote:

>> Sean Coffey has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 35 commits:
>> 
>>  - Merge branch 'master' into 8044609-ssl
>>  - 1 file omitted during merge
>>  - Merge branch 'master' into 8044609-ssl
>>  - Merge branch 'master' into 8044609-ssl
>>  - Merge branch 'master' into 8044609-ssl
>>  - remove whitespace
>>  - erroneous edit to test file
>>  - remove legacy test and minor fix ups
>>  - Merge branch 'master' into 8044609-ssl
>>  - enums refactoring and line width correction
>>  - ... and 25 more: https://git.openjdk.org/jdk/compare/2b44ed70...71aa0211
>
> src/java.base/share/classes/sun/security/ssl/SSLLogger.java line 114:
> 
>> 112:                     // enable all subcomponents. "ssl" logs all activity
>> 113:                     // except for the "data" and "packet" categories
>> 114:                     if (Opt.SSL.on && !Opt.isAnySubComponentEnabled()) {
> 
> `isAnySubComponentEnabled()` and `enableAllSubComponents()` both call `subCompoenentList()`, so if isAnySC is false, then the list of subcomponents will be generated twice back-to-back.  Since these methods are not used anywhere else, maybe do a single call instead:
> 
>     if (Opt.SSL.on) {
>         ifSSLOnlyEnableAllSubcompoenents()  // needs a better name!  
>     }

redesigned:


                   if (Opt.SSL.on &&
                            EnumSet.allOf(Opt.class)
                                    .stream()
                                    .noneMatch(o -> o.on && o.isSubComponent)) {
                        for (Opt opt : Opt.values()) {
                            if (opt.isSubComponent) {
                                opt.on = true;
                            }
                        }
                    }

> src/java.base/share/classes/sun/security/ssl/SSLLogger.java line 242:
> 
>> 240: 
>> 241:         Opt() {
>> 242:             this.component = this.toString().toLowerCase(Locale.ROOT);
> 
> Why `Locale.ROOT` instead of `Locale.English` throughout the rest of the class?

Thanks - converted to Locale.English

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18764#discussion_r2352039677
PR Review Comment: https://git.openjdk.org/jdk/pull/18764#discussion_r2352033146


More information about the security-dev mailing list