from .ldap import LDAPResultCode class LDAPError(Exception): '''Base class for all LDAP errors''' result_code = None def __init__(self, message=''): super().__init__() self.code = self.result_code self.message = message #class LDAPSuccess(LDAPError): # result_code = LDAPResultCode.success class LDAPOperationsError(LDAPError): result_code = LDAPResultCode.operationsError class LDAPProtocolError(LDAPError): result_code = LDAPResultCode.protocolError class LDAPTimeLimitExceeded(LDAPError): result_code = LDAPResultCode.timeLimitExceeded class LDAPSizeLimitExceeded(LDAPError): result_code = LDAPResultCode.sizeLimitExceeded #class LDAPCompareFalse(LDAPError): # result_code = LDAPResultCode.compareFalse #class LDAPCompareTrue(LDAPError): # result_code = LDAPResultCode.compareTrue class LDAPAuthMethodNotSupported(LDAPError): result_code = LDAPResultCode.authMethodNotSupported class LDAPStrongerAuthRequired(LDAPError): result_code = LDAPResultCode.strongerAuthRequired #class LDAPReferral(LDAPError): # result_code = LDAPResultCode.referral class LDAPAdminLimitExceeded(LDAPError): result_code = LDAPResultCode.adminLimitExceeded class LDAPUnavailableCriticalExtension(LDAPError): result_code = LDAPResultCode.unavailableCriticalExtension class LDAPConfidentialityRequired(LDAPError): result_code = LDAPResultCode.confidentialityRequired #class LDAPSaslBindInProgress(LDAPError): # result_code = LDAPResultCode.saslBindInProgress class LDAPNoSuchAttribute(LDAPError): result_code = LDAPResultCode.noSuchAttribute class LDAPUndefinedAttributeType(LDAPError): result_code = LDAPResultCode.undefinedAttributeType class LDAPInappropriateMatching(LDAPError): result_code = LDAPResultCode.inappropriateMatching class LDAPConstraintViolation(LDAPError): result_code = LDAPResultCode.constraintViolation class LDAPAttributeOrValueExists(LDAPError): result_code = LDAPResultCode.attributeOrValueExists class LDAPInvalidAttributeSyntax(LDAPError): result_code = LDAPResultCode.invalidAttributeSyntax class LDAPNoSuchObject(LDAPError): result_code = LDAPResultCode.noSuchObject class LDAPAliasProblem(LDAPError): result_code = LDAPResultCode.aliasProblem class LDAPInvalidDNSyntax(LDAPError): result_code = LDAPResultCode.invalidDNSyntax class LDAPAliasDereferencingProblem(LDAPError): result_code = LDAPResultCode.aliasDereferencingProblem class LDAPInappropriateAuthentication(LDAPError): result_code = LDAPResultCode.inappropriateAuthentication class LDAPInvalidCredentials(LDAPError): result_code = LDAPResultCode.invalidCredentials class LDAPInsufficientAccessRights(LDAPError): result_code = LDAPResultCode.insufficientAccessRights class LDAPBusy(LDAPError): result_code = LDAPResultCode.busy class LDAPUnavailable(LDAPError): result_code = LDAPResultCode.unavailable class LDAPUnwillingToPerform(LDAPError): result_code = LDAPResultCode.unwillingToPerform class LDAPLoopDetect(LDAPError): result_code = LDAPResultCode.loopDetect class LDAPNamingViolation(LDAPError): result_code = LDAPResultCode.namingViolation class LDAPObjectClassViolation(LDAPError): result_code = LDAPResultCode.objectClassViolation class LDAPNotAllowedOnNonLeaf(LDAPError): result_code = LDAPResultCode.notAllowedOnNonLeaf class LDAPNotAllowedOnRDN(LDAPError): result_code = LDAPResultCode.notAllowedOnRDN class LDAPEntryAlreadyExists(LDAPError): result_code = LDAPResultCode.entryAlreadyExists class LDAPObjectClassModsProhibited(LDAPError): result_code = LDAPResultCode.objectClassModsProhibited class LDAPAffectsMultipleDSAs(LDAPError): result_code = LDAPResultCode.affectsMultipleDSAs class LDAPOther(LDAPError): result_code = LDAPResultCode.other