Also search on displayName in mutt-ldap.py and ldap-jpeg.py.
authorW. Trevor King <wking@tremily.us>
Wed, 15 Aug 2012 14:13:20 +0000 (10:13 -0400)
committerW. Trevor King <wking@tremily.us>
Mon, 17 Dec 2012 11:41:05 +0000 (06:41 -0500)
Also prefer displayName to cn when formatting names.

mutt-ldap.py

index 059b25caddee73b3aaebdb46d66697f763bd3c44..7c51d859d68413c4770c2308489ec585c955e01f 100755 (executable)
@@ -87,7 +87,7 @@ def search(query, connection=None):
             post = '*'
         filterstr = '(|%s)' % (
             u' '.join([u'(%s=*%s%s)' % (field, query, post)
-                       for field in ['cn', 'uid', 'mail']]))
+                       for field in ['cn', 'displayName', 'uid', 'mail']]))
         r = connection.search_s(
             CONFIG.get('connection', 'basedn'),
             ldap.SCOPE_SUBTREE,
@@ -100,8 +100,9 @@ def search(query, connection=None):
 def format_entry(entry):
     cn,data = entry
     if 'mail' in data:
+        name = data.get('displayName', data['cn'])[-1]
         for m in data['mail']:
-            yield email.utils.formataddr((data['cn'][-1], m))
+            yield email.utils.formataddr((name, m))
 
 
 if __name__ == '__main__':