summaryrefslogtreecommitdiffstats
path: root/ipalib
diff options
context:
space:
mode:
Diffstat (limited to 'ipalib')
-rw-r--r--ipalib/parameters.py5
-rw-r--r--ipalib/plugins/baseldap.py3
2 files changed, 7 insertions, 1 deletions
diff --git a/ipalib/parameters.py b/ipalib/parameters.py
index 33ae182b5..728faee53 100644
--- a/ipalib/parameters.py
+++ b/ipalib/parameters.py
@@ -911,6 +911,9 @@ class Param(ReadOnly):
pass
return self.default
+ def sort_key(self, value):
+ return value
+
json_exclude_attrs = (
'alwaysask', 'autofill', 'cli_name', 'cli_short_name', 'csv',
'sortorder', 'falsehoods', 'truths', 'version',
@@ -1457,6 +1460,8 @@ class Str(Data):
length=self.length,
)
+ def sort_key(self, value):
+ return value.lower()
class IA5Str(Str):
"""
diff --git a/ipalib/plugins/baseldap.py b/ipalib/plugins/baseldap.py
index cd4910bc1..86df56274 100644
--- a/ipalib/plugins/baseldap.py
+++ b/ipalib/plugins/baseldap.py
@@ -1936,7 +1936,8 @@ class LDAPSearch(BaseLDAPCommand, crud.Search):
if self.sort_result_entries:
if self.obj.primary_key:
def sort_key(x):
- return x[self.obj.primary_key.name][0].lower()
+ return self.obj.primary_key.sort_key(
+ x[self.obj.primary_key.name][0])
entries.sort(key=sort_key)
if not options.get('raw', False):