Revision a1d3bc8a snf-cyclades-app/synnefo/db/pools/__init__.py

b/snf-cyclades-app/synnefo/db/pools/__init__.py
268 268

  
269 269
class IPPool(PoolManager):
270 270
    def __init__(self, pool_table):
271
        do_init = False if pool_table.available_map else True
272 271
        subnet = pool_table.subnet
273 272
        self.net = ipaddr.IPNetwork(subnet.cidr)
273
        if pool_table.base is None:
274
            self.base = pool_table.subnet.cidr
275
        else:
276
            self.base = pool_table.base
277
        if pool_table.offset is None:
278
            self.offset = 0
279
        else:
280
            self.offset = pool_table.offset
274 281
        super(IPPool, self).__init__(pool_table)
275
        if do_init:
276
            self._reserve(0, external=True)
277
            if gateway:
278
                self.reserve(gateway, external=True)
279
            self._reserve(self.pool_size - 1, external=True)
280 282

  
281 283
    def value_to_index(self, value):
282 284
        addr = ipaddr.IPAddress(value)

Also available in: Unified diff