LDAP_LOCAL_LMTP_QUERY = (&(|(mail=${quote_ldap:${local_part}@${domain}})\
                            (alias=${quote_ldap:${local_part}@${domain}}))\
                          (objectclass=inetorgperson))

cyrus_lmtp_local_lmtp:
  debug_print = "R: cyrus_lmtp_local_lmtp for $local_part@$domain"
  driver = accept
  local_part_prefix = local+
  condition = ${if !eq {} \
    {${lookup ldap{ \
      user="$LDAP_SERVICE_BIND_DN" \
      pass=$LDAP_SERVICE_PASSWORD \
      $LDAP_SCHEME://$LDAP_HOST:$LDAP_PORT/$LDAP_BASE_DN?mail?sub?LDAP_LOCAL_LMTP_QUERY}}} \
    }
  transport = cyrus_lmtp
  cannot_route_message = Unknown user
