Changeset 13321 in genesis for tools/getrange.py
- Timestamp:
- Jul 28, 2015, 7:30:21 AM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
tools/getrange.py
r11514 r13321 27 27 28 28 bezet_cache = None 29 def make_cache(): 30 global bezet_cache 31 bezet = {} 32 substs = {} 33 def add_ip(address): 34 if '/' not in address: 35 address += "/32" 36 37 addr, mask = address.split('/') 38 if addr in substs: 39 addr = substs[addr] 40 try: 41 addr = parseaddr(addr) 42 mask = int(mask) 43 addr = addr & ~((1 << (32 - mask)) - 1) 44 for i in range(0, (1 << (32 - mask))): 45 bezet[addr + i] = 1 46 except ValueError, e: 47 print "[FOUT] in address %s node %s" % (address, node) 48 49 for node in gformat.get_hostlist(): 50 datadump = gformat.get_yaml(node) 51 52 add_ip(datadump['masterip']) 53 for key in datadump['autogen_iface_keys']: 54 add_ip(datadump[key]['ip']) 55 56 # Fetching smallest in use IP 57 # XXX: Currently not used for anything 58 i = parseaddr("255.255.255.255") 59 for k in bezet.keys(): 60 if k < i: 61 i = k 62 bezet_cache = bezet 63 return bezet 64 65 29 66 def get_ranges(interlink, size, aantal, use_history=False): 30 67 global bezet_cache … … 32 69 33 70 if not use_history or (use_history and not bezet_cache): 34 bezet = {} 35 substs = {} 36 def add_ip(address): 37 if '/' not in address: 38 address += "/32" 39 40 addr, mask = address.split('/') 41 if addr in substs: 42 addr = substs[addr] 43 try: 44 addr = parseaddr(addr) 45 mask = int(mask) 46 addr = addr & ~((1 << (32 - mask)) - 1) 47 for i in range(0, (1 << (32 - mask))): 48 bezet[addr + i] = 1 49 except ValueError, e: 50 print "[FOUT] in address %s node %s" % (address, node) 51 52 for node in gformat.get_hostlist(): 53 datadump = gformat.get_yaml(node) 54 55 add_ip(datadump['masterip']) 56 for key in datadump['autogen_iface_keys']: 57 add_ip(datadump[key]['ip']) 58 59 # Fetching smallest in use IP 60 # XXX: Currently not used for anything 61 i = parseaddr("255.255.255.255") 62 for k in bezet.keys(): 63 if k < i: 64 i = k 71 bezet = make_cache() 65 72 else: 66 73 bezet = bezet_cache
Note:
See TracChangeset
for help on using the changeset viewer.