On Mon, 20 Apr 2026 14:46:45 GMT, Weijun Wang <[email protected]> wrote:
>> In DNS-based KDC discovery failures are exposed as generic 'KrbException: >> Cannot locate KDC / Unable to locate KDC for realm <REALM>' with no >> indication whether the underlying DNS SRV lookup failed due to NXDOMAIN, >> SERVFAIL, or a communication timeout. >> >> To improve supportability, this patch updates >> `KrbServiceLocator.getKerberosService(realm, protocol)` to rethrow the >> original JNDI NamingException from the SRV lookup and attach a sanitized >> failure category to the existing KrbException when both udp and tcp >> discovery attempts fail, while preserving the original top level exception >> message. `Config.getKDCFromDNS()` is updated to catch exception, sanitize it >> into the relevant category to prevent leaking any senistive information and >> attach it to the existing KrbException. >> >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > src/java.security.jgss/share/classes/sun/security/krb5/KrbServiceLocator.java > line 190: > >> 188: } >> 189: } catch (NamingException e) { >> 190: throw e; > > Do you really want to include the reason in the final exception, or just > printing out them when `-Dsun.security.krb5.debug=true` is set? Not sure which you prefer. If just debug log, it will be much simpler. No need to chain cause, no need to sanitize exception messages... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/30824#discussion_r3113189849
