summaryrefslogtreecommitdiff
path: root/python/vyos/template.py
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2025-04-15 15:54:02 +0100
committerGitHub <noreply@github.com>2025-04-15 15:54:02 +0100
commit9e47c2153be7cc0e5ed21ca8a976336d4bf872d8 (patch)
treead917159c42092dfe1496edebcdd7f4025eab472 /python/vyos/template.py
parent2f54cbc0504a20424274e45b9210467d33acf919 (diff)
parent176da07ba48f9aac2e39ff45509306f0a0afe9da (diff)
downloadveeos-1x-9e47c2153be7cc0e5ed21ca8a976336d4bf872d8.tar.gz
veeos-1x-9e47c2153be7cc0e5ed21ca8a976336d4bf872d8.zip
Merge pull request #4412 from sarthurdev/kea_2.6
kea: T7281: Add ping-check, use built-in option for classless static routes
Diffstat (limited to 'python/vyos/template.py')
-rwxr-xr-xpython/vyos/template.py28
1 files changed, 5 insertions, 23 deletions
diff --git a/python/vyos/template.py b/python/vyos/template.py
index e75db1a8d..7ba85a046 100755
--- a/python/vyos/template.py
+++ b/python/vyos/template.py
@@ -390,28 +390,6 @@ def compare_netmask(netmask1, netmask2):
except:
return False
-@register_filter('isc_static_route')
-def isc_static_route(subnet, router):
- # https://ercpe.de/blog/pushing-static-routes-with-isc-dhcp-server
- # Option format is:
- # <netmask>, <network-byte1>, <network-byte2>, <network-byte3>, <router-byte1>, <router-byte2>, <router-byte3>
- # where bytes with the value 0 are omitted.
- from ipaddress import ip_network
- net = ip_network(subnet)
- # add netmask
- string = str(net.prefixlen) + ','
- # add network bytes
- if net.prefixlen:
- width = net.prefixlen // 8
- if net.prefixlen % 8:
- width += 1
- string += ','.join(map(str,tuple(net.network_address.packed)[:width])) + ','
-
- # add router bytes
- string += ','.join(router.split('.'))
-
- return string
-
@register_filter('is_file')
def is_file(filename):
if os.path.exists(filename):
@@ -895,7 +873,8 @@ def kea_shared_network_json(shared_networks):
network = {
'name': name,
'authoritative': ('authoritative' in config),
- 'subnet4': []
+ 'subnet4': [],
+ 'user-context': {}
}
if 'option' in config:
@@ -907,6 +886,9 @@ def kea_shared_network_json(shared_networks):
if 'bootfile_server' in config['option']:
network['next-server'] = config['option']['bootfile_server']
+ if 'ping_check' in config:
+ network['user-context']['enable-ping-check'] = True
+
if 'subnet' in config:
for subnet, subnet_config in config['subnet'].items():
if 'disable' in subnet_config: