--- auth.py.org	2007-08-08 14:24:01.000000000 -0600
+++ MoinMoin/auth.py	2007-08-08 14:33:36.000000000 -0600
@@ -425,8 +425,11 @@
             l.simple_bind_s(dn, password.encode(coding))
             if verbose: request.log("LDAP: Bound with dn %s (username: %s)" % (dn, username))
 
-            email = ldap_dict.get(cfg.ldap_email_attribute, [''])[0]
-            email = email.decode(coding)
+            if cfg.ldap_email_attribute:
+                email = ldap_dict.get(cfg.ldap_email_attribute, [''])[0]
+                email = email.decode(coding)
+            else:
+                email = None
 
             aliasname = ''
             try:
@@ -442,10 +445,13 @@
                     aliasname = sn
             aliasname = aliasname.decode(coding)
 
-            u = user.User(request, auth_username=username, password=password, auth_method='ldap', auth_attribs=('name', 'password', 'email', 'mailto_author',))
+            if email:
+                u = user.User(request, auth_username=username, password=password, auth_method='ldap', auth_attribs=('name', 'password', 'email', 'mailto_author',))
+                u.email = email
+            else:
+                u = user.User(request, auth_username=username, password=password, auth_method='ldap', auth_attribs=('name', 'password', 'mailto_author',))
             u.name = username
             u.aliasname = aliasname
-            u.email = email
             u.remember_me = 0 # 0 enforces cookie_lifetime config param
             if verbose: request.log("LDAP: creating userprefs with name %s email %s alias %s" % (username, email, aliasname))
 
