fix UWLDAP multiple-UID bug
This commit is contained in:
parent
ae48bcd98a
commit
620ef8ef8e
|
@ -1 +1 @@
|
||||||
1.0.6
|
1.0.7
|
||||||
|
|
|
@ -37,10 +37,18 @@ class UWLDAPService:
|
||||||
|
|
||||||
conn = self._get_conn()
|
conn = self._get_conn()
|
||||||
conn.search(
|
conn.search(
|
||||||
self.uwldap_base, filter_str, attributes=['ou'],
|
self.uwldap_base, filter_str, attributes=['ou', 'uid'],
|
||||||
size_limit=len(usernames))
|
size_limit=len(usernames))
|
||||||
for entry in conn.entries:
|
for entry in conn.entries:
|
||||||
uid = dn_to_uid(entry.entry_dn)
|
# some records in UWLDAP have two UIDs because UIDs
|
||||||
|
# were historically limited to 8 characters
|
||||||
|
uid = None
|
||||||
|
for uw_uid in entry.uid.values:
|
||||||
|
if uw_uid in user_indices:
|
||||||
|
uid = uw_uid
|
||||||
|
break
|
||||||
|
# sanity check
|
||||||
|
assert uid is not None
|
||||||
idx = user_indices[uid]
|
idx = user_indices[uid]
|
||||||
program = entry.ou.value
|
program = entry.ou.value
|
||||||
if program:
|
if program:
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
ceo (1.0.7-buster1) buster; urgency=medium
|
||||||
|
|
||||||
|
* Fix bug in UWLDAP get_programs_for_users.
|
||||||
|
|
||||||
|
-- Max Erenberg <merenber@csclub.uwaterloo.ca> Tue, 02 Nov 2021 22:56:24 +0000
|
||||||
|
|
||||||
ceo (1.0.6-buster1) buster; urgency=medium
|
ceo (1.0.6-buster1) buster; urgency=medium
|
||||||
|
|
||||||
* Fix bug in sender email address.
|
* Fix bug in sender email address.
|
||||||
|
|
Loading…
Reference in New Issue