Kuadrant / kuadrantctl

Kuadrant configuration command line utility
Apache License 2.0
6 stars 13 forks source link

SIGSEGV when parsing OpenOAS not contianing kuadrant extensions #64

Closed azgabur closed 5 months ago

azgabur commented 5 months ago

When testing kuadrantctl binary I encountered a SIGSEGV while generating an AuthPolicy object. I ran kuadrantctl generate kuadrant authpolicy --oas petstore.yaml where petstore.yaml is https://github.com/Kuadrant/kuadrantctl/blob/102017b62d2f6f8bf2398c3a24fb2b6edfe01c38/examples/oas3/petstore.yaml Notably this OpenOAS yaml does not have any kuadrant extensions so I expect some result like "Nothing to generate" or AuthPolicy without restrictions.

Error message:

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x1582d33]

goroutine 1 [running]:
github.com/kuadrant/kuadrantctl/pkg/gatewayapi.HTTPRouteObjectMetaFromOAS(0xc0004b96f0?)
    /github/workspace/pkg/gatewayapi/http_route.go:22 +0x73
github.com/kuadrant/kuadrantctl/cmd.buildAuthPolicy(0xc0005521b0?)
    /github/workspace/cmd/generate_kuadrant_authpolicy.go:68 +0x2a
github.com/kuadrant/kuadrantctl/cmd.runGenerateKuadrantAuthPolicy(0xc000558900?, {0x1948200?, 0x4?, 0x1948204?})
    /github/workspace/cmd/generate_kuadrant_authpolicy.go:56 +0x10b
github.com/spf13/cobra.(*Command).execute(0xc00056d500, {0xc00054a7a0, 0x2, 0x2})
    /go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:940 +0x87c
github.com/spf13/cobra.(*Command).ExecuteC(0xc00056c000)
    /go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:1068 +0x3a5
github.com/spf13/cobra.(*Command).Execute(0xc000052250?)
    /go/pkg/mod/github.com/spf13/cobra@v1.7.0/command.go:992 +0x13
main.main()
    /github/workspace/main.go:27 +0x4a
jasonmadigan commented 5 months ago

https://github.com/Kuadrant/kuadrantctl/pull/65