No need to mkdir userkeys directory anymore
[mirror/userdir-ldap.git] / UDLdap.py
index 97fd2fb..b546112 100644 (file)
--- a/UDLdap.py
+++ b/UDLdap.py
@@ -43,7 +43,7 @@ class Account:
         elif key in self.defaults:
             return self.defaults[key]
         else:
-            raise IndexError
+            raise IndexError, "No such key: %s (dn: %s)"%(key, self.dn)
 
     def __contains__(self, key):
         return key in self.attributes
@@ -55,15 +55,17 @@ class Account:
 
     # not locked locked,  just reset to something invalid like {crypt}*SSLRESET* is still active
     def pw_active(self):
-        if self['userPassword'] == '{crypt}*LK*':
+        if not 'userPassword' in self:
             return False
-        if self['userPassword'].startswith("{crypt}!"):
+        if self['userPassword'].upper() == '{CRYPT}*LK*':
+            return False
+        if self['userPassword'].upper().startswith("{CRYPT}!"):
             return False
         return True
 
     def get_password(self):
         p = self['userPassword']
-        if not p.startswith('{crypt}') or len(p) > 50:
+        if not p.upper().startswith('{CRYPT}') or len(p) > 50:
             return p
         else:
             return p[7:]