diff options
author | Indrajit Raychaudhuri <irc@indrajit.com> | 2025-01-26 15:16:58 -0600 |
---|---|---|
committer | Indrajit Raychaudhuri <irc@indrajit.com> | 2025-01-26 15:22:24 -0600 |
commit | 9723f1054a98d82ee71a18eb672472be0a632f8e (patch) | |
tree | cf702b9fe13f441c8b2af357a7fd8c8a8e2d4cb8 /python | |
parent | 10ee7ac1d2bfd20bd11b5ebaa33c2f07dd561d48 (diff) | |
download | vyos-1x-9723f1054a98d82ee71a18eb672472be0a632f8e.tar.gz vyos-1x-9723f1054a98d82ee71a18eb672472be0a632f8e.zip |
dhcp: T7052: Fix remaining time evaluation and formatting errors
The remaining time for a lease was not being correctly
evaluated and formatted. As a result, expired leases
show up with `show dhcp server leases`.
Also, the empty hostname should be replaced by '-'.
Diffstat (limited to 'python')
-rw-r--r-- | python/vyos/kea.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/python/vyos/kea.py b/python/vyos/kea.py index 951c83693..fe1564355 100644 --- a/python/vyos/kea.py +++ b/python/vyos/kea.py @@ -497,7 +497,7 @@ def kea_get_server_leases(config, inet, pools=[], state=[], origin=None) -> list ) data_lease['origin'] = 'local' # TODO: Determine remote in HA # remove trailing dot in 'hostname' to ensure consistency for `vyos-hostsd-client` - data_lease['hostname'] = lease.get('hostname', '-').rstrip('.') + data_lease['hostname'] = lease.get('hostname', '').rstrip('.') or '-' if inet == '4': data_lease['mac'] = lease['hw-address'] @@ -512,7 +512,7 @@ def kea_get_server_leases(config, inet, pools=[], state=[], origin=None) -> list prefix_len = lease['prefix-len'] data_lease['ip'] += f'/{prefix_len}' - data_lease['remaining'] = '-' + data_lease['remaining'] = '' if lease['valid-lft'] > 0: data_lease['remaining'] = lease['expire_timestamp'] - datetime.now( @@ -526,7 +526,7 @@ def kea_get_server_leases(config, inet, pools=[], state=[], origin=None) -> list # Do not add old leases if ( - data_lease['remaining'] + data_lease['remaining'] != '' and data_lease['pool'] in pools and data_lease['state'] != 'free' and (not state or state == 'all' or data_lease['state'] in state) |