Add starttls support to mutt-ldap.py and ldap-jpeg.py.
authorW. Trevor King <wking@tremily.us>
Mon, 14 May 2012 13:21:57 +0000 (09:21 -0400)
committerW. Trevor King <wking@tremily.us>
Mon, 14 May 2012 13:21:57 +0000 (09:21 -0400)
Also remove `rdn` from the searched attributes, because I don't have
such a field in any of my schemas.

posts/LDAP/ldap-jpeg.py
posts/LDAP/mutt-ldap.py

index 3e816d84a51ed333016e1aec94817d50d8878715..2d287973e7f9acfb390a4163ac5db807ac4486f6 100755 (executable)
@@ -39,6 +39,7 @@ CONFIG.add_section('connection')
 CONFIG.set('connection', 'server', 'domaincontroller.yourdomain.com')
 CONFIG.set('connection', 'port', '389')  # set to 636 for default over SSL
 CONFIG.set('connection', 'ssl', 'no')
+CONFIG.set('connection', 'starttls', 'no')
 CONFIG.set('connection', 'basedn', 'ou=x co.,dc=example,dc=net')
 CONFIG.add_section('auth')
 CONFIG.set('auth', 'user', '')
@@ -58,6 +59,8 @@ def connect():
         CONFIG.get('connection', 'server'),
         CONFIG.get('connection', 'port'))
     connection = _ldap.initialize(url)
+    if CONFIG.getboolean('connection', 'starttls') and protocol == 'ldap':
+        connection.start_tls_s()
     if CONFIG.getboolean('auth', 'gssapi'):
         sasl = _ldap_sasl.gssapi()
         connection.sasl_interactive_bind_s('', sasl)
@@ -80,7 +83,7 @@ def search(query, connection=None):
             post = '*'
         filterstr = '(|%s)' % (
             u' '.join([u'(%s=*%s%s)' % (field, query, post)
-                       for field in ['cn', 'rdn', 'uid', 'mail']]))
+                       for field in ['cn', 'uid', 'mail']]))
         r = connection.search_s(
             CONFIG.get('connection', 'basedn'),
             _ldap.SCOPE_SUBTREE,
index 8d22ff6fc6a96c9ae7eb1810676467c4ac089f5c..059b25caddee73b3aaebdb46d66697f763bd3c44 100755 (executable)
@@ -47,6 +47,7 @@ CONFIG.add_section('connection')
 CONFIG.set('connection', 'server', 'domaincontroller.yourdomain.com')
 CONFIG.set('connection', 'port', '389')  # set to 636 for default over SSL
 CONFIG.set('connection', 'ssl', 'no')
+CONFIG.set('connection', 'starttls', 'no')
 CONFIG.set('connection', 'basedn', 'ou=x co.,dc=example,dc=net')
 CONFIG.add_section('auth')
 CONFIG.set('auth', 'user', '')
@@ -63,6 +64,8 @@ def connect():
         CONFIG.get('connection', 'server'),
         CONFIG.get('connection', 'port'))
     connection = ldap.initialize(url)
+    if CONFIG.getboolean('connection', 'starttls') and protocol == 'ldap':
+        connection.start_tls_s()
     if CONFIG.getboolean('auth', 'gssapi'):
         sasl = ldap.sasl.gssapi()
         connection.sasl_interactive_bind_s('', sasl)
@@ -84,7 +87,7 @@ def search(query, connection=None):
             post = '*'
         filterstr = '(|%s)' % (
             u' '.join([u'(%s=*%s%s)' % (field, query, post)
-                       for field in ['cn', 'rdn', 'uid', 'mail']]))
+                       for field in ['cn', 'uid', 'mail']]))
         r = connection.search_s(
             CONFIG.get('connection', 'basedn'),
             ldap.SCOPE_SUBTREE,