aboutsummaryrefslogtreecommitdiffstats
path: root/routers/web/user
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2021-11-03 00:33:54 +0000
committerGitHub <noreply@github.com>2021-11-03 08:33:54 +0800
commit9d855bd6a1da51a656bede3a855b2cecc6a22f28 (patch)
treeac34d3039edafd1c8d7814e3ede09f1e22372073 /routers/web/user
parent95da01c5cd946d6e6ba0b0110676d3df36ce85db (diff)
downloadgitea-9d855bd6a1da51a656bede3a855b2cecc6a22f28.tar.gz
gitea-9d855bd6a1da51a656bede3a855b2cecc6a22f28.zip
Simplify Gothic to use our session store instead of creating a different store (#17507)
* Simplify Gothic to use our session store instead of creating a different store We have been using xormstore to provide a separate session store for our OAuth2 logins however, this relies on using gorilla context and some doubling of our session storing. We can however, simplify and simply use our own chi-based session store. Thus removing a cookie and some of the weirdness with missing contexts. Signed-off-by: Andrew Thornton <art27@cantab.net> * as per review Signed-off-by: Andrew Thornton <art27@cantab.net> * as per review Signed-off-by: Andrew Thornton <art27@cantab.net> * Handle MaxTokenLength Signed-off-by: Andrew Thornton <art27@cantab.net> * oops Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: Lauris BH <lauris@nix.lv>
Diffstat (limited to 'routers/web/user')
-rw-r--r--routers/web/user/auth.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/routers/web/user/auth.go b/routers/web/user/auth.go
index 99885e5ce3..21d48e9834 100644
--- a/routers/web/user/auth.go
+++ b/routers/web/user/auth.go
@@ -789,7 +789,7 @@ func handleOAuth2SignIn(ctx *context.Context, source *login.Source, u *models.Us
func oAuth2UserLoginCallback(loginSource *login.Source, request *http.Request, response http.ResponseWriter) (*models.User, goth.User, error) {
gothUser, err := loginSource.Cfg.(*oauth2.Source).Callback(request, response)
if err != nil {
- if err.Error() == "securecookie: the value is too long" {
+ if err.Error() == "securecookie: the value is too long" || strings.Contains(err.Error(), "Data too long") {
log.Error("OAuth2 Provider %s returned too long a token. Current max: %d. Either increase the [OAuth2] MAX_TOKEN_LENGTH or reduce the information returned from the OAuth2 provider", loginSource.Name, setting.OAuth2.MaxTokenLength)
err = fmt.Errorf("OAuth2 Provider %s returned too long a token. Current max: %d. Either increase the [OAuth2] MAX_TOKEN_LENGTH or reduce the information returned from the OAuth2 provider", loginSource.Name, setting.OAuth2.MaxTokenLength)
}