mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2026-07-29 23:58:23 -05:00
Modernize use of range()
In Python 3, range() behaves like the old xrange(). The difference between range() and xrange() is usually not significant, especially if the whole result is iterated over. Convert xrange() usage to range() for small ranges. Use modern idioms in a few other uses of range(). Reviewed-By: Christian Heimes <cheimes@redhat.com> Reviewed-By: Jan Cholasta <jcholast@redhat.com>
This commit is contained in:
committed by
Jan Cholasta
parent
9e917cae39
commit
5178e9a597
+1
-1
@@ -294,7 +294,7 @@ class NameSpace(ReadOnly):
|
|||||||
... def __repr__(self):
|
... def __repr__(self):
|
||||||
... return 'Member(%d)' % self.i
|
... return 'Member(%d)' % self.i
|
||||||
...
|
...
|
||||||
>>> ns = NameSpace(Member(i) for i in xrange(3))
|
>>> ns = NameSpace(Member(i) for i in range(3))
|
||||||
>>> ns
|
>>> ns
|
||||||
NameSpace(<3 members>, sort=True)
|
NameSpace(<3 members>, sort=True)
|
||||||
|
|
||||||
|
|||||||
@@ -1475,12 +1475,12 @@ class IA5Str(Str):
|
|||||||
|
|
||||||
def _convert_scalar(self, value, index=None):
|
def _convert_scalar(self, value, index=None):
|
||||||
if isinstance(value, six.string_types):
|
if isinstance(value, six.string_types):
|
||||||
for i in xrange(len(value)):
|
for char in value:
|
||||||
if ord(value[i]) > 127:
|
if ord(char) > 127:
|
||||||
raise ConversionError(name=self.get_param_name(),
|
raise ConversionError(name=self.get_param_name(),
|
||||||
index=index,
|
index=index,
|
||||||
error=_('The character %(char)r is not allowed.') %
|
error=_('The character %(char)r is not allowed.') %
|
||||||
dict(char=value[i],)
|
dict(char=char,)
|
||||||
)
|
)
|
||||||
return super(IA5Str, self)._convert_scalar(value, index)
|
return super(IA5Str, self)._convert_scalar(value, index)
|
||||||
|
|
||||||
|
|||||||
@@ -322,10 +322,8 @@ def _aci_to_kw(ldap, a, test=False, pkey_only=False):
|
|||||||
return kw
|
return kw
|
||||||
kw['permissions'] = tuple(a.permissions)
|
kw['permissions'] = tuple(a.permissions)
|
||||||
if 'targetattr' in a.target:
|
if 'targetattr' in a.target:
|
||||||
kw['attrs'] = list(a.target['targetattr']['expression'])
|
kw['attrs'] = tuple(unicode(e)
|
||||||
for i in xrange(len(kw['attrs'])):
|
for e in a.target['targetattr']['expression'])
|
||||||
kw['attrs'][i] = unicode(kw['attrs'][i])
|
|
||||||
kw['attrs'] = tuple(kw['attrs'])
|
|
||||||
if 'targetfilter' in a.target:
|
if 'targetfilter' in a.target:
|
||||||
target = a.target['targetfilter']['expression']
|
target = a.target['targetfilter']['expression']
|
||||||
if target.startswith('(memberOf=') or target.startswith('memberOf='):
|
if target.startswith('(memberOf=') or target.startswith('memberOf='):
|
||||||
|
|||||||
@@ -427,16 +427,16 @@ class baseuser(LDAPObject):
|
|||||||
manager = [manager]
|
manager = [manager]
|
||||||
try:
|
try:
|
||||||
container_dn = DN(container, api.env.basedn)
|
container_dn = DN(container, api.env.basedn)
|
||||||
for m in xrange(len(manager)):
|
for i, mgr in enumerate(manager):
|
||||||
if isinstance(manager[m], DN) and manager[m].endswith(container_dn):
|
if isinstance(mgr, DN) and mgr.endswith(container_dn):
|
||||||
continue
|
continue
|
||||||
entry_attrs = self.backend.find_entry_by_attr(
|
entry_attrs = self.backend.find_entry_by_attr(
|
||||||
self.primary_key.name, manager[m], self.object_class, [''],
|
self.primary_key.name, mgr, self.object_class, [''],
|
||||||
container_dn
|
container_dn
|
||||||
)
|
)
|
||||||
manager[m] = entry_attrs.dn
|
manager[i] = entry_attrs.dn
|
||||||
except errors.NotFound:
|
except errors.NotFound:
|
||||||
raise errors.NotFound(reason=_('manager %(manager)s not found') % dict(manager=manager[m]))
|
raise errors.NotFound(reason=_('manager %(manager)s not found') % dict(manager=mgr))
|
||||||
|
|
||||||
return manager
|
return manager
|
||||||
|
|
||||||
@@ -448,8 +448,8 @@ class baseuser(LDAPObject):
|
|||||||
return
|
return
|
||||||
|
|
||||||
if 'manager' in entry_attrs:
|
if 'manager' in entry_attrs:
|
||||||
for m in xrange(len(entry_attrs['manager'])):
|
for i, mgr in enumerate(entry_attrs['manager']):
|
||||||
entry_attrs['manager'][m] = self.get_primary_key_from_dn(entry_attrs['manager'][m])
|
entry_attrs['manager'][i] = self.get_primary_key_from_dn(mgr)
|
||||||
|
|
||||||
def _user_status(self, user, container):
|
def _user_status(self, user, container):
|
||||||
assert isinstance(user, DN)
|
assert isinstance(user, DN)
|
||||||
|
|||||||
@@ -1751,7 +1751,7 @@ def _get_auth_zone_ldap(name):
|
|||||||
# Create all possible parent zone names
|
# Create all possible parent zone names
|
||||||
search_name = name.make_absolute()
|
search_name = name.make_absolute()
|
||||||
zone_names = []
|
zone_names = []
|
||||||
for i in xrange(len(search_name)):
|
for i, name in enumerate(search_name):
|
||||||
zone_name_abs = DNSName(search_name[i:]).ToASCII()
|
zone_name_abs = DNSName(search_name[i:]).ToASCII()
|
||||||
zone_names.append(zone_name_abs)
|
zone_names.append(zone_name_abs)
|
||||||
# compatibility with IPA < 4.0, zone name can be relative
|
# compatibility with IPA < 4.0, zone name can be relative
|
||||||
@@ -1826,7 +1826,7 @@ def _get_longest_match_ns_delegation_ldap(zone, name):
|
|||||||
|
|
||||||
# create list of possible record names
|
# create list of possible record names
|
||||||
possible_record_names = [DNSName(relative_record_name[i:]).ToASCII()
|
possible_record_names = [DNSName(relative_record_name[i:]).ToASCII()
|
||||||
for i in xrange(len(relative_record_name))]
|
for i in range(len(relative_record_name))]
|
||||||
|
|
||||||
# search filters
|
# search filters
|
||||||
name_filter = ldap.make_filter({'idnsname': [possible_record_names]})
|
name_filter = ldap.make_filter({'idnsname': [possible_record_names]})
|
||||||
|
|||||||
@@ -774,10 +774,10 @@ class host_del(LDAPDelete):
|
|||||||
for t in _record_types]
|
for t in _record_types]
|
||||||
for attr in _attribute_types:
|
for attr in _attribute_types:
|
||||||
if attr not in ['arecord', 'aaaarecord'] and attr in record:
|
if attr not in ['arecord', 'aaaarecord'] and attr in record:
|
||||||
for i in xrange(len(record[attr])):
|
for val in record[attr]:
|
||||||
if (record[attr][i].endswith(parts[0]) or
|
if (val.endswith(parts[0]) or
|
||||||
record[attr][i].endswith(fqdn+'.')):
|
val.endswith(fqdn + '.')):
|
||||||
delkw = { unicode(attr) : record[attr][i] }
|
delkw = {unicode(attr): val}
|
||||||
api.Command['dnsrecord_del'](domain,
|
api.Command['dnsrecord_del'](domain,
|
||||||
record['idnsname'][0],
|
record['idnsname'][0],
|
||||||
**delkw)
|
**delkw)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ def generate_master_key(p11, keylabel=u"dnssec-master", key_length=16,
|
|||||||
while True:
|
while True:
|
||||||
# check if key with this ID exist in LDAP or softHSM
|
# check if key with this ID exist in LDAP or softHSM
|
||||||
# id is 16 Bytes long
|
# id is 16 Bytes long
|
||||||
key_id = "".join(chr(random.randint(0, 255)) for _ in xrange(0, 16))
|
key_id = "".join(chr(random.randint(0, 255)) for _ in range(0, 16))
|
||||||
keys = p11.find_keys(_ipap11helper.KEY_CLASS_SECRET_KEY,
|
keys = p11.find_keys(_ipap11helper.KEY_CLASS_SECRET_KEY,
|
||||||
label=keylabel,
|
label=keylabel,
|
||||||
id=key_id)
|
id=key_id)
|
||||||
|
|||||||
@@ -806,8 +806,8 @@ class CAInstance(DogtagInstance):
|
|||||||
chain = chain.split("\n")
|
chain = chain.split("\n")
|
||||||
|
|
||||||
root_nickname=[]
|
root_nickname=[]
|
||||||
for i in xrange(len(chain)):
|
for part in chain:
|
||||||
m = re.match('\ *"(.*)" \[.*', chain[i])
|
m = re.match('\ *"(.*)" \[.*', part)
|
||||||
if m:
|
if m:
|
||||||
nick = m.groups(0)[0]
|
nick = m.groups(0)[0]
|
||||||
if nick != "ipa-ca-agent" and nick[:7] != "Builtin":
|
if nick != "ipa-ca-agent" and nick[:7] != "Builtin":
|
||||||
|
|||||||
@@ -310,7 +310,7 @@ class DNSKeySyncInstance(service.Service):
|
|||||||
# check if key with this ID exist in softHSM
|
# check if key with this ID exist in softHSM
|
||||||
# id is 16 Bytes long
|
# id is 16 Bytes long
|
||||||
key_id = "".join(chr(random.randint(0, 255))
|
key_id = "".join(chr(random.randint(0, 255))
|
||||||
for _ in xrange(0, 16))
|
for _ in range(0, 16))
|
||||||
replica_pubkey_dn = DN(('ipk11UniqueId', 'autogenerate'), dn_base)
|
replica_pubkey_dn = DN(('ipk11UniqueId', 'autogenerate'), dn_base)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ import dateutil.parser
|
|||||||
import dateutil.tz
|
import dateutil.tz
|
||||||
import nss.nss as nss
|
import nss.nss as nss
|
||||||
import gssapi
|
import gssapi
|
||||||
|
from six.moves import xrange
|
||||||
|
|
||||||
from ipapython import admintool
|
from ipapython import admintool
|
||||||
from ipalib import api, errors
|
from ipalib import api, errors
|
||||||
@@ -190,7 +191,7 @@ class PBKDF2KeyDerivation(XMLKeyDerivation):
|
|||||||
|
|
||||||
# Loop through each block adding it to the derived key.
|
# Loop through each block adding it to the derived key.
|
||||||
dk = []
|
dk = []
|
||||||
for i in xrange(1, blocks + 1):
|
for i in range(1, blocks + 1):
|
||||||
# Set initial values.
|
# Set initial values.
|
||||||
last = self.salt + struct.pack('>I', i)
|
last = self.salt + struct.pack('>I', i)
|
||||||
hash = [0] * mac.digest_size
|
hash = [0] * mac.digest_size
|
||||||
@@ -202,7 +203,7 @@ class PBKDF2KeyDerivation(XMLKeyDerivation):
|
|||||||
last = tmp.digest()
|
last = tmp.digest()
|
||||||
|
|
||||||
# XOR the previous hash with the new hash.
|
# XOR the previous hash with the new hash.
|
||||||
for k in xrange(mac.digest_size):
|
for k in range(mac.digest_size):
|
||||||
hash[k] ^= ord(last[k])
|
hash[k] ^= ord(last[k])
|
||||||
|
|
||||||
# Add block to derived key.
|
# Add block to derived key.
|
||||||
|
|||||||
@@ -33,8 +33,8 @@ def entry_to_update(entry):
|
|||||||
update = []
|
update = []
|
||||||
for attr in entry.keys():
|
for attr in entry.keys():
|
||||||
if isinstance(entry[attr], list):
|
if isinstance(entry[attr], list):
|
||||||
for i in xrange(len(entry[attr])):
|
for item in entry[attr]:
|
||||||
update.append(dict(attr=str(attr), value=str(entry[attr][i])))
|
update.append(dict(attr=str(attr), value=str(item)))
|
||||||
else:
|
else:
|
||||||
update.append(dict(attr=str(attr), value=str(entry[attr])))
|
update.append(dict(attr=str(attr), value=str(entry[attr])))
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -25,7 +25,7 @@ import struct
|
|||||||
|
|
||||||
|
|
||||||
# A string that should have bytes 'x\00' through '\xff':
|
# A string that should have bytes 'x\00' through '\xff':
|
||||||
binary_bytes = ''.join(struct.pack('B', d) for d in xrange(256))
|
binary_bytes = ''.join(struct.pack('B', d) for d in range(256))
|
||||||
assert '\x00' in binary_bytes and '\xff' in binary_bytes
|
assert '\x00' in binary_bytes and '\xff' in binary_bytes
|
||||||
assert type(binary_bytes) is str and len(binary_bytes) == 256
|
assert type(binary_bytes) is str and len(binary_bytes) == 256
|
||||||
|
|
||||||
|
|||||||
@@ -209,7 +209,7 @@ class test_NameSpace(ClassChecker):
|
|||||||
_cls = base.NameSpace
|
_cls = base.NameSpace
|
||||||
|
|
||||||
def new(self, count, sort=True):
|
def new(self, count, sort=True):
|
||||||
members = tuple(DummyMember(i) for i in xrange(count, 0, -1))
|
members = tuple(DummyMember(i) for i in range(count, 0, -1))
|
||||||
assert len(members) == count
|
assert len(members) == count
|
||||||
o = self.cls(members, sort=sort)
|
o = self.cls(members, sort=sort)
|
||||||
return (o, members)
|
return (o, members)
|
||||||
@@ -305,12 +305,12 @@ class test_NameSpace(ClassChecker):
|
|||||||
e = raises(KeyError, o.__getitem__, 'nope')
|
e = raises(KeyError, o.__getitem__, 'nope')
|
||||||
|
|
||||||
# Test int indexes:
|
# Test int indexes:
|
||||||
for i in xrange(cnt):
|
for i in range(cnt):
|
||||||
assert o[i] is members[i]
|
assert o[i] is members[i]
|
||||||
e = raises(IndexError, o.__getitem__, cnt)
|
e = raises(IndexError, o.__getitem__, cnt)
|
||||||
|
|
||||||
# Test negative int indexes:
|
# Test negative int indexes:
|
||||||
for i in xrange(1, cnt + 1):
|
for i in range(1, cnt + 1):
|
||||||
assert o[-i] is members[-i]
|
assert o[-i] is members[-i]
|
||||||
e = raises(IndexError, o.__getitem__, -(cnt + 1))
|
e = raises(IndexError, o.__getitem__, -(cnt + 1))
|
||||||
|
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ class DummyAPI(object):
|
|||||||
Command = property(__get_cmd)
|
Command = property(__get_cmd)
|
||||||
|
|
||||||
def __cmd_iter(self, cnt):
|
def __cmd_iter(self, cnt):
|
||||||
for i in xrange(cnt):
|
for i in range(cnt):
|
||||||
yield DummyCommand(get_cmd_name(i))
|
yield DummyCommand(get_cmd_name(i))
|
||||||
|
|
||||||
def finalize(self):
|
def finalize(self):
|
||||||
|
|||||||
@@ -298,7 +298,7 @@ class test_Env(ClassChecker):
|
|||||||
"""
|
"""
|
||||||
o = self.cls()
|
o = self.cls()
|
||||||
assert len(o) == 0
|
assert len(o) == 0
|
||||||
for i in xrange(1, 11):
|
for i in range(1, 11):
|
||||||
key = 'key%d' % i
|
key = 'key%d' % i
|
||||||
value = u'value %d' % i
|
value = u'value %d' % i
|
||||||
o[key] = value
|
o[key] = value
|
||||||
@@ -390,7 +390,7 @@ class test_Env(ClassChecker):
|
|||||||
for (k, v) in orig.items():
|
for (k, v) in orig.items():
|
||||||
assert o[k] is v
|
assert o[k] is v
|
||||||
assert list(o) == sorted(keys + ('key0', 'key1', 'key2', 'key3', 'config_loaded'))
|
assert list(o) == sorted(keys + ('key0', 'key1', 'key2', 'key3', 'config_loaded'))
|
||||||
for i in xrange(4):
|
for i in range(4):
|
||||||
assert o['key%d' % i] == ('var%d' % i)
|
assert o['key%d' % i] == ('var%d' % i)
|
||||||
keys = tuple(o)
|
keys = tuple(o)
|
||||||
|
|
||||||
|
|||||||
@@ -369,7 +369,7 @@ class BaseMessagesTest(object):
|
|||||||
|
|
||||||
class test_PublicErrors(object):
|
class test_PublicErrors(object):
|
||||||
message_list = errors.public_errors
|
message_list = errors.public_errors
|
||||||
errno_range = xrange(900, 5999)
|
errno_range = list(range(900, 5999))
|
||||||
required_classes = (StandardError, errors.PublicError)
|
required_classes = (StandardError, errors.PublicError)
|
||||||
texts = errors._texts
|
texts = errors._texts
|
||||||
|
|
||||||
|
|||||||
@@ -940,7 +940,7 @@ class test_Object(ClassChecker):
|
|||||||
|
|
||||||
def get_attributes(cnt, format):
|
def get_attributes(cnt, format):
|
||||||
for name in ['other', 'user', 'another']:
|
for name in ['other', 'user', 'another']:
|
||||||
for i in xrange(cnt):
|
for i in range(cnt):
|
||||||
yield DummyAttribute(name, format % i)
|
yield DummyAttribute(name, format % i)
|
||||||
|
|
||||||
cnt = 10
|
cnt = 10
|
||||||
@@ -970,7 +970,7 @@ class test_Object(ClassChecker):
|
|||||||
assert isinstance(namespace, plugable.NameSpace)
|
assert isinstance(namespace, plugable.NameSpace)
|
||||||
assert len(namespace) == cnt
|
assert len(namespace) == cnt
|
||||||
f = methods_format
|
f = methods_format
|
||||||
for i in xrange(cnt):
|
for i in range(cnt):
|
||||||
attr_name = f % i
|
attr_name = f % i
|
||||||
attr = namespace[attr_name]
|
attr = namespace[attr_name]
|
||||||
assert isinstance(attr, DummyAttribute)
|
assert isinstance(attr, DummyAttribute)
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ class test_PublicMessage(test_errors.test_PublicError):
|
|||||||
|
|
||||||
class test_PublicMessages(test_errors.BaseMessagesTest):
|
class test_PublicMessages(test_errors.BaseMessagesTest):
|
||||||
message_list = messages.public_messages
|
message_list = messages.public_messages
|
||||||
errno_range = xrange(10000, 19999)
|
errno_range = list(range(10000, 19999))
|
||||||
required_classes = (UserWarning, messages.PublicMessage)
|
required_classes = (UserWarning, messages.PublicMessage)
|
||||||
texts = messages._texts
|
texts = messages._texts
|
||||||
|
|
||||||
|
|||||||
@@ -239,14 +239,14 @@ class test_API(ClassChecker):
|
|||||||
def get_plugin_name(b, p):
|
def get_plugin_name(b, p):
|
||||||
return 'base%d_plugin%d' % (b, p)
|
return 'base%d_plugin%d' % (b, p)
|
||||||
|
|
||||||
for b in xrange(2):
|
for b in range(2):
|
||||||
base_name = get_base_name(b)
|
base_name = get_base_name(b)
|
||||||
base = locals()[base_name]
|
base = locals()[base_name]
|
||||||
ns = getattr(api, base_name)
|
ns = getattr(api, base_name)
|
||||||
assert isinstance(ns, plugable.NameSpace)
|
assert isinstance(ns, plugable.NameSpace)
|
||||||
assert read_only(api, base_name) is ns
|
assert read_only(api, base_name) is ns
|
||||||
assert len(ns) == 3
|
assert len(ns) == 3
|
||||||
for p in xrange(3):
|
for p in range(3):
|
||||||
plugin_name = get_plugin_name(b, p)
|
plugin_name = get_plugin_name(b, p)
|
||||||
plugin = locals()[plugin_name]
|
plugin = locals()[plugin_name]
|
||||||
inst = ns[plugin_name]
|
inst = ns[plugin_name]
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ class test_keyring(object):
|
|||||||
assert(result == UPDATE_VALUE)
|
assert(result == UPDATE_VALUE)
|
||||||
|
|
||||||
# Now update it 10 times
|
# Now update it 10 times
|
||||||
for i in xrange(10):
|
for i in range(10):
|
||||||
kernel_keyring.update_key(TEST_KEY, 'test %d' % i)
|
kernel_keyring.update_key(TEST_KEY, 'test %d' % i)
|
||||||
result = kernel_keyring.read_key(TEST_KEY)
|
result = kernel_keyring.read_key(TEST_KEY)
|
||||||
assert(result == 'test %d' % i)
|
assert(result == 'test %d' % i)
|
||||||
|
|||||||
@@ -88,13 +88,13 @@ class CertManipCmdTestBase(XMLRPC_test):
|
|||||||
# list of certificates to add to entry
|
# list of certificates to add to entry
|
||||||
cls.certs = [
|
cls.certs = [
|
||||||
get_testcert(DN(('CN', cls.entity_subject)), cls.entity_principal)
|
get_testcert(DN(('CN', cls.entity_subject)), cls.entity_principal)
|
||||||
for i in xrange(3)
|
for i in range(3)
|
||||||
]
|
]
|
||||||
|
|
||||||
# list of certificates for testing of removal of non-existent certs
|
# list of certificates for testing of removal of non-existent certs
|
||||||
cls.nonexistent_certs = [
|
cls.nonexistent_certs = [
|
||||||
get_testcert(DN(('CN', cls.entity_subject)), cls.entity_principal)
|
get_testcert(DN(('CN', cls.entity_subject)), cls.entity_principal)
|
||||||
for j in xrange(2)
|
for j in range(2)
|
||||||
]
|
]
|
||||||
|
|
||||||
# cert subset to remove from entry
|
# cert subset to remove from entry
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ symmetric_vault_name = u'symmetric_test_vault'
|
|||||||
asymmetric_vault_name = u'asymmetric_test_vault'
|
asymmetric_vault_name = u'asymmetric_test_vault'
|
||||||
|
|
||||||
# binary data from \x00 to \xff
|
# binary data from \x00 to \xff
|
||||||
secret = ''.join(chr(c) for c in xrange(0, 256))
|
secret = ''.join(chr(c) for c in range(0, 256))
|
||||||
|
|
||||||
password = u'password'
|
password = u'password'
|
||||||
other_password = u'other_password'
|
other_password = u'other_password'
|
||||||
|
|||||||
Reference in New Issue
Block a user