/*
* sasl_s.c - SASL synchronous bind functions
*/
+#ifdef HAVE_LDAP_SASL_INTERACTIVE_BIND
fr_ldap_rcode_t fr_ldap_sasl_interactive(REQUEST *request,
fr_ldap_connection_t *pconn, char const *dn,
char const *password, fr_ldap_sasl_t const *sasl,
LDAPControl **serverctrls, LDAPControl **clientctrls,
struct timeval const *timeout);
+#endif
/*
* connection.c - Connection configuration functions
/*
* sasl.c - Async sasl bind
*/
+#ifdef HAVE_LDAP_SASL_INTERACTIVE_BIND
int fr_ldap_sasl_bind_async(fr_ldap_connection_t *c,
char const *mechs,
char const *identity,
char const *proxy,
char const *realm,
LDAPControl **serverctrls, LDAPControl **clientctrls);
+#endif
+
/*
* bind.c - Async bind
*/
/*
* SASL uses a different (and more complex) codepath
*/
+#ifdef HAVE_LDAP_SASL_INTERACTIVE_BIND
if (c->config->admin_sasl.mech) {
if (fr_ldap_sasl_bind_async(c,
c->config->admin_sasl.mech,
}
break;
}
+#endif
/*
* Normal binds are just a simple request/response pair