From 3920a788b44f11c6b0bb7afa80f3232784fa0dcc Mon Sep 17 00:00:00 2001 From: Jack Pordi Date: Mon, 16 Jun 2025 12:41:58 +0100 Subject: [PATCH] wip --- pkg/config/legacy/conversion.go | 5 +++++ pkg/config/v1/common.go | 3 ++- pkg/plugin/client/http2http.go | 3 +++ pkg/plugin/client/http2https.go | 3 +++ pkg/plugin/client/https2http.go | 3 +++ pkg/plugin/client/https2https.go | 3 +++ 6 files changed, 19 insertions(+), 1 deletion(-) diff --git a/pkg/config/legacy/conversion.go b/pkg/config/legacy/conversion.go index 4ae54f88..73859d26 100644 --- a/pkg/config/legacy/conversion.go +++ b/pkg/config/legacy/conversion.go @@ -179,6 +179,11 @@ func transformHeadersFromPluginParams(params map[string]string) v1.HeaderOperati out.Set = make(map[string]string) } out.Set[k] = v + + if out.Delete == nil { + out.Delete = make(map[string]bool) + } + out.Delete[k] = true } } return out diff --git a/pkg/config/v1/common.go b/pkg/config/v1/common.go index ddb23356..d5703e55 100644 --- a/pkg/config/v1/common.go +++ b/pkg/config/v1/common.go @@ -127,7 +127,8 @@ type HTTPPluginOptions struct { } type HeaderOperations struct { - Set map[string]string `json:"set,omitempty"` + Set map[string]string `json:"set,omitempty"` + Delete map[string]bool `json:"delete,omitempty"` } type HTTPHeader struct { diff --git a/pkg/plugin/client/http2http.go b/pkg/plugin/client/http2http.go index 889a10f6..807eece7 100644 --- a/pkg/plugin/client/http2http.go +++ b/pkg/plugin/client/http2http.go @@ -61,6 +61,9 @@ func NewHTTP2HTTPPlugin(_ PluginContext, options v1.ClientPluginOptions) (Plugin for k, v := range p.opts.RequestHeaders.Set { req.Header.Set(k, v) } + for k, _ := range p.opts.RequestHeaders.Delete { + req.Header.Del(k) + } }, BufferPool: pool.NewBuffer(32 * 1024), ErrorLog: stdlog.New(log.NewWriteLogger(log.WarnLevel, 2), "", 0), diff --git a/pkg/plugin/client/http2https.go b/pkg/plugin/client/http2https.go index 538f2850..43163130 100644 --- a/pkg/plugin/client/http2https.go +++ b/pkg/plugin/client/http2https.go @@ -69,6 +69,9 @@ func NewHTTP2HTTPSPlugin(_ PluginContext, options v1.ClientPluginOptions) (Plugi for k, v := range p.opts.RequestHeaders.Set { req.Header.Set(k, v) } + for k, _ := range p.opts.RequestHeaders.Delete { + req.Header.Del(k) + } }, Transport: tr, BufferPool: pool.NewBuffer(32 * 1024), diff --git a/pkg/plugin/client/https2http.go b/pkg/plugin/client/https2http.go index 963b9d2e..96459124 100644 --- a/pkg/plugin/client/https2http.go +++ b/pkg/plugin/client/https2http.go @@ -68,6 +68,9 @@ func NewHTTPS2HTTPPlugin(_ PluginContext, options v1.ClientPluginOptions) (Plugi for k, v := range p.opts.RequestHeaders.Set { req.Header.Set(k, v) } + for k, _ := range p.opts.RequestHeaders.Delete { + req.Header.Del(k) + } }, BufferPool: pool.NewBuffer(32 * 1024), ErrorLog: stdlog.New(log.NewWriteLogger(log.WarnLevel, 2), "", 0), diff --git a/pkg/plugin/client/https2https.go b/pkg/plugin/client/https2https.go index 5c669d36..c2c6ffd0 100644 --- a/pkg/plugin/client/https2https.go +++ b/pkg/plugin/client/https2https.go @@ -73,6 +73,9 @@ func NewHTTPS2HTTPSPlugin(_ PluginContext, options v1.ClientPluginOptions) (Plug for k, v := range p.opts.RequestHeaders.Set { req.Header.Set(k, v) } + for k, _ := range p.opts.RequestHeaders.Delete { + req.Header.Del(k) + } }, Transport: tr, BufferPool: pool.NewBuffer(32 * 1024),