test/infamy: Initialize DHCP server interface parameter

This commit is contained in:
Ahmed Karic
2024-11-25 18:05:51 +01:00
parent 289534e0d5
commit 03a2cf7b3b
+5 -6
View File
@@ -1,21 +1,21 @@
"""Start a DHCP server in the background"""
import os
import subprocess
import ipaddress
class Server:
config_file = '/tmp/udhcpd.conf'
leases_file = '/tmp/udhcpd.leases'
def __init__(self, netns, start='192.168.0.100', end='192.168.0.110', netmask='255.255.255.0', ip=None, router=None, prefix=None):
def __init__(self, netns, start='192.168.0.100', end='192.168.0.110', netmask='255.255.255.0', ip=None, router=None, prefix=None, iface="iface"):
self.process = None
self.netns = netns
self.iface = iface
self._create_files(start, end, netmask, ip, router, prefix)
def __del__(self):
print(self.config_file)
#print(self.config_file)
#os.unlink(self.config_file)
#os.unlink(self.leases_file)
pass
def __enter__(self):
self.start()
@@ -33,7 +33,7 @@ class Server:
end=ip
f.write(f'''# Generated by Infamy DHCP
lease_file {self.leases_file}
interface iface
interface {self.iface}
start {start}
end {end}
max_leases 1
@@ -52,7 +52,6 @@ option lease 864000
if not os.path.exists(self.config_file):
raise Exception("Config file does not exist. Please create it first.")
cmd = f"udhcpd -f {self.config_file}"
print(f"Starting: {cmd}")
self.process = self.netns.popen(cmd.split(" "))
def stop(self):