summaryrefslogtreecommitdiffstats
path: root/ipalib/plugins/user.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipalib/plugins/user.py')
-rw-r--r--ipalib/plugins/user.py45
1 files changed, 24 insertions, 21 deletions
diff --git a/ipalib/plugins/user.py b/ipalib/plugins/user.py
index 6cdaae334..539dd896a 100644
--- a/ipalib/plugins/user.py
+++ b/ipalib/plugins/user.py
@@ -400,7 +400,7 @@ class user(LDAPObject):
def _normalize_and_validate_email(self, email, config=None):
if not config:
- config = self.backend.get_ipa_config()[1]
+ config = self.backend.get_ipa_config()
# check if default email domain should be added
defaultdomain = config.get('ipadefaultemaildomain', [None])[0]
@@ -437,11 +437,11 @@ class user(LDAPObject):
for m in xrange(len(manager)):
if isinstance(manager[m], DN) and manager[m].endswith(container_dn):
continue
- (dn, 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, [''],
container_dn
)
- manager[m] = dn
+ manager[m] = entry_attrs.dn
except errors.NotFound:
raise errors.NotFound(reason=_('manager %(manager)s not found') % dict(manager=manager[m]))
@@ -510,7 +510,7 @@ class user_add(LDAPCreate):
entry_attrs['gidnumber'] = baseldap.DNA_MAGIC
validate_nsaccountlock(entry_attrs)
- config = ldap.get_ipa_config()[1]
+ config = ldap.get_ipa_config()
if 'ipamaxusernamelength' in config:
if len(keys[-1]) > int(config.get('ipamaxusernamelength')[0]):
raise errors.ValidationError(
@@ -542,7 +542,7 @@ class user_add(LDAPCreate):
def_primary_group = config.get('ipadefaultprimarygroup')
group_dn = self.api.Object['group'].get_dn(def_primary_group)
try:
- (group_dn, group_attrs) = ldap.get_entry(group_dn, ['gidnumber'])
+ group_attrs = ldap.get_entry(group_dn, ['gidnumber'])
except errors.NotFound:
error_msg = _('Default group for new users not found')
raise errors.NotFound(reason=error_msg)
@@ -590,7 +590,7 @@ class user_add(LDAPCreate):
def post_callback(self, ldap, dn, entry_attrs, *keys, **options):
assert isinstance(dn, DN)
- config = ldap.get_ipa_config()[1]
+ config = ldap.get_ipa_config()
# add the user we just created into the default primary group
def_primary_group = config.get('ipadefaultprimarygroup')
group_dn = self.api.Object['group'].get_dn(def_primary_group)
@@ -607,7 +607,7 @@ class user_add(LDAPCreate):
# delete description attribute NO_UPG_MAGIC if present
if options.get('noprivate', False):
if not options.get('all', False):
- (dn, desc_attr) = ldap.get_entry(dn, ['description'])
+ desc_attr = ldap.get_entry(dn, ['description'])
entry_attrs.update(desc_attr)
if 'description' in entry_attrs and NO_UPG_MAGIC in entry_attrs['description']:
entry_attrs['description'].remove(NO_UPG_MAGIC)
@@ -619,7 +619,7 @@ class user_add(LDAPCreate):
# Fetch the entry again to update memberof, mep data, etc updated
# at the end of the transaction.
- (newdn, newentry) = ldap.get_entry(dn, ['*'])
+ newentry = ldap.get_entry(dn, ['*'])
entry_attrs.update(newentry)
if options.get('random', False):
@@ -668,7 +668,7 @@ class user_mod(LDAPUpdate):
def pre_callback(self, ldap, dn, entry_attrs, attrs_list, *keys, **options):
assert isinstance(dn, DN)
if options.get('rename') is not None:
- config = ldap.get_ipa_config()[1]
+ config = ldap.get_ipa_config()
if 'ipamaxusernamelength' in config:
if len(options['rename']) > int(config.get('ipamaxusernamelength')[0]):
raise errors.ValidationError(
@@ -769,12 +769,11 @@ class user_find(LDAPSearch):
def post_callback(self, ldap, entries, truncated, *args, **options):
if options.get('pkey_only', False):
return truncated
- for entry in entries:
- (dn, attrs) = entry
+ for attrs in entries:
self.obj._convert_manager(attrs, **options)
- self.obj.get_password_attributes(ldap, dn, attrs)
+ self.obj.get_password_attributes(ldap, attrs.dn, attrs)
convert_nsaccountlock(attrs)
- convert_sshpubkey_post(ldap, dn, attrs)
+ convert_sshpubkey_post(ldap, attrs.dn, attrs)
return truncated
msg_summary = ngettext(
@@ -858,9 +857,13 @@ class user_unlock(LDAPQuery):
def execute(self, *keys, **options):
dn = self.obj.get_dn(*keys, **options)
- entry_attrs = {'krbLastAdminUnlock': strftime("%Y%m%d%H%M%SZ",gmtime()), 'krbLoginFailedCount': '0'}
+ entry = self.obj.backend.get_entry(
+ dn, ['krbLastAdminUnlock', 'krbLoginFailedCount'])
- self.obj.backend.update_entry(dn, entry_attrs)
+ entry['krbLastAdminUnlock'] = [strftime("%Y%m%d%H%M%SZ", gmtime())]
+ entry['krbLoginFailedCount'] = ['0']
+
+ self.obj.backend.update_entry(entry)
return dict(
result=True,
@@ -916,7 +919,7 @@ class user_status(LDAPQuery):
entries = []
count = 0
for master in masters:
- host = master[1]['cn'][0]
+ host = master['cn'][0]
if host == api.env.host:
other_ldap = self.obj.backend
else:
@@ -936,8 +939,8 @@ class user_status(LDAPQuery):
entry = other_ldap.get_entry(dn, attr_list)
newresult = {'dn': dn}
for attr in ['krblastsuccessfulauth', 'krblastfailedauth']:
- newresult[attr] = entry[1].get(attr, [u'N/A'])
- newresult['krbloginfailedcount'] = entry[1].get('krbloginfailedcount', u'0')
+ newresult[attr] = entry.get(attr, [u'N/A'])
+ newresult['krbloginfailedcount'] = entry.get('krbloginfailedcount', u'0')
if not options.get('raw', False):
for attr in ['krblastsuccessfulauth', 'krblastfailedauth']:
try:
@@ -954,9 +957,9 @@ class user_status(LDAPQuery):
else:
time_format = '%Y-%m-%dT%H:%M:%SZ'
newresult['now'] = unicode(strftime(time_format, gmtime()))
- convert_nsaccountlock(entry[1])
- if 'nsaccountlock' in entry[1].keys():
- disabled = entry[1]['nsaccountlock']
+ convert_nsaccountlock(entry)
+ if 'nsaccountlock' in entry:
+ disabled = entry['nsaccountlock']
entries.append(newresult)
count += 1
except errors.NotFound: