diff --git a/scheme/conditions.scm b/scheme/conditions.scm index 065383f..8db2689 100644 --- a/scheme/conditions.scm +++ b/scheme/conditions.scm @@ -180,6 +180,20 @@ (define-condition-type &ldap-referral-limit-exceeded &ldap-error ldap-referral-limit-exceeded?) +;; ldap filter conditions + +(define-condition-type &ldap-filter-error &ldap-error + ldap-filter-error?) + +(define-condition-type &ldap-filter-wrong-type &ldap-filter-error + ldap-filter-wrong-type? + (expected ldap-filter-wrong-type-expected) + (value ldap-filter-wrong-type-value)) + +(define-condition-type &ldap-filter-internal-error &ldap-filter-error + ldap-filter-internal-error? + (what ldap-filter-internal-error-what)) + (define raise-ldap-condition (let ((alist `((,(ldap-return operations-error) ,&ldap-operations-error) @@ -246,3 +260,15 @@ (raise (condition (&ldap-bindings-internal-error (code return-object))))))))) + +; conditions raised in ldap-filter + +(define-condition-type &ldap-filter-wrong-type &ldap-error + ldap-filter-wrong-type? + (expected ldap-filter-wrong-type-expected) + (value ldap-filter-wrong-type-value)) + +(define-condition-type &ldap-filter-internal-error &ldap-error + ldap-filter-internal-error? + (what ldap-filter-internal-error-what)) + \ No newline at end of file