From 2224743a6215764649dcf16dcfdb58dfbd68e9c0 Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Wed, 06 Oct 2021 21:45:13 +0000
Subject: [PATCH] Update README to mention the difference between CAS URL and login URL.

---
 src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java b/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java
index b29588f..ce2ac6b 100644
--- a/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java
+++ b/src/main/java/org/keycloak/protocol/cas/endpoints/LogoutEndpoint.java
@@ -20,7 +20,6 @@
 import javax.ws.rs.core.Context;
 import javax.ws.rs.core.HttpHeaders;
 import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
 
 public class LogoutEndpoint {
     private static final Logger logger = Logger.getLogger(LogoutEndpoint.class);
@@ -36,9 +35,6 @@
 
     @Context
     private HttpHeaders headers;
-
-    @Context
-    private UriInfo uriInfo;
 
     private RealmModel realm;
     private EventBuilder event;
@@ -62,11 +58,11 @@
             if (redirectUri != null) userSession.setNote(CASLoginProtocol.LOGOUT_REDIRECT_URI, redirectUri);
 
             logger.debug("Initiating CAS browser logout");
-            Response response =  AuthenticationManager.browserLogout(session, realm, authResult.getSession(), uriInfo, clientConnection, headers);
+            Response response =  AuthenticationManager.browserLogout(session, realm, authResult.getSession(), session.getContext().getUri(), clientConnection, headers, null);
             logger.debug("finishing CAS browser logout");
             return response;
         }
-        return ErrorPage.error(session, Messages.FAILED_LOGOUT);
+        return ErrorPage.error(session, null, Response.Status.BAD_REQUEST, Messages.FAILED_LOGOUT);
     }
 
     private void checkClient(String service) {
@@ -76,10 +72,10 @@
 
         client = realm.getClients().stream()
                 .filter(c -> CASLoginProtocol.LOGIN_PROTOCOL.equals(c.getProtocol()))
-                .filter(c -> RedirectUtils.verifyRedirectUri(uriInfo, service, realm, c) != null)
+                .filter(c -> RedirectUtils.verifyRedirectUri(session, service, c) != null)
                 .findFirst().orElse(null);
         if (client != null) {
-            redirectUri = RedirectUtils.verifyRedirectUri(uriInfo, service, realm, client);
+            redirectUri = RedirectUtils.verifyRedirectUri(session, service, client);
 
             session.getContext().setClient(client);
         }

--
Gitblit v1.9.1