+from django.db.backends import BaseDatabaseFeatures, BaseDatabaseOperations
+
+def escape_ldap_filter(value):
+ value = unicode(value)
+ return value.replace('\\', '\\5c') \
+ .replace('*', '\\2a') \
+ .replace('(', '\\28') \
+ .replace(')', '\\29') \
+ .replace('\0', '\\00')
+
+class DatabaseCursor(object):
+ def __init__(self, ldap_connection):
+ self.connection = ldap_connection
+
+class DatabaseFeatures(BaseDatabaseFeatures):
+ def __init__(self, connection):
+ self.connection = connection
+
+class DatabaseOperations(BaseDatabaseOperations):
+ def quote_name(self, name):
+ return name
+
+class LdapConnection(object):
+ def __init__(self):
+ self.connection = None
+ self.charset = "utf-8"
+ self.features = DatabaseFeatures(self)
+ self.ops = DatabaseOperations()