From fc15a2e28171bb13e60086ca213b0203336cb4dd Mon Sep 17 00:00:00 2001 From: Stephan de Wit Date: Wed, 12 Jul 2023 14:10:37 +0200 Subject: [PATCH] dhcp4: use argparse instead of params --- src/opnsense/scripts/dhcp/get_leases.py | 9 +++++---- src/opnsense/service/conf/actions.d/actions_dhcpd.conf | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/opnsense/scripts/dhcp/get_leases.py b/src/opnsense/scripts/dhcp/get_leases.py index 612829fca..8b20a8628 100755 --- a/src/opnsense/scripts/dhcp/get_leases.py +++ b/src/opnsense/scripts/dhcp/get_leases.py @@ -31,12 +31,13 @@ import sys sys.path.insert(0, "/usr/local/opnsense/site-python") import watchers.dhcpd -import params import time +import argparse import ujson -app_params = {'inactive': '0'} -params.update_params(app_params) +parser = argparse.ArgumentParser() +parser.add_argument('--inactive', help='include inactive leases', default='0', type=str) +args = parser.parse_args() last_leases = dict() result = list() @@ -46,7 +47,7 @@ for lease in dhcpdleases.watch(): last_leases[lease['address']] = lease for lease in last_leases.values(): - if ('ends' in lease and lease['ends'] is not None and lease['ends'] > time.time()) or app_params['inactive'] != '0': + if ('ends' in lease and lease['ends'] is not None and lease['ends'] > time.time()) or args.inactive == '1': result.append(lease) print (ujson.dumps(result)) diff --git a/src/opnsense/service/conf/actions.d/actions_dhcpd.conf b/src/opnsense/service/conf/actions.d/actions_dhcpd.conf index 091104ec5..388b6f4b1 100644 --- a/src/opnsense/service/conf/actions.d/actions_dhcpd.conf +++ b/src/opnsense/service/conf/actions.d/actions_dhcpd.conf @@ -1,6 +1,6 @@ [list.leases] command:/usr/local/opnsense/scripts/dhcp/get_leases.py -parameters:/inactive %s +parameters:--inactive %s type:script_output message:list dhcp leases %s