typedef struct {
fr_ldap_connection_t *c; //!< to bind. Only used when binding as admin user.
char const *mechs; //!< SASL mechanisms to run
- char const *dn; //!< to bind as.
char const *identity; //!< of the user.
char const *password; //!< of the user, may be NULL if no password is specified.
char const *proxy; //!< Proxy identity, may be NULL in which case identity is used.
int fr_ldap_sasl_bind_auth_async(request_t *request,
fr_ldap_thread_t *thread,
char const *mechs,
- char const *dn,
char const *identity,
char const *password,
char const *proxy, char const *realm);
* @param[in] request this bind relates to.
* @param[in] thread whose connection the bind should be performed on.
* @param[in] mechs SASL mechanisms to use.
- * @param[in] dn DN to bind as.
* @param[in] identity Identity to bind with.
* @param[in] password Password to bind with.
* @param[in] proxy Identity to proxy.
* - 0 on success.
* - -1 on failure.
*/
-int fr_ldap_sasl_bind_auth_async(request_t *request, fr_ldap_thread_t *thread, char const *mechs, char const *dn,
+int fr_ldap_sasl_bind_auth_async(request_t *request, fr_ldap_thread_t *thread, char const *mechs,
char const *identity, char const *password, char const *proxy, char const *realm)
{
fr_ldap_bind_auth_ctx_t *bind_auth_ctx;
talloc_set_destructor(bind_auth_ctx->sasl_ctx, _sasl_ctx_free);
*bind_auth_ctx->sasl_ctx = (fr_ldap_sasl_ctx_t) {
.mechs = mechs,
- .dn = dn,
.identity = identity,
.password = password,
.proxy = proxy,
#ifdef WITH_SASL
ldap_auth_call_env_t *call_env = auth_ctx->call_env;
if (fr_ldap_sasl_bind_auth_async(request, auth_ctx->thread, call_env->user_sasl_mech.vb_strvalue,
- auth_ctx->dn, call_env->user_sasl_authname.vb_strvalue,
+ call_env->user_sasl_authname.vb_strvalue,
auth_ctx->password, call_env->user_sasl_proxy.vb_strvalue,
call_env->user_sasl_realm.vb_strvalue) < 0) goto fail;
#else