Bladeren bron

打入补丁:88A780671C3EB0DE.patch

SongZihuan 1 maand geleden
bovenliggende
commit
ea7fab180d
2 gewijzigde bestanden met toevoegingen van 5 en 4 verwijderingen
  1. 3 2
      internal/auth/smtp/provider.go
  2. 2 2
      internal/route/user/auth.go

+ 3 - 2
internal/auth/smtp/provider.go

@@ -66,8 +66,9 @@ func (p *Provider) Authenticate(login, password string) (*auth.ExternalAccount,
 
 		// Check standard error format first, then fallback to the worse case.
 		tperr, ok := err.(*textproto.Error)
-		if (ok && tperr.Code == 535) ||
-			strings.Contains(err.Error(), "Username and Password not accepted") {
+		if (ok && (tperr.Code == 526 || tperr.Code == 530 || tperr.Code == 534 || tperr.Code == 535 || tperr.Code == 536)) ||
+			strings.Contains(err.Error(), "Username and Password not accepted") ||
+			strings.Contains(err.Error(), "Authentication failure") {
 			return nil, auth.ErrBadCredentials{Args: map[string]any{"login": login}}
 		}
 		return nil, err

+ 2 - 2
internal/route/user/auth.go

@@ -171,9 +171,9 @@ func LoginPost(c *context.Context, f form.SignIn) {
 		case database.IsErrLoginSourceMismatch(err):
 			c.FormErr("LoginSource")
 			c.RenderWithErr(c.Tr("form.auth_source_mismatch"), LOGIN, &f)
-
 		default:
-			c.Error(err, "authenticate user")
+			c.FormErr("UserName", "Password", "LoginSource")
+			c.RenderWithErr(err.Error(), LOGIN, &f)
 		}
 		for i := range loginSources {
 			if loginSources[i].IsDefault {