From da8eb3ece8626c68bec931c7d54b112588474524 Mon Sep 17 00:00:00 2001 From: Ralph Slooten Date: Sat, 9 May 2026 17:13:22 +1200 Subject: [PATCH] Fix: Validate SMTP XCLIENT args before processing --- internal/smtpd/smtpd.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/internal/smtpd/smtpd.go b/internal/smtpd/smtpd.go index 1915f81..7f5cd6f 100644 --- a/internal/smtpd/smtpd.go +++ b/internal/smtpd/smtpd.go @@ -639,6 +639,9 @@ loop: xCArgs := strings.SplitSeq(args, " ") for xCArg := range xCArgs { xCParse := strings.Split(strings.TrimSpace(xCArg), "=") + if len(xCParse) != 2 { + continue + } if strings.ToUpper(xCParse[0]) == "ADDR" && (net.ParseIP(xCParse[1]) != nil) { s.xClientADDR = xCParse[1] }