From e225407b038aaa03a5f9d00feba3d83cbccd62c7 Mon Sep 17 00:00:00 2001 From: Borys Anikiyenko <7brend7@gmail.com> Date: Sun, 6 Jul 2025 22:25:17 +0300 Subject: [PATCH] fix empty sso advanced parameters --- src/mod/auth/sso/forward/forward.go | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/mod/auth/sso/forward/forward.go b/src/mod/auth/sso/forward/forward.go index 44a2abb..4c59d63 100644 --- a/src/mod/auth/sso/forward/forward.go +++ b/src/mod/auth/sso/forward/forward.go @@ -58,11 +58,20 @@ func NewAuthRouter(options *AuthRouterOptions) *AuthRouter { options.Database.Read(DatabaseTable, DatabaseKeyRequestIncludedCookies, &requestIncludedCookies) options.Database.Read(DatabaseTable, DatabaseKeyRequestExcludedCookies, &requestExcludedCookies) - options.ResponseHeaders = strings.Split(responseHeaders, ",") - options.ResponseClientHeaders = strings.Split(responseClientHeaders, ",") - options.RequestHeaders = strings.Split(requestHeaders, ",") - options.RequestIncludedCookies = strings.Split(requestIncludedCookies, ",") - options.RequestExcludedCookies = strings.Split(requestExcludedCookies, ",") + // Helper function to clean empty strings from split results + cleanSplit := func(s string) []string { + parts := strings.Split(s, ",") + if len(parts) == 1 && parts[0] == "" { + return []string{} + } + return parts + } + + options.ResponseHeaders = cleanSplit(responseHeaders) + options.ResponseClientHeaders = cleanSplit(responseClientHeaders) + options.RequestHeaders = cleanSplit(requestHeaders) + options.RequestIncludedCookies = cleanSplit(requestIncludedCookies) + options.RequestExcludedCookies = cleanSplit(requestExcludedCookies) return &AuthRouter{ client: &http.Client{