mirror of https://github.com/jacekkow/keycloak-protocol-cas

Bruno Oliveira
2016-09-19 b81acfe676f5aaf84a841a319318729d4a1dd828
src/main/java/org/keycloak/protocol/cas/utils/RedirectUtils.java
@@ -17,10 +17,11 @@
package org.keycloak.protocol.oidc.utils;
import org.jboss.logging.Logger;
import org.keycloak.common.util.UriUtils;
import org.keycloak.models.ClientModel;
import org.keycloak.models.Constants;
import org.keycloak.models.RealmModel;
import org.keycloak.services.ServicesLogger;
import org.keycloak.services.Urls;
import javax.ws.rs.core.UriInfo;
@@ -33,7 +34,7 @@
 */
public class RedirectUtils {
    private static final ServicesLogger logger = ServicesLogger.ROOT_LOGGER;
    private static final Logger logger = Logger.getLogger(RedirectUtils.class);
    public static String verifyRealmRedirectUri(UriInfo uriInfo, String redirectUri, RealmModel realm) {
        Set<String> validRedirects = getValidateRedirectUris(uriInfo, realm);
@@ -41,8 +42,9 @@
    }
    public static String verifyRedirectUri(UriInfo uriInfo, String redirectUri, RealmModel realm, ClientModel client) {
        Set<String> validRedirects = client.getRedirectUris();
        return verifyRedirectUri(uriInfo, client.getRootUrl(), redirectUri, realm, validRedirects);
        if (client != null)
            return verifyRedirectUri(uriInfo, client.getRootUrl(), redirectUri, realm, client.getRedirectUris());
        return null;
    }
    public static Set<String> resolveValidRedirects(UriInfo uriInfo, String rootUrl, Set<String> validRedirects) {
@@ -121,15 +123,12 @@
    private static String relativeToAbsoluteURI(UriInfo uriInfo, String rootUrl, String relative) {
        if (rootUrl == null || rootUrl.isEmpty()) {
            URI baseUri = uriInfo.getBaseUri();
            String uri = baseUri.getScheme() + "://" + baseUri.getHost();
            if (baseUri.getPort() != -1) {
                uri += ":" + baseUri.getPort();
            }
            rootUrl = uri;
            rootUrl = UriUtils.getOrigin(uriInfo.getBaseUri());
        }
        relative = rootUrl + relative;
        return relative;
        StringBuilder sb = new StringBuilder();
        sb.append(rootUrl);
        sb.append(relative);
        return sb.toString();
    }
    private static boolean matchesRedirects(Set<String> validRedirects, String redirect) {