diff options
-rw-r--r-- | ipalib/parameters.py | 4 | ||||
-rw-r--r-- | ipaserver/plugins/ldap2.py | 7 |
2 files changed, 7 insertions, 4 deletions
diff --git a/ipalib/parameters.py b/ipalib/parameters.py index ee660848b..3d9f208d2 100644 --- a/ipalib/parameters.py +++ b/ipalib/parameters.py @@ -903,8 +903,8 @@ class Bool(Param): # FIXME: This my quick hack to get some UI stuff working, change these defaults # --jderose 2009-08-28 kwargs = Param.kwargs + ( - ('truths', frozenset, frozenset([1, u'1', u'true'])), - ('falsehoods', frozenset, frozenset([0, u'0', u'false'])), + ('truths', frozenset, frozenset([1, u'1', u'true', u'TRUE'])), + ('falsehoods', frozenset, frozenset([0, u'0', u'false', u'FALSE'])), ) def _convert_scalar(self, value, index=None): diff --git a/ipaserver/plugins/ldap2.py b/ipaserver/plugins/ldap2.py index c37525203..5d6d21d43 100644 --- a/ipaserver/plugins/ldap2.py +++ b/ipaserver/plugins/ldap2.py @@ -522,7 +522,7 @@ class ldap2(CrudBackend, Encoder): scope=_ldap.SCOPE_SUBTREE, time_limit=None, size_limit=None, normalize=True, search_refs=False): """ - Return a list of entries and indication of whteher the results where + Return a list of entries and indication of whether the results were truncated ([(dn, entry_attrs)], truncated) matching specified search parameters followed by truncated flag. If the truncated flag is True, search hit a server limit and its results are incomplete. @@ -1056,7 +1056,10 @@ class ldap2(CrudBackend, Encoder): else: if account_lock_attr == 'true': raise errors.AlreadyInactive() - account_lock_attr = str(not active) + + # LDAP expects string instead of Bool but it also requires it to be TRUE or FALSE, + # not True or False as Python stringification does. Thus, we uppercase it. + account_lock_attr = str(not active).upper() entry_attrs['nsaccountlock'] = account_lock_attr self.update_entry(dn, entry_attrs) |