From 2340da4d5f11f1df5e9c7d6eadae3022b7d2b098 Mon Sep 17 00:00:00 2001 From: trypa11 Date: Wed, 7 Aug 2024 13:53:59 +0300 Subject: [PATCH] Fixing Swagger_test --- go.mod | 2 +- pkg/input/formats/swagger/swagger.go | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index e60db3cde3..82e6faa32c 100644 --- a/go.mod +++ b/go.mod @@ -71,6 +71,7 @@ require ( github.com/go-pg/pg v8.0.7+incompatible github.com/go-sql-driver/mysql v1.7.1 github.com/h2non/filetype v1.1.3 + github.com/invopop/yaml v0.3.1 github.com/labstack/echo/v4 v4.10.2 github.com/leslie-qiwa/flat v0.0.0-20230424180412-f9d1cf014baa github.com/lib/pq v1.10.9 @@ -168,7 +169,6 @@ require ( github.com/hashicorp/go-version v1.6.0 // indirect github.com/hashicorp/golang-lru/v2 v2.0.6 // indirect github.com/hbakhtiyor/strsim v0.0.0-20190107154042-4d2bbb273edf // indirect - github.com/invopop/yaml v0.3.1 // indirect github.com/jcmturner/aescts/v2 v2.0.0 // indirect github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect github.com/jcmturner/gofork v1.7.6 // indirect diff --git a/pkg/input/formats/swagger/swagger.go b/pkg/input/formats/swagger/swagger.go index 2828bb293e..30a7564ecc 100644 --- a/pkg/input/formats/swagger/swagger.go +++ b/pkg/input/formats/swagger/swagger.go @@ -2,6 +2,7 @@ package swagger import ( "encoding/json" + "io" "os" "path" @@ -10,7 +11,7 @@ import ( "github.com/pkg/errors" "github.com/projectdiscovery/nuclei/v3/pkg/input/formats" "github.com/projectdiscovery/nuclei/v3/pkg/input/formats/openapi" - "gopkg.in/yaml.v2" + "github.com/invopop/yaml" "github.com/getkin/kin-openapi/openapi2conv" ) @@ -49,7 +50,11 @@ func (j *SwaggerFormat) Parse(input string, resultsCb formats.ParseReqRespCallba ext := path.Ext(input) if ext == ".yaml" || ext == ".yml" { - err = yaml.NewDecoder(file).Decode(schemav2) + data, err_data := io.ReadAll(file) + if err_data != nil { + return errors.Wrap(err, "could not read data file") + } + err = yaml.Unmarshal(data, schemav2) } else { err = json.NewDecoder(file).Decode(schemav2) }