From 3a14b22ebcb60a8c730c1a09f0be005dd2b5db8f Mon Sep 17 00:00:00 2001 From: sagit Date: Mon, 9 Feb 2026 04:39:27 +0000 Subject: [PATCH] fix: prevent nil pointer dereference in listener config parsing --- go-gost/x/config/parsing/service/parse.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/go-gost/x/config/parsing/service/parse.go b/go-gost/x/config/parsing/service/parse.go index 0b7957c..1c4f684 100644 --- a/go-gost/x/config/parsing/service/parse.go +++ b/go-gost/x/config/parsing/service/parse.go @@ -211,7 +211,6 @@ func ParseService(cfg *config.ServiceConfig) (service.Service, error) { listener.AuthOption(auth_parser.Info(cfg.Listener.Auth)), listener.TLSConfigOption(tlsConfig), listener.AdmissionOption(xadmission.AdmissionGroup(admissions...)), - trafficLimiter, listener.ConnLimiterOption(registry.ConnLimiterRegistry().Get(cfg.CLimiter)), listener.ServiceOption(cfg.Name), listener.ProxyProtocolOption(ppv), @@ -219,6 +218,9 @@ func ParseService(cfg *config.ServiceConfig) (service.Service, error) { listener.NetnsOption(netnsIn), listener.LoggerOption(listenerLogger), } + if trafficLimiter != nil { + listenOpts = append(listenOpts, trafficLimiter) + } if netnsIn != "" { runtime.LockOSThread()