@@ -10,6 +10,7 @@ import (
1010
1111 "code.gitea.io/gitea/modules/generate"
1212 "code.gitea.io/gitea/modules/log"
13+ "code.gitea.io/gitea/modules/util"
1314)
1415
1516// OAuth2UsernameType is enum describing the way gitea 'name' should be generated from oauth2 data
@@ -129,21 +130,19 @@ func loadOAuth2From(rootCfg ConfigProvider) {
129130 }
130131
131132 if InstallLock {
132- key := make ([]byte , 32 )
133- n , err := base64 .RawURLEncoding .Decode (key , []byte (OAuth2 .JWTSecretBase64 ))
134- if err != nil || n != 32 {
135- key , err = generate .NewJwtSecret ()
133+ if _ , err := util .Base64FixedDecode (base64 .RawURLEncoding , []byte (OAuth2 .JWTSecretBase64 ), 32 ); err != nil {
134+ key , err := generate .NewJwtSecret ()
136135 if err != nil {
137136 log .Fatal ("error generating JWT secret: %v" , err )
138137 }
139138
140- secretBase64 : = base64 .RawURLEncoding .EncodeToString (key )
139+ OAuth2 . JWTSecretBase64 = base64 .RawURLEncoding .EncodeToString (key )
141140 saveCfg , err := rootCfg .PrepareSaving ()
142141 if err != nil {
143142 log .Fatal ("save oauth2.JWT_SECRET failed: %v" , err )
144143 }
145- rootCfg .Section ("oauth2" ).Key ("JWT_SECRET" ).SetValue (secretBase64 )
146- saveCfg .Section ("oauth2" ).Key ("JWT_SECRET" ).SetValue (secretBase64 )
144+ rootCfg .Section ("oauth2" ).Key ("JWT_SECRET" ).SetValue (OAuth2 . JWTSecretBase64 )
145+ saveCfg .Section ("oauth2" ).Key ("JWT_SECRET" ).SetValue (OAuth2 . JWTSecretBase64 )
147146 if err := saveCfg .Save (); err != nil {
148147 log .Fatal ("save oauth2.JWT_SECRET failed: %v" , err )
149148 }
0 commit comments