diff options
| author | Mark Washenberger <mark.washenberger@rackspace.com> | 2011-05-18 19:30:58 -0400 |
|---|---|---|
| committer | Mark Washenberger <mark.washenberger@rackspace.com> | 2011-05-18 19:30:58 -0400 |
| commit | 563a438df8c36fc351894f1695c4d533bf20f74e (patch) | |
| tree | e01c9013a0efb7f7ed671e509d23043ebed760f2 /nova/utils.py | |
| parent | 79d505c015bff1598e8e896f6198d65d90095ba6 (diff) | |
| parent | 92db39bdb439f693ed59626d8c58f03e470d31f6 (diff) | |
merge lp:nova
Diffstat (limited to 'nova/utils.py')
| -rw-r--r-- | nova/utils.py | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/nova/utils.py b/nova/utils.py index b55e83e5a..361fc9873 100644 --- a/nova/utils.py +++ b/nova/utils.py @@ -306,26 +306,6 @@ def get_my_linklocal(interface): " :%(ex)s") % locals()) -def to_global_ipv6(prefix, mac): - try: - mac64 = netaddr.EUI(mac).eui64().words - int_addr = int(''.join(['%02x' % i for i in mac64]), 16) - mac64_addr = netaddr.IPAddress(int_addr) - maskIP = netaddr.IPNetwork(prefix).ip - return (mac64_addr ^ netaddr.IPAddress('::0200:0:0:0') | maskIP).\ - format() - except TypeError: - raise TypeError(_('Bad mac for to_global_ipv6: %s') % mac) - - -def to_mac(ipv6_address): - address = netaddr.IPAddress(ipv6_address) - mask1 = netaddr.IPAddress('::ffff:ffff:ffff:ffff') - mask2 = netaddr.IPAddress('::0200:0:0:0') - mac64 = netaddr.EUI(int(address & mask1 ^ mask2)).words - return ':'.join(['%02x' % i for i in mac64[0:3] + mac64[5:8]]) - - def utcnow(): """Overridable version of datetime.datetime.utcnow.""" if utcnow.override_time: @@ -462,6 +442,8 @@ class LoopingCall(object): try: while self._running: self.f(*self.args, **self.kw) + if not self._running: + break greenthread.sleep(interval) except LoopingCallDone, e: self.stop() |
