summaryrefslogtreecommitdiffstats
path: root/ipapython/ipaldap.py
diff options
context:
space:
mode:
authorJan Cholasta <jcholast@redhat.com>2015-08-31 09:26:27 +0200
committerJan Cholasta <jcholast@redhat.com>2015-09-07 08:00:11 +0200
commitcf9bf9dcafa6c6d434440e7b106f1886614eec05 (patch)
tree3b1cc510c5ef9dce7c806a1c811d064542062467 /ipapython/ipaldap.py
parentebdfa4380bdcdd99970c7d677df7e0d5e3ede6bc (diff)
downloadfreeipa-cf9bf9dcafa6c6d434440e7b106f1886614eec05.tar.gz
freeipa-cf9bf9dcafa6c6d434440e7b106f1886614eec05.tar.xz
freeipa-cf9bf9dcafa6c6d434440e7b106f1886614eec05.zip
Use six.python_2_unicode_compatible
Rename __unicode__ to __str__ in classes which define it and use the six.python_2_unicode_compatible decorator on them to make them compatible with both Python 2 and 3. Additional changes were required for the ipapython.dnsutil.DNSName class, because it defined both __str__ and __unicode__. Reviewed-By: Petr Viktorin <pviktori@redhat.com>
Diffstat (limited to 'ipapython/ipaldap.py')
-rw-r--r--ipapython/ipaldap.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/ipapython/ipaldap.py b/ipapython/ipaldap.py
index 1279a18a8..837d57c3b 100644
--- a/ipapython/ipaldap.py
+++ b/ipapython/ipaldap.py
@@ -833,7 +833,7 @@ class LDAPClient(object):
elif isinstance(val, (unicode, six.integer_types, long, Decimal, DN)):
return value_to_utf8(val)
elif isinstance(val, DNSName):
- return str(val)
+ return val.to_text()
elif isinstance(val, str):
return val
elif isinstance(val, list):
@@ -863,6 +863,8 @@ class LDAPClient(object):
return val.decode('utf-8')
elif target_type is datetime.datetime:
return datetime.datetime.strptime(val, LDAP_GENERALIZED_TIME_FORMAT)
+ elif target_type is DNSName:
+ return DNSName.from_text(val)
else:
return target_type(val)
except Exception as e: