From eb43ee2b1d78947bded697005d37a4b288afc5db Mon Sep 17 00:00:00 2001
From: Joshua Powers <powersj@fastmail.com>
Date: Mon, 26 Jun 2023 11:06:29 -0600
Subject: [PATCH] fix(inputs.phpfpm): Check address length to avoid crash
 (#13495)

---
 plugins/inputs/phpfpm/phpfpm.go | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/plugins/inputs/phpfpm/phpfpm.go b/plugins/inputs/phpfpm/phpfpm.go
index 6b6222ec1c485..8b4efbeda525f 100644
--- a/plugins/inputs/phpfpm/phpfpm.go
+++ b/plugins/inputs/phpfpm/phpfpm.go
@@ -116,6 +116,9 @@ func (p *phpfpm) gatherServer(addr string, acc telegraf.Accumulator) error {
 			return fmt.Errorf("unable parse server address %q: %w", addr, err)
 		}
 		socketAddr := strings.Split(u.Host, ":")
+		if len(socketAddr) < 2 {
+			return fmt.Errorf("url does not follow required 'address:port' format: %s", u.Host)
+		}
 		fcgiIP := socketAddr[0]
 		fcgiPort, _ := strconv.Atoi(socketAddr[1])
 		fcgi, err = newFcgiClient(fcgiIP, fcgiPort)