diff options
author | Martin Basti <mbasti@redhat.com> | 2017-02-02 16:51:21 +0100 |
---|---|---|
committer | Martin Basti <mbasti@redhat.com> | 2017-02-08 15:41:39 +0100 |
commit | 6bb5af7bea21d44b4e5ee20cfaa2f76b12ea0929 (patch) | |
tree | ef0fd2e77db24e2b1261ac8405511c1ee5e1434f | |
parent | d38540acd614bcaa489023401fc8db7c02cd3892 (diff) | |
download | freeipa-6bb5af7bea21d44b4e5ee20cfaa2f76b12ea0929.tar.gz freeipa-6bb5af7bea21d44b4e5ee20cfaa2f76b12ea0929.tar.xz freeipa-6bb5af7bea21d44b4e5ee20cfaa2f76b12ea0929.zip |
py3: get_memberofindirect: fix ByteWarnings
DN must be converted to bytes as other variables adn lists contain bytes
https://fedorahosted.org/freeipa/ticket/4985
Reviewed-By: Stanislav Laznicka <slaznick@redhat.com>
-rw-r--r-- | ipapython/ipaldap.py | 6 | ||||
-rw-r--r-- | ipaserver/plugins/baseldap.py | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/ipapython/ipaldap.py b/ipapython/ipaldap.py index 37d23d731..c811431f1 100644 --- a/ipapython/ipaldap.py +++ b/ipapython/ipaldap.py @@ -379,8 +379,10 @@ class LDAPEntry(collections.MutableMapping): name, value.__class__.__name__, value)) for (i, item) in enumerate(value): if not isinstance(item, bytes): - raise TypeError("%s[%d] value must be str, got %s object %r" % ( - name, i, item.__class__.__name__, item)) + raise TypeError( + "%s[%d] value must be bytes, got %s object %r" % ( + name, i, item.__class__.__name__, item) + ) name = self._add_attr_name(name) diff --git a/ipaserver/plugins/baseldap.py b/ipaserver/plugins/baseldap.py index 24b6db7c0..79ba7fc4a 100644 --- a/ipaserver/plugins/baseldap.py +++ b/ipaserver/plugins/baseldap.py @@ -722,7 +722,7 @@ class LDAPObject(Object): direct = set() indirect = set(entry.raw.get('memberof', [])) for group_entry in result: - dn = str(group_entry.dn) + dn = str(group_entry.dn).encode('utf-8') if dn in indirect: indirect.remove(dn) direct.add(dn) |