diff --git a/cmd/mytoken-server/mytoken-setup/setup.go b/cmd/mytoken-server/mytoken-setup/setup.go index 17eeaadb6eb2116387d19322e6883f6e1b3c09c9..18c244c8bc516366f08a20e27bf97ef7e47be78a 100644 --- a/cmd/mytoken-server/mytoken-setup/setup.go +++ b/cmd/mytoken-server/mytoken-setup/setup.go @@ -161,7 +161,7 @@ func createTables(tx *sqlx.Tx) error { } for _, cmd := range dbdefinition.DDL { cmd = strings.TrimSpace(cmd) - if len(cmd) > 0 && !strings.HasPrefix(cmd, "--") { + if cmd != "" && !strings.HasPrefix(cmd, "--") { log.Trace(cmd) if _, err := tx.Exec(cmd); err != nil { return err diff --git a/internal/config/config.go b/internal/config/config.go index a9538b4d8d8d1cc1b8ad4f9ebc308521341b1687..dcc9683a0fe6872cb7c9f0cedbb219d009d53f90 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -181,7 +181,7 @@ func validate() error { return fmt.Errorf("invalid config: server.hostname not set") } if conf.Server.TLS.Enabled { - if len(conf.Server.TLS.Key) > 0 && len(conf.Server.TLS.Cert) > 0 { + if conf.Server.TLS.Key != "" && conf.Server.TLS.Cert != "" { conf.Server.Port = 443 } else { conf.Server.TLS.Enabled = false diff --git a/internal/db/dbrepo/authcodeinforepo/state/consentcode.go b/internal/db/dbrepo/authcodeinforepo/state/consentcode.go index 880cc3349bff44f559e8749d11e44ecbaee2cd80..79020d48ed8255ad17bf51ab43ade4288f739bb5 100644 --- a/internal/db/dbrepo/authcodeinforepo/state/consentcode.go +++ b/internal/db/dbrepo/authcodeinforepo/state/consentcode.go @@ -31,17 +31,15 @@ type ConsentCode struct { } func (c *ConsentCode) String() string { - if len(c.public) > 0 { - return c.public + if c.public == "" { + c.public = c.r + c.encodedInfo } - c.public = c.r + c.encodedInfo return c.public } func (c *ConsentCode) GetState() string { - if len(c.state) > 0 { - return c.state + if c.state == "" { + c.state = hashUtils.HMACSHA512Str([]byte(c.r), []byte("state"))[:stateLen] + c.encodedInfo } - c.state = hashUtils.HMACSHA512Str([]byte(c.r), []byte("state"))[:stateLen] + c.encodedInfo return c.state } diff --git a/internal/db/dbrepo/supertokenrepo/transfercoderepo/proxytoken.go b/internal/db/dbrepo/supertokenrepo/transfercoderepo/proxytoken.go index 3dc2a774c2d5bbe5d7b6f95cf5a42ede52b57872..7005c68ad7b75f4a078be9627172dc8f056dd6f7 100644 --- a/internal/db/dbrepo/supertokenrepo/transfercoderepo/proxytoken.go +++ b/internal/db/dbrepo/supertokenrepo/transfercoderepo/proxytoken.go @@ -38,7 +38,7 @@ func createProxyToken(token string) *proxyToken { // parseProxyToken parses the proxy token string into a proxyToken func parseProxyToken(token string) *proxyToken { var id string - if len(token) > 0 { + if token != "" { id = hashUtils.SHA512Str([]byte(token)) } return &proxyToken{ @@ -74,7 +74,7 @@ func (pt *proxyToken) SetJWT(jwt string) (err error) { // JWT returns the decrypted jwt that is linked to this proxyToken func (pt *proxyToken) JWT(tx *sqlx.Tx) (jwt string, valid bool, err error) { jwt = pt.decryptedJWT - if len(jwt) > 0 { + if jwt != "" { valid = true return } diff --git a/internal/endpoints/redirect/redirectEndpoint.go b/internal/endpoints/redirect/redirectEndpoint.go index 2a1a54a8c30377af9c16d5bc6fb0b3735536e377..940df5dabf5e74d4d4a03f1d9e8dcf2267690781 100644 --- a/internal/endpoints/redirect/redirectEndpoint.go +++ b/internal/endpoints/redirect/redirectEndpoint.go @@ -20,8 +20,8 @@ func HandleOIDCRedirect(ctx *fiber.Ctx) error { log.Debug("Handle redirect") oidcError := ctx.Query("error") state := state.NewState(ctx.Query("state")) - if len(oidcError) > 0 { - if len(state.State()) > 0 { + if oidcError != "" { + if state.State() != "" { if err := db.Transact(func(tx *sqlx.Tx) error { if err := transfercoderepo.DeleteTransferCodeByState(tx, state); err != nil { return err diff --git a/internal/endpoints/revocation/revocationEndpoint.go b/internal/endpoints/revocation/revocationEndpoint.go index 66bc25aef51e5ac098b8d762f7bce43dd9b4850f..6df76687de33abdfe25bfeb71671835ac62d555b 100644 --- a/internal/endpoints/revocation/revocationEndpoint.go +++ b/internal/endpoints/revocation/revocationEndpoint.go @@ -86,7 +86,7 @@ func revokeSuperToken(tx *sqlx.Tx, jwt, issuer string, recursive bool) (errRes * if err != nil { return nil } - if len(issuer) > 0 && st.OIDCIssuer != issuer { + if issuer != "" && st.OIDCIssuer != issuer { return &model.Response{ Status: fiber.StatusBadRequest, Response: pkgModel.BadRequestError("token not for specified issuer"), diff --git a/internal/endpoints/token/access/accessTokenEndpoint.go b/internal/endpoints/token/access/accessTokenEndpoint.go index b6d8a5896b059d2c7edb9bc785235adff5c4f1fd..90419655e3832dabb2aeff5706c9edf0084932d1 100644 --- a/internal/endpoints/token/access/accessTokenEndpoint.go +++ b/internal/endpoints/token/access/accessTokenEndpoint.go @@ -126,9 +126,9 @@ func handleAccessTokenRefresh(st *supertoken.SuperToken, req request.AccessToken } } usedRestriction = &possibleRestrictions[0] - if len(req.Scope) > 0 { + if req.Scope != "" { scopes = req.Scope - } else if len(usedRestriction.Scope) > 0 { + } else if usedRestriction.Scope != "" { scopes = usedRestriction.Scope } if req.Audience != "" { @@ -159,7 +159,7 @@ func handleAccessTokenRefresh(st *supertoken.SuperToken, req request.AccessToken } } retScopes := scopes - if len(oidcRes.Scopes) > 0 { + if oidcRes.Scopes != "" { retScopes = oidcRes.Scopes } retAudiences, _ := jwtutils.GetAudiencesFromJWT(oidcRes.AccessToken) diff --git a/internal/model/response.go b/internal/model/response.go index 1ac35464aa5640c732fef40f81f860c378affe21..2e1150adf45d8699f2c289858d50640c2c9b4f2d 100644 --- a/internal/model/response.go +++ b/internal/model/response.go @@ -19,10 +19,8 @@ type Response struct { // Send sends this response using the passed fiber.Ctx func (r Response) Send(ctx *fiber.Ctx) error { - if r.Cookies != nil && len(r.Cookies) > 0 { - for _, c := range r.Cookies { - ctx.Cookie(c) - } + for _, c := range r.Cookies { + ctx.Cookie(c) } if fasthttp.StatusCodeIsRedirect(r.Status) { return ctx.Redirect(r.Response.(string), r.Status) diff --git a/internal/oidc/oidcReqRes/request.go b/internal/oidc/oidcReqRes/request.go index 4dbf3898c78e0203a2e7eb044aacdde996abb4fa..82423bc94473d44842118b85955d0b1903c310c0 100644 --- a/internal/oidc/oidcReqRes/request.go +++ b/internal/oidc/oidcReqRes/request.go @@ -38,7 +38,7 @@ func (r *RefreshRequest) ToFormData() map[string]string { m := make(map[string]string) for i := 0; i < t.NumField(); i++ { f := t.Field(i) - if key := f.Tag.Get("json"); len(key) > 0 { + if key := f.Tag.Get("json"); key != "" { if key == "resource" { key = r.resourceParameter } diff --git a/internal/oidc/refresh/refresh.go b/internal/oidc/refresh/refresh.go index 599ad17b09f6f23a47646c167a7718666e307363..b55e033de86e0dbcaaa15084a9ea0fed4ecbb622 100644 --- a/internal/oidc/refresh/refresh.go +++ b/internal/oidc/refresh/refresh.go @@ -28,7 +28,7 @@ func RefreshFlowAndUpdate(provider *config.ProviderConf, superToken, rt, scopes, if err != nil { return nil, nil, err } - if errRes, ok := httpRes.Error().(*oidcReqRes.OIDCErrorResponse); ok && errRes != nil && len(errRes.Error) > 0 { + if errRes, ok := httpRes.Error().(*oidcReqRes.OIDCErrorResponse); ok && errRes != nil && errRes.Error != "" { errRes.Status = httpRes.RawResponse.StatusCode return nil, errRes, nil } diff --git a/internal/oidc/revoke/revoke.go b/internal/oidc/revoke/revoke.go index 21566ad5c771a05ee5ed652ebb924638915e364b..aa0905ba75a3c93135f32bc933f5237e8e073df0 100644 --- a/internal/oidc/revoke/revoke.go +++ b/internal/oidc/revoke/revoke.go @@ -18,7 +18,7 @@ func RefreshToken(provider *config.ProviderConf, rt string) *model.Response { if err != nil { return model.ErrorToInternalServerErrorResponse(err) } - if errRes, ok := httpRes.Error().(*oidcReqRes.OIDCErrorResponse); ok && errRes != nil && len(errRes.Error) > 0 { + if errRes, ok := httpRes.Error().(*oidcReqRes.OIDCErrorResponse); ok && errRes != nil && errRes.Error != "" { return &model.Response{ Status: httpRes.RawResponse.StatusCode, Response: pkgModel.OIDCError(errRes.Error, errRes.ErrorDescription), diff --git a/internal/server/errorHandler.go b/internal/server/errorHandler.go index 7a273a30638e31315fd5d19e9ad6f7f14f87c8c1..ce2d3e1e88ad464eb54c0f9907f5d646e62b5d69 100644 --- a/internal/server/errorHandler.go +++ b/internal/server/errorHandler.go @@ -20,7 +20,7 @@ func handleError(ctx *fiber.Ctx, err error) error { msg = e.Message } - if len(ctx.Accepts(fiber.MIMETextHTML, fiber.MIMETextHTMLCharsetUTF8)) > 0 { + if ctx.Accepts(fiber.MIMETextHTML, fiber.MIMETextHTMLCharsetUTF8) != "" { return handleErrorHTML(ctx, code, msg) } return handleErrorJSON(ctx, code, msg) diff --git a/internal/server/server.go b/internal/server/server.go index 818aa312e34899c40ae4decea5e05c4873ccc9a4..7cf5325c3bf00d573e0a38d0bbe7d4f24caeb4c0 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -45,7 +45,7 @@ func Init() { addMiddlewares(server) addRoutes(server) server.Use(func(ctx *fiber.Ctx) error { - if len(ctx.Accepts(fiber.MIMETextHTML, fiber.MIMETextHTMLCharsetUTF8)) > 0 { + if ctx.Accepts(fiber.MIMETextHTML, fiber.MIMETextHTMLCharsetUTF8) != "" { return ctx.Render("sites/404", map[string]interface{}{ "empty-navbar": true, }, "layouts/main") diff --git a/internal/utils/ctxUtils/token.go b/internal/utils/ctxUtils/token.go index 6f27cd4043ed4f12023f9941c0bd96b4f95cd110..b9c0afab3d02898b0a64b594ccde8a5899b5fafe 100644 --- a/internal/utils/ctxUtils/token.go +++ b/internal/utils/ctxUtils/token.go @@ -13,14 +13,14 @@ import ( func GetSuperTokenStr(ctx *fiber.Ctx) string { req := pkg.CreateTransferCodeRequest{} if err := json.Unmarshal(ctx.Body(), &req); err == nil { - if len(req.SuperToken) > 0 { + if req.SuperToken != "" { return req.SuperToken } } - if tok := GetAuthHeaderToken(ctx); len(tok) > 0 { + if tok := GetAuthHeaderToken(ctx); tok != "" { return tok } - if tok := ctx.Cookies("mytoken-supertoken"); len(tok) > 0 { + if tok := ctx.Cookies("mytoken-supertoken"); tok != "" { return tok } return "" diff --git a/pkg/mytokenlib/accesstoken.go b/pkg/mytokenlib/accesstoken.go index c57999a3ee244a2cea88dc415b3e4d78ffe95d99..ea7103553cafe6dc6175d3249e1052ba887cfe93 100644 --- a/pkg/mytokenlib/accesstoken.go +++ b/pkg/mytokenlib/accesstoken.go @@ -23,7 +23,7 @@ func (my *Mytoken) GetAccessToken(superToken, oidcIssuer string, scopes, audienc return "", newMytokenErrorFromError("error while sending http request", err) } if e := resp.Error(); e != nil { - if errRes := e.(*model.APIError); errRes != nil && len(errRes.Error) > 0 { + if errRes := e.(*model.APIError); errRes != nil && errRes.Error != "" { return "", &MytokenError{ err: errRes.Error, errorDetails: errRes.ErrorDescription, diff --git a/pkg/mytokenlib/error.go b/pkg/mytokenlib/error.go index cc2e16438dd555893dd37637db8c28d94cc8417c..225e252f9e3da57bd9ed86ea03b1a8164590268f 100644 --- a/pkg/mytokenlib/error.go +++ b/pkg/mytokenlib/error.go @@ -8,7 +8,7 @@ type MytokenError struct { func (err *MytokenError) Error() string { e := err.err - if len(err.errorDetails) > 0 { + if err.errorDetails != "" { e += ": " + err.errorDetails } return e diff --git a/pkg/mytokenlib/mytoken.go b/pkg/mytokenlib/mytoken.go index 461093d43eded6fa6e5f22816563b3aabc0f1f65..949e7ca60d84fc883d52e3707b7c4dc7770ff9b6 100644 --- a/pkg/mytokenlib/mytoken.go +++ b/pkg/mytokenlib/mytoken.go @@ -18,7 +18,7 @@ func NewMytokenInstance(url string) (*Mytoken, error) { return nil, newMytokenErrorFromError("could not connect to mytoken instance", err) } if e := resp.Error(); e != nil { - if errRes := e.(*model.APIError); errRes != nil && len(errRes.Error) > 0 { + if errRes := e.(*model.APIError); errRes != nil && errRes.Error != "" { return nil, &MytokenError{ err: errRes.Error, errorDetails: errRes.ErrorDescription, diff --git a/pkg/mytokenlib/revoke.go b/pkg/mytokenlib/revoke.go index aec323cddee81c93e8d3cf35c9e4209993ca7a3e..d78256d733df4b103615db4d3683323732556806 100644 --- a/pkg/mytokenlib/revoke.go +++ b/pkg/mytokenlib/revoke.go @@ -17,7 +17,7 @@ func (my *Mytoken) Revoke(superToken, oidcIssuer string, recursive bool) error { return newMytokenErrorFromError("error while sending http request", err) } if e := resp.Error(); e != nil { - if errRes := e.(*model.APIError); errRes != nil && len(errRes.Error) > 0 { + if errRes := e.(*model.APIError); errRes != nil && errRes.Error != "" { return &MytokenError{ err: errRes.Error, errorDetails: errRes.ErrorDescription, diff --git a/pkg/mytokenlib/supertoken.go b/pkg/mytokenlib/supertoken.go index f2b49b54883849f8c4fb2301a33596c41bde03d8..0b500467acf4fdd2cb00981c651cbde17c781a3c 100644 --- a/pkg/mytokenlib/supertoken.go +++ b/pkg/mytokenlib/supertoken.go @@ -19,7 +19,7 @@ func (my *Mytoken) GetSuperToken(req interface{}) (string, error) { return "", newMytokenErrorFromError("error while sending http request", err) } if e := resp.Error(); e != nil { - if errRes := e.(*model.APIError); errRes != nil && len(errRes.Error) > 0 { + if errRes := e.(*model.APIError); errRes != nil && errRes.Error != "" { return "", &MytokenError{ err: errRes.Error, errorDetails: errRes.ErrorDescription, @@ -91,7 +91,7 @@ func (my *Mytoken) InitAuthorizationFlow(issuer string, restrictions restriction return nil, newMytokenErrorFromError("error while sending http request", err) } if e := resp.Error(); e != nil { - if errRes := e.(*model.APIError); errRes != nil && len(errRes.Error) > 0 { + if errRes := e.(*model.APIError); errRes != nil && errRes.Error != "" { return nil, &MytokenError{ err: errRes.Error, errorDetails: errRes.ErrorDescription, diff --git a/shared/httpClient/httpClient.go b/shared/httpClient/httpClient.go index 621c15da0d8021e7b10223dbf146cd14c68f9c8d..377f2c1fad4df599caf7ee4475b72ccdef6d31dd 100644 --- a/shared/httpClient/httpClient.go +++ b/shared/httpClient/httpClient.go @@ -24,7 +24,7 @@ func init() { // Init initializes the http client func Init(hostURL string) { - if len(hostURL) > 0 { + if hostURL != "" { client.SetHostURL(hostURL) } if log.IsLevelEnabled(log.DebugLevel) { diff --git a/shared/supertoken/pkg/stid/stid.go b/shared/supertoken/pkg/stid/stid.go index 2e094ea0277d218c1814876c0c78e91e115e1f16..347577792f42a76316cec5be0741fe45f40b93e4 100644 --- a/shared/supertoken/pkg/stid/stid.go +++ b/shared/supertoken/pkg/stid/stid.go @@ -28,13 +28,13 @@ func (i *STID) Valid() bool { } func (i *STID) HashValid() bool { - if len(i.hash) > 0 { + if i.hash != "" { return true } if i.UUID.String() == "00000000-0000-0000-0000-000000000000" { return false } - return len(i.Hash()) > 0 + return i.Hash() != "" } func (i *STID) Hash() string { diff --git a/shared/utils/utils.go b/shared/utils/utils.go index 0855c2c0222fa67c8393a7da53b5e4243f6dcc8a..fa616d06917d73815a03b165c6549751e274c230 100644 --- a/shared/utils/utils.go +++ b/shared/utils/utils.go @@ -266,7 +266,7 @@ func IsJWT(token string) bool { return false } for i, segment := range arr { - if len(segment) > 0 || i < 2 { // first two segments must not be empty + if segment != "" || i < 2 { // first two segments must not be empty if _, err := base64.URLEncoding.DecodeString(arr[2]); err != nil { return false }