From f0bae783cfe2e69d9151fc1e65611338b53bc3cb Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 17 Nov 2025 22:31:53 -0600 Subject: [PATCH] cleanup --- esphome/components/captive_portal/__init__.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/esphome/components/captive_portal/__init__.py b/esphome/components/captive_portal/__init__.py index 2c788c4b39..25d0a22083 100644 --- a/esphome/components/captive_portal/__init__.py +++ b/esphome/components/captive_portal/__init__.py @@ -74,9 +74,10 @@ def _final_validate(config: ConfigType) -> ConfigType: # Register socket needs for DNS server and additional HTTP connections # - 1 UDP socket for DNS server - # - 3 additional TCP sockets for captive portal HTTP connections - # OS captive portal detection makes multiple simultaneous probe requests. - # LRU purging will reclaim idle sockets, but we need enough for the initial burst. + # - 3 additional TCP sockets for captive portal detection probes + configuration requests + # OS captive portal detection makes multiple probe requests that stay in TIME_WAIT. + # Need headroom for actual user configuration requests. + # LRU purging will reclaim idle sockets to prevent exhaustion from repeated attempts. from esphome.components import socket socket.consume_sockets(4, "captive_portal")(config)