From 8c062383e7e195a3e02f652e621c4026ea81c9c5 Mon Sep 17 00:00:00 2001 From: Stefano Torresi Date: Thu, 19 Dec 2024 15:43:25 +0100 Subject: [PATCH 1/2] Fix code scanning alert no. 1: Incorrect conversion between integer types Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> --- lib/sapcontrol/current_instance.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/lib/sapcontrol/current_instance.go b/lib/sapcontrol/current_instance.go index d541f92..e2e97de 100644 --- a/lib/sapcontrol/current_instance.go +++ b/lib/sapcontrol/current_instance.go @@ -3,6 +3,7 @@ package sapcontrol import ( "fmt" "strconv" + "math" "github.com/pkg/errors" ) @@ -37,10 +38,14 @@ func (s *webService) GetCurrentInstance() (*CurrentSapInstance, error) { for _, prop := range response.Properties { switch prop.Property { case "SAPSYSTEM": - var num int - num, err = strconv.Atoi(prop.Value) + var num int64 + num, err = strconv.ParseInt(prop.Value, 10, 32) if err != nil { - err = errors.Wrap(err, "could not parse instance number to int") + err = errors.Wrap(err, "could not parse instance number to int32") + return + } + if num < math.MinInt32 || num > math.MaxInt32 { + err = errors.New("parsed instance number out of int32 range") return } s.currentSapInstance.Number = int32(num) From 5e62fa06b6151d18b7c09824b6a9142de1c97238 Mon Sep 17 00:00:00 2001 From: Stefano Torresi Date: Thu, 19 Dec 2024 15:45:35 +0100 Subject: [PATCH 2/2] fmt fix --- lib/sapcontrol/current_instance.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/sapcontrol/current_instance.go b/lib/sapcontrol/current_instance.go index e2e97de..2ea3df8 100644 --- a/lib/sapcontrol/current_instance.go +++ b/lib/sapcontrol/current_instance.go @@ -2,8 +2,8 @@ package sapcontrol import ( "fmt" - "strconv" "math" + "strconv" "github.com/pkg/errors" )