summaryrefslogtreecommitdiff
path: root/smoketest/scripts
diff options
context:
space:
mode:
authorAlex Kudentsov <43482574+alexk37@users.noreply.github.com>2026-05-22 13:50:27 +0700
committerAlex Kudentsov <43482574+alexk37@users.noreply.github.com>2026-05-22 17:54:18 +0700
commitce401c3f099a92c49ee8a0344ac80e113e19883e (patch)
tree9b054919698b6a479465dd1df4df2e670a4a0c4c /smoketest/scripts
parent88b93c96faa5b1016546cbc15d1327b4692a87cc (diff)
downloadvyos-1x-ce401c3f099a92c49ee8a0344ac80e113e19883e.tar.gz
vyos-1x-ce401c3f099a92c49ee8a0344ac80e113e19883e.zip
T8910: ipoe-server: expose accel-ppp idle-timeout option
Add a CLI knob to terminate idle IPoE sessions after a configurable timeout: set service ipoe-server idle-timeout <0-86400> Today there is no way to age out stale IPoE sessions: clients that go silent (powered off, link down) leave a session record on the router indefinitely. accel-ppp natively supports idle-timeout in its [ipoe] section but VyOS did not expose it. The option is added as a shared accel-ppp include so it can be reused by other accel-ppp services in follow-up PRs.
Diffstat (limited to 'smoketest/scripts')
-rwxr-xr-xsmoketest/scripts/cli/test_service_ipoe-server.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_service_ipoe-server.py b/smoketest/scripts/cli/test_service_ipoe-server.py
index 47d6cce4b..614295fd8 100755
--- a/smoketest/scripts/cli/test_service_ipoe-server.py
+++ b/smoketest/scripts/cli/test_service_ipoe-server.py
@@ -319,6 +319,25 @@ delegate={delegate_2_prefix},{delegate_mask},name={pool_name}"""
conf.read(self._config_file)
self.assertIn(f'start={start_session}', conf['ipoe']['interface'])
+ def test_ipoe_server_idle_timeout(self):
+ idle_timeout = '300'
+
+ self.basic_config()
+ self.cli_commit()
+
+ # Default: no idle-timeout emitted
+ conf = ConfigParser(allow_no_value=True, delimiters='=', strict=False)
+ conf.read(self._config_file)
+ self.assertNotIn('idle-timeout', conf['ipoe'])
+
+ # Configure idle-timeout
+ self.set(['idle-timeout', idle_timeout])
+ self.cli_commit()
+
+ conf = ConfigParser(allow_no_value=True, delimiters='=', strict=False)
+ conf.read(self._config_file)
+ self.assertEqual(conf['ipoe']['idle-timeout'], idle_timeout)
+
@unittest.skip("PPP is not a part of IPoE")
def test_accel_ppp_options(self):
pass