refactor: do not expose transport to Overlay

oesni committed May 4, 2026 at 14:18 UTC 544a9f3c16b72df8f530f972b3e6a7451035a59a
1 file changed +12 -15
portal/overlay/overlay.go
+12 -15
@@ -66,12 +66,11 @@ func NormalizeConfig(cfg Config) (Config, error) {
66 }
67
68 type Overlay struct {
69 - cfg Config
70 - stack *stack
71 - listener net.Listener
72 - server *http.Server
73 - transport *http.Transport
74 - client *http.Client
69 + cfg Config
70 + stack *stack
71 + listener net.Listener
72 + server *http.Server
73 + client *http.Client
74 }
75
76 func NewOverlay(cfg Config, handler http.Handler) (*Overlay, error) {
@@ -109,17 +108,15 @@ func NewOverlay(cfg Config, handler http.Handler) (*Overlay, error) {
108 utils.WithHTTPExpectContinueTimeout(1*time.Second),
109 utils.WithoutHTTP2(),
110 )
112 - transport := client.Transport.(*http.Transport)
111
112 publicCfg := cfg.Copy()
113 publicCfg.PrivateKey = ""
114 return &Overlay{
117 - cfg: publicCfg,
118 - stack: stack,
119 - listener: listener,
120 - server: server,
121 - transport: transport,
122 - client: client,
115 + cfg: publicCfg,
116 + stack: stack,
117 + listener: listener,
118 + server: server,
119 + client: client,
120 }, nil
121 }
122
@@ -154,8 +151,8 @@ func (o *Overlay) Shutdown(ctx context.Context) error {
151 shutdownErr = errors.Join(shutdownErr, err)
152 }
153 }
157 - if o.transport != nil {
158 - o.transport.CloseIdleConnections()
154 + if o.client != nil {
155 + o.client.CloseIdleConnections()
156 }
157 if o.listener != nil {
158 err := o.listener.Close()