summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Eckersberg <jeckersb@redhat.com>2009-03-04 20:13:23 -0500
committerJohn Eckersberg <jeckersb@redhat.com>2009-03-13 13:52:35 -0400
commitb7c39fcd40e6a6b62807b70114f64d928c75debc (patch)
tree7fec1726c6fd56d7fa6012219a3e4ad62513b7fd
parentd00a649ee114aa12f7bf8f5304dd4db00fd12221 (diff)
downloadcobbler-network.tar.gz
cobbler-network.tar.xz
cobbler-network.zip
need to sort before first iteration of _compactHEADnetwork
-rw-r--r--cobbler/item_network.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/cobbler/item_network.py b/cobbler/item_network.py
index 1c180891..cac23ce1 100644
--- a/cobbler/item_network.py
+++ b/cobbler/item_network.py
@@ -179,6 +179,7 @@ class Network(item.Item):
for k,v in self.used_addresses.iteritems():
if v == addr:
del(self.used_addresses[k])
+ return
def _allocate_address(self, system, intf, addr):
"""
@@ -205,7 +206,7 @@ class Network(item.Item):
break
return cidr_list
- def _compact(self, cidr_list):
+ def _compact(self, cidr_list, sort_first=True):
"""
Compacts a list of CIDR objects down to a minimal-length list L
such that the set of IP addresses contained in L is the same as
@@ -219,6 +220,9 @@ class Network(item.Item):
if len(cidr_list) <= 1:
return cidr_list
+ if sort_first:
+ cidr_list.sort()
+
did_compact = False
skip_next = False
compacted = []
@@ -239,7 +243,7 @@ class Network(item.Item):
skip_next = True
if did_compact:
- return compact(compacted)
+ return compact(compacted, sort_first=False)
else:
return cidr_list