From f609587dbd8edd766499025b4a07ea4a74706137 Mon Sep 17 00:00:00 2001 From: Umberto Baldi Date: Wed, 24 Jan 2024 19:19:19 +0100 Subject: [PATCH 1/2] fix origins specified in the config.ini being ignored, and typo --- main.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/main.go b/main.go index 0fdf2626c..6292b9139 100755 --- a/main.go +++ b/main.go @@ -29,6 +29,7 @@ import ( "runtime" "runtime/debug" "strconv" + "strings" "time" cert "github.com/arduino/arduino-create-agent/certificates" @@ -372,10 +373,15 @@ func loop() { extraOrigins = append(extraOrigins, "https://127.0.0.1:"+port) } - allowOrigings := []string{*origins} - allowOrigings = append(allowOrigings, extraOrigins...) + allowOrigins := strings.Split(*origins, ",") + // We need to trim possible spaces from the origins, otherwise the CORS middleware + // validation might not work as expected + for i := range allowOrigins { + allowOrigins[i] = strings.TrimSpace(allowOrigins[i]) + } + allowOrigins = append(allowOrigins, extraOrigins...) r.Use(cors.New(cors.Config{ - AllowOrigins: allowOrigings, + AllowOrigins: allowOrigins, AllowMethods: []string{"PUT", "GET", "POST", "DELETE"}, AllowHeaders: []string{"Origin", "Authorization", "Content-Type"}, ExposeHeaders: []string{}, From 0bd2a0038e5b790075706918d5919a8435cff4a3 Mon Sep 17 00:00:00 2001 From: Umberto Baldi Date: Wed, 24 Jan 2024 19:21:53 +0100 Subject: [PATCH 2/2] add again wildcard support in origin config option --- main.go | 1 + 1 file changed, 1 insertion(+) diff --git a/main.go b/main.go index 6292b9139..20cfca4eb 100755 --- a/main.go +++ b/main.go @@ -381,6 +381,7 @@ func loop() { } allowOrigins = append(allowOrigins, extraOrigins...) r.Use(cors.New(cors.Config{ + AllowWildcard: true, AllowOrigins: allowOrigins, AllowMethods: []string{"PUT", "GET", "POST", "DELETE"}, AllowHeaders: []string{"Origin", "Authorization", "Content-Type"},