Commit 756481fc authored by Xavier Thompson's avatar Xavier Thompson

slapformat: WIP: Add addressFromNetwork utility

parent 7dfd0401
......@@ -603,8 +603,7 @@ class Interface(object):
return ipaddress.IPv4Network(cidr, strict=False)
def getPartitionIPv4Addr(self, index):
network = self.ipv4_network
return ipaddress.IPv4Interface((network[index + 2], network.prefixlen))
return addressFromNetwork(self.ipv4_network, index + 2)
def getTapIPv4Network(self, conf):
tap_gateway_interface = conf.tap_gateway_interface
......@@ -634,7 +633,7 @@ class Interface(object):
def getTapIPv4Gateway(self, _index):
network = self.tap_ipv4_network
if network:
return ipaddress.IPv4Interface((network[1], network.prefixlen))
return addressFromNetwork(network, 1)
def getTapIPv4Range(self, index):
network = self.tap_ipv4_network
......@@ -681,12 +680,10 @@ class Interface(object):
)
def getComputerIPv6Addr(self):
network = self.ipv6_network
return ipaddress.IPv6Interface((network[1], network.prefixlen))
return addressFromNetwork(self.ipv6_network, 1)
def getPartitionIPv6Addr(self, index):
network = self.ipv6_network
return ipaddress.IPv6Interface((network[index + 2], network.prefixlen))
return addressFromNetwork(self.ipv6_network, index + 2)
def getPartitionIPv6Range(self, index):
network = self.ipv6_network
......@@ -782,6 +779,11 @@ def ensureDir(path, mode):
raise
def addressFromNetwork(network, index):
addr = network[index]
return ipaddress.ip_interface((addr, network.prefixlen))
# Wrapping, Tracing & Dry-running
class WrappedModule(object):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment