mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06: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
@@ -294,7 +294,7 @@ class NameSpace(ReadOnly):
|
||||
... def __repr__(self):
|
||||
... return 'Member(%d)' % self.i
|
||||
...
|
||||
>>> ns = NameSpace(Member(i) for i in xrange(3))
|
||||
>>> ns = NameSpace(Member(i) for i in range(3))
|
||||
>>> ns
|
||||
NameSpace(<3 members>, sort=True)
|
||||
|
||||
|
||||
@@ -1475,12 +1475,12 @@ class IA5Str(Str):
|
||||
|
||||
def _convert_scalar(self, value, index=None):
|
||||
if isinstance(value, six.string_types):
|
||||
for i in xrange(len(value)):
|
||||
if ord(value[i]) > 127:
|
||||
for char in value:
|
||||
if ord(char) > 127:
|
||||
raise ConversionError(name=self.get_param_name(),
|
||||
index=index,
|
||||
error=_('The character %(char)r is not allowed.') %
|
||||
dict(char=value[i],)
|
||||
dict(char=char,)
|
||||
)
|
||||
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
|
||||
kw['permissions'] = tuple(a.permissions)
|
||||
if 'targetattr' in a.target:
|
||||
kw['attrs'] = list(a.target['targetattr']['expression'])
|
||||
for i in xrange(len(kw['attrs'])):
|
||||
kw['attrs'][i] = unicode(kw['attrs'][i])
|
||||
kw['attrs'] = tuple(kw['attrs'])
|
||||
kw['attrs'] = tuple(unicode(e)
|
||||
for e in a.target['targetattr']['expression'])
|
||||
if 'targetfilter' in a.target:
|
||||
target = a.target['targetfilter']['expression']
|
||||
if target.startswith('(memberOf=') or target.startswith('memberOf='):
|
||||
|
||||
@@ -427,16 +427,16 @@ class baseuser(LDAPObject):
|
||||
manager = [manager]
|
||||
try:
|
||||
container_dn = DN(container, api.env.basedn)
|
||||
for m in xrange(len(manager)):
|
||||
if isinstance(manager[m], DN) and manager[m].endswith(container_dn):
|
||||
for i, mgr in enumerate(manager):
|
||||
if isinstance(mgr, DN) and mgr.endswith(container_dn):
|
||||
continue
|
||||
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
|
||||
)
|
||||
manager[m] = entry_attrs.dn
|
||||
manager[i] = entry_attrs.dn
|
||||
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
|
||||
|
||||
@@ -448,8 +448,8 @@ class baseuser(LDAPObject):
|
||||
return
|
||||
|
||||
if 'manager' in entry_attrs:
|
||||
for m in xrange(len(entry_attrs['manager'])):
|
||||
entry_attrs['manager'][m] = self.get_primary_key_from_dn(entry_attrs['manager'][m])
|
||||
for i, mgr in enumerate(entry_attrs['manager']):
|
||||
entry_attrs['manager'][i] = self.get_primary_key_from_dn(mgr)
|
||||
|
||||
def _user_status(self, user, container):
|
||||
assert isinstance(user, DN)
|
||||
|
||||
@@ -1751,7 +1751,7 @@ def _get_auth_zone_ldap(name):
|
||||
# Create all possible parent zone names
|
||||
search_name = name.make_absolute()
|
||||
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_names.append(zone_name_abs)
|
||||
# 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
|
||||
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
|
||||
name_filter = ldap.make_filter({'idnsname': [possible_record_names]})
|
||||
|
||||
@@ -774,10 +774,10 @@ class host_del(LDAPDelete):
|
||||
for t in _record_types]
|
||||
for attr in _attribute_types:
|
||||
if attr not in ['arecord', 'aaaarecord'] and attr in record:
|
||||
for i in xrange(len(record[attr])):
|
||||
if (record[attr][i].endswith(parts[0]) or
|
||||
record[attr][i].endswith(fqdn+'.')):
|
||||
delkw = { unicode(attr) : record[attr][i] }
|
||||
for val in record[attr]:
|
||||
if (val.endswith(parts[0]) or
|
||||
val.endswith(fqdn + '.')):
|
||||
delkw = {unicode(attr): val}
|
||||
api.Command['dnsrecord_del'](domain,
|
||||
record['idnsname'][0],
|
||||
**delkw)
|
||||
|
||||
@@ -13,7 +13,7 @@ def generate_master_key(p11, keylabel=u"dnssec-master", key_length=16,
|
||||
while True:
|
||||
# check if key with this ID exist in LDAP or softHSM
|
||||
# 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,
|
||||
label=keylabel,
|
||||
id=key_id)
|
||||
|
||||
@@ -806,8 +806,8 @@ class CAInstance(DogtagInstance):
|
||||
chain = chain.split("\n")
|
||||
|
||||
root_nickname=[]
|
||||
for i in xrange(len(chain)):
|
||||
m = re.match('\ *"(.*)" \[.*', chain[i])
|
||||
for part in chain:
|
||||
m = re.match('\ *"(.*)" \[.*', part)
|
||||
if m:
|
||||
nick = m.groups(0)[0]
|
||||
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
|
||||
# id is 16 Bytes long
|
||||
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)
|
||||
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ import dateutil.parser
|
||||
import dateutil.tz
|
||||
import nss.nss as nss
|
||||
import gssapi
|
||||
from six.moves import xrange
|
||||
|
||||
from ipapython import admintool
|
||||
from ipalib import api, errors
|
||||
@@ -190,7 +191,7 @@ class PBKDF2KeyDerivation(XMLKeyDerivation):
|
||||
|
||||
# Loop through each block adding it to the derived key.
|
||||
dk = []
|
||||
for i in xrange(1, blocks + 1):
|
||||
for i in range(1, blocks + 1):
|
||||
# Set initial values.
|
||||
last = self.salt + struct.pack('>I', i)
|
||||
hash = [0] * mac.digest_size
|
||||
@@ -202,7 +203,7 @@ class PBKDF2KeyDerivation(XMLKeyDerivation):
|
||||
last = tmp.digest()
|
||||
|
||||
# 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])
|
||||
|
||||
# Add block to derived key.
|
||||
|
||||
@@ -33,8 +33,8 @@ def entry_to_update(entry):
|
||||
update = []
|
||||
for attr in entry.keys():
|
||||
if isinstance(entry[attr], list):
|
||||
for i in xrange(len(entry[attr])):
|
||||
update.append(dict(attr=str(attr), value=str(entry[attr][i])))
|
||||
for item in entry[attr]:
|
||||
update.append(dict(attr=str(attr), value=str(item)))
|
||||
else:
|
||||
update.append(dict(attr=str(attr), value=str(entry[attr])))
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ import struct
|
||||
|
||||
|
||||
# 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 type(binary_bytes) is str and len(binary_bytes) == 256
|
||||
|
||||
|
||||
@@ -209,7 +209,7 @@ class test_NameSpace(ClassChecker):
|
||||
_cls = base.NameSpace
|
||||
|
||||
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
|
||||
o = self.cls(members, sort=sort)
|
||||
return (o, members)
|
||||
@@ -305,12 +305,12 @@ class test_NameSpace(ClassChecker):
|
||||
e = raises(KeyError, o.__getitem__, 'nope')
|
||||
|
||||
# Test int indexes:
|
||||
for i in xrange(cnt):
|
||||
for i in range(cnt):
|
||||
assert o[i] is members[i]
|
||||
e = raises(IndexError, o.__getitem__, cnt)
|
||||
|
||||
# Test negative int indexes:
|
||||
for i in xrange(1, cnt + 1):
|
||||
for i in range(1, cnt + 1):
|
||||
assert o[-i] is members[-i]
|
||||
e = raises(IndexError, o.__getitem__, -(cnt + 1))
|
||||
|
||||
|
||||
@@ -91,7 +91,7 @@ class DummyAPI(object):
|
||||
Command = property(__get_cmd)
|
||||
|
||||
def __cmd_iter(self, cnt):
|
||||
for i in xrange(cnt):
|
||||
for i in range(cnt):
|
||||
yield DummyCommand(get_cmd_name(i))
|
||||
|
||||
def finalize(self):
|
||||
|
||||
@@ -298,7 +298,7 @@ class test_Env(ClassChecker):
|
||||
"""
|
||||
o = self.cls()
|
||||
assert len(o) == 0
|
||||
for i in xrange(1, 11):
|
||||
for i in range(1, 11):
|
||||
key = 'key%d' % i
|
||||
value = u'value %d' % i
|
||||
o[key] = value
|
||||
@@ -390,7 +390,7 @@ class test_Env(ClassChecker):
|
||||
for (k, v) in orig.items():
|
||||
assert o[k] is v
|
||||
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)
|
||||
keys = tuple(o)
|
||||
|
||||
|
||||
@@ -369,7 +369,7 @@ class BaseMessagesTest(object):
|
||||
|
||||
class test_PublicErrors(object):
|
||||
message_list = errors.public_errors
|
||||
errno_range = xrange(900, 5999)
|
||||
errno_range = list(range(900, 5999))
|
||||
required_classes = (StandardError, errors.PublicError)
|
||||
texts = errors._texts
|
||||
|
||||
|
||||
@@ -940,7 +940,7 @@ class test_Object(ClassChecker):
|
||||
|
||||
def get_attributes(cnt, format):
|
||||
for name in ['other', 'user', 'another']:
|
||||
for i in xrange(cnt):
|
||||
for i in range(cnt):
|
||||
yield DummyAttribute(name, format % i)
|
||||
|
||||
cnt = 10
|
||||
@@ -970,7 +970,7 @@ class test_Object(ClassChecker):
|
||||
assert isinstance(namespace, plugable.NameSpace)
|
||||
assert len(namespace) == cnt
|
||||
f = methods_format
|
||||
for i in xrange(cnt):
|
||||
for i in range(cnt):
|
||||
attr_name = f % i
|
||||
attr = namespace[attr_name]
|
||||
assert isinstance(attr, DummyAttribute)
|
||||
|
||||
@@ -41,7 +41,7 @@ class test_PublicMessage(test_errors.test_PublicError):
|
||||
|
||||
class test_PublicMessages(test_errors.BaseMessagesTest):
|
||||
message_list = messages.public_messages
|
||||
errno_range = xrange(10000, 19999)
|
||||
errno_range = list(range(10000, 19999))
|
||||
required_classes = (UserWarning, messages.PublicMessage)
|
||||
texts = messages._texts
|
||||
|
||||
|
||||
@@ -239,14 +239,14 @@ class test_API(ClassChecker):
|
||||
def get_plugin_name(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 = locals()[base_name]
|
||||
ns = getattr(api, base_name)
|
||||
assert isinstance(ns, plugable.NameSpace)
|
||||
assert read_only(api, base_name) is ns
|
||||
assert len(ns) == 3
|
||||
for p in xrange(3):
|
||||
for p in range(3):
|
||||
plugin_name = get_plugin_name(b, p)
|
||||
plugin = locals()[plugin_name]
|
||||
inst = ns[plugin_name]
|
||||
|
||||
@@ -89,7 +89,7 @@ class test_keyring(object):
|
||||
assert(result == UPDATE_VALUE)
|
||||
|
||||
# Now update it 10 times
|
||||
for i in xrange(10):
|
||||
for i in range(10):
|
||||
kernel_keyring.update_key(TEST_KEY, 'test %d' % i)
|
||||
result = kernel_keyring.read_key(TEST_KEY)
|
||||
assert(result == 'test %d' % i)
|
||||
|
||||
@@ -88,13 +88,13 @@ class CertManipCmdTestBase(XMLRPC_test):
|
||||
# list of certificates to add to entry
|
||||
cls.certs = [
|
||||
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
|
||||
cls.nonexistent_certs = [
|
||||
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
|
||||
|
||||
@@ -34,7 +34,7 @@ symmetric_vault_name = u'symmetric_test_vault'
|
||||
asymmetric_vault_name = u'asymmetric_test_vault'
|
||||
|
||||
# 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'
|
||||
other_password = u'other_password'
|
||||
|
||||
Reference in New Issue
Block a user