summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-03-28 21:31:00 +0100
committerGitHub <noreply@github.com>2024-03-28 21:31:00 +0100
commitf30a22ebde92302916282be4fe40489efaaf3b3e (patch)
treec948506faa5ebfb53bca96ec5ae667c080a85f7a
parent4412edb14062cc53ede8ac6edbc584596d8abd47 (diff)
parenta39f8c73ba6063c01e734b27a6e6a6dc72b20a2d (diff)
downloadvyos-1x-f30a22ebde92302916282be4fe40489efaaf3b3e.tar.gz
vyos-1x-f30a22ebde92302916282be4fe40489efaaf3b3e.zip
Merge pull request #3210 from sarthurdev/T6174
dhcp: T6174: Add TACACS/Radius users to _kea group
-rw-r--r--debian/vyos-1x.postinst2
-rwxr-xr-xsrc/op_mode/dhcp.py10
2 files changed, 10 insertions, 2 deletions
diff --git a/debian/vyos-1x.postinst b/debian/vyos-1x.postinst
index 74fd229b4..0e6e3c863 100644
--- a/debian/vyos-1x.postinst
+++ b/debian/vyos-1x.postinst
@@ -71,6 +71,7 @@ if ! grep -q '^tacacs' /etc/passwd; then
adduser --quiet tacacs${level} sudo
adduser --quiet tacacs${level} disk
adduser --quiet tacacs${level} frr
+ adduser --quiet tacacs${level} _kea
fi
level=$(( level+1 ))
done 2>&1 | grep -v "User tacacs${level} already exists"
@@ -102,6 +103,7 @@ if ! grep -q '^radius_priv_user' /etc/passwd; then
adduser --quiet radius_priv_user disk
adduser --quiet radius_priv_user users
adduser --quiet radius_priv_user frr
+ adduser --quiet radius_priv_user _kea
fi
# add hostsd group for vyos-hostsd
diff --git a/src/op_mode/dhcp.py b/src/op_mode/dhcp.py
index a2f947400..f6029c748 100755
--- a/src/op_mode/dhcp.py
+++ b/src/op_mode/dhcp.py
@@ -80,14 +80,20 @@ def _get_raw_server_leases(family='inet', pool=None, sorted=None, state=[], orig
:return list
"""
inet_suffix = '6' if family == 'inet6' else '4'
- leases = kea_get_leases(inet_suffix)
+ try:
+ leases = kea_get_leases(inet_suffix)
+ except:
+ raise vyos.opmode.DataUnavailable('Cannot fetch DHCP server lease information')
if pool is None:
pool = _get_dhcp_pools(family=family)
else:
pool = [pool]
- active_config = kea_get_active_config(inet_suffix)
+ try:
+ active_config = kea_get_active_config(inet_suffix)
+ except:
+ raise vyos.opmode.DataUnavailable('Cannot fetch DHCP server configuration')
data = []
for lease in leases: