Skip to content

Commit

Permalink
minor improvements
Browse files Browse the repository at this point in the history
minor improvement

minor improvement
  • Loading branch information
slahirucd7 committed Dec 11, 2023
1 parent 90192a7 commit 483694d
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 8 deletions.
5 changes: 3 additions & 2 deletions adapter/internal/oasparser/model/open_api.go
Original file line number Diff line number Diff line change
Expand Up @@ -133,8 +133,9 @@ func setResourcesOpenAPI(openAPI openapi3.Swagger) ([]*Resource, error) {
if openAPI.Paths != nil {
conf, _ := config.ReadConfigs()
for path, pathItem := range openAPI.Paths {
if conf.Envoy.MaximumResourcePathLengthInKB != -1 && (isResourcePathLimitExceeds(path, int(conf.Envoy.MaximumResourcePathLengthInKB))) {
return nil, errors.New("The path " + path + " exceeds maximum allowed length")
if conf.Envoy.MaximumResourcePathLengthInKB != -1 &&
isResourcePathLimitExceeds(path, int(conf.Envoy.MaximumResourcePathLengthInKB)) {
return nil, errors.New("path: " + path + " exceeds maximum allowed length")
}
// Checks for resource level security. (security is disabled in resource level using x-wso2-disable-security extension)
isResourceLvlSecurityDisabled, foundInResourceLevel := resolveDisableSecurity(pathItem.ExtensionProps)
Expand Down
11 changes: 5 additions & 6 deletions adapter/internal/oasparser/model/swagger.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ import (

"github.com/go-openapi/spec"
"github.com/google/uuid"

"github.com/wso2/product-microgateway/adapter/config"
logger "github.com/wso2/product-microgateway/adapter/internal/loggers"
)
Expand All @@ -46,11 +45,11 @@ func (swagger *MgwSwagger) SetInfoSwagger(swagger2 spec.Swagger) error {
swagger.vendorExtensions = swagger2.VendorExtensible.Extensions
swagger.securityScheme = setSecurityDefinitions(swagger2)
swagger.security = swagger2.Security
parsedEndpoints, epParsingError := setResourcesSwagger(swagger2)
if epParsingError != nil {
return errors.New("one of the resource paths exceeds maximum allowed content length")
parsedResources, resourceParsingError := setResourcesSwagger(swagger2)
if resourceParsingError != nil {
return errors.New("one of the resource paths in the swagger definition exceeds maximum allowed content length")
}
swagger.resources = parsedEndpoints
swagger.resources = parsedResources
swagger.apiType = HTTP
swagger.xWso2Basepath = swagger2.BasePath
// According to the definition, multiple schemes can be mentioned. Since the microgateway can assign only one scheme
Expand Down Expand Up @@ -96,7 +95,7 @@ func setResourcesSwagger(swagger2 spec.Swagger) ([]*Resource, error) {
for path, pathItem := range swagger2.Paths.Paths {
if conf.Envoy.MaximumResourcePathLengthInKB != -1 &&
isResourcePathLimitExceeds(path, int(conf.Envoy.MaximumResourcePathLengthInKB)) {
return nil, errors.New("The path " + path + " exceeds maximum allowed length")
return nil, errors.New("path: " + path + " exceeds maximum allowed length")
}
disableSecurity, found := swagger2.VendorExtensible.Extensions.GetBool(xWso2DisableSecurity)
// Checks for resource level security, if security is disabled in resource level,
Expand Down
2 changes: 2 additions & 0 deletions resources/conf/config.toml.template
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,8 @@ sandboxVhost = "sandbox.host"
systemHost = "localhost"
# Hostname for API Resources exposed within the cluster (eg: /.wellknown/jwks and /testkey)
internalServiceHost = "localhost"
# Allowed maximum resource path content size in KB
maximumResourcePathLengthInKB = -1

# Configurations of key store used in Choreo Connect Router
[router.keystore]
Expand Down

0 comments on commit 483694d

Please sign in to comment.