diff --git a/net/haproxy/pkg-descr b/net/haproxy/pkg-descr
index 1675d938b..cee9c1c70 100644
--- a/net/haproxy/pkg-descr
+++ b/net/haproxy/pkg-descr
@@ -6,6 +6,9 @@ very high loads while needing persistence or Layer7 processing.
Plugin Changelog
================
+Added:
+* add new option "Gradual connection close time" (close-spread-time) (#3026)
+
Changed:
* rename frontend option "Type" to "Connection Mode" (#3026)
* update URLs to HAProxy 2.6 documentation (#3026)
diff --git a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/generalSettings.xml b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/generalSettings.xml
index aa3f791ff..b9934dd6a 100644
--- a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/generalSettings.xml
+++ b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/generalSettings.xml
@@ -21,6 +21,12 @@
text
+
+ haproxy.general.closeSpreadTime
+
+ text
+
+ haproxy.general.seamlessReload
diff --git a/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml b/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml
index 5a465b296..340264d97 100644
--- a/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml
+++ b/net/haproxy/src/opnsense/mvc/app/models/OPNsense/HAProxy/HAProxy.xml
@@ -18,6 +18,11 @@
Should be a number between 1 and 8 characters, optionally followed by either "d", "h", "m", "s", "ms" or "us".N
+
+ /^([0-9]{1,8}(?:us|ms|s|m|h|d)?)/u
+ Should be a number between 1 and 8 characters, optionally followed by either "d", "h", "m", "s", "ms" or "us".
+ N
+ 0Y
diff --git a/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf b/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf
index 418a16c1e..c4799282f 100644
--- a/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf
+++ b/net/haproxy/src/opnsense/service/templates/OPNsense/HAProxy/haproxy.conf
@@ -973,6 +973,9 @@ global
{% if OPNsense.HAProxy.general.hardStopAfter|default('') != '' %}
hard-stop-after {{OPNsense.HAProxy.general.hardStopAfter}}
{% endif %}
+{% if OPNsense.HAProxy.general.closeSpreadTime|default('') != '' %}
+ close-spread-time {{OPNsense.HAProxy.general.closeSpreadTime}}
+{% endif %}
{# # Disable strict-limits because a syntax check will not reveal #}
{# # whether kern.maxfilesperproc or kern.maxfiles are too low. #}
no strict-limits