Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Done
-
10.0.2, 12.0.4
-
None
Description
The method
org.keycloak.adapters.AdapterDeploymentContext#resolveDeployment(HttpFacade)
can return null when called (e.g. when deployment is null) (https://github.com/keycloak/keycloak/blob/64ccbda5d552ff1ffaf435255a8b43d66a5fe2af/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/AdapterDeploymentContext.java#L92)
org.keycloak.adapters.PreAuthActionsHandler#preflightCors()
uses the aforementioned null and calls isCors() on it (https://github.com/keycloak/keycloak/blob/64ccbda5d552ff1ffaf435255a8b43d66a5fe2af/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/PreAuthActionsHandler.java#L101)
This results in:
java.lang.NullPointerException: null at org.keycloak.adapters.PreAuthActionsHandler.preflightCors(PreAuthActionsHandler.java:101) at org.keycloak.adapters.PreAuthActionsHandler.handleRequest(PreAuthActionsHandler.java:75) at org.keycloak.adapters.tomcat.AbstractKeycloakAuthenticatorValve.invoke(AbstractKeycloakAuthenticatorValve.java:177) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212]