about summary refs log tree commit diff
path: root/third_party/gerrit_plugins/oauth/cas-6x.patch
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/gerrit_plugins/oauth/cas-6x.patch')
-rw-r--r--third_party/gerrit_plugins/oauth/cas-6x.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/third_party/gerrit_plugins/oauth/cas-6x.patch b/third_party/gerrit_plugins/oauth/cas-6x.patch
new file mode 100644
index 000000000000..70ea0bda71a5
--- /dev/null
+++ b/third_party/gerrit_plugins/oauth/cas-6x.patch
@@ -0,0 +1,41 @@
+diff --git a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java
+index 450549f..27310cd 100644
+--- a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java
++++ b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java
+@@ -15,7 +15,7 @@
+ package com.googlesource.gerrit.plugins.oauth;
+ 
+ import com.github.scribejava.core.builder.api.DefaultApi20;
+-import com.github.scribejava.core.extractors.OAuth2AccessTokenExtractor;
++import com.github.scribejava.core.extractors.OAuth2AccessTokenJsonExtractor;
+ import com.github.scribejava.core.extractors.TokenExtractor;
+ import com.github.scribejava.core.model.OAuth2AccessToken;
+ import com.github.scribejava.core.oauth2.bearersignature.BearerSignature;
+@@ -47,6 +47,6 @@ public class CasApi extends DefaultApi20 {
+ 
+   @Override
+   public TokenExtractor<OAuth2AccessToken> getAccessTokenExtractor() {
+-    return OAuth2AccessTokenExtractor.instance();
++    return OAuth2AccessTokenJsonExtractor.instance();
+   }
+ }
+diff --git a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java
+index 5f3e4a1..5594b26 100644
+--- a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java
++++ b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java
+@@ -135,6 +135,15 @@ class CasOAuthService implements OAuthServiceProvider {
+           property = getStringElement(obj, "login");
+           if (property != null) login = property;
+         }
++      } else if (attrListJson.isJsonObject()) {
++        JsonObject obj = attrListJson.getAsJsonObject();
++
++        String property = getStringElement(obj, "mail");
++        if (property != null) email = property;
++        property = getStringElement(obj, "displayName");
++        if (property != null) name = property;
++        property = getStringElement(obj, "uid");
++        if (property != null) login = property;
+       }
+ 
+       return new OAuthUserInfo(