CVE-2024-56337: incomplete mitigation of CVE-2024-50379 — the JVM
global canonical file name cache (sun.io.useCanonCaches) could still
return a stale answer for a concurrently written path, leaving the
TOCTOU race during JSP compilation exploitable on case-insensitive
file systems with a write-enabled Default Servlet. DirResourceSet
now verifies at startup that the cache is disabled, disabling it
reflectively where possible and refusing to start the potentially
vulnerable web application otherwise; new Jre12Compat and
Jre21Compat tiers implement the per-JRE detection, and catalina.sh
sets -Dsun.io.useCanonCaches=false before the JVM caches it.