From: Nick Porter Date: Tue, 11 Apr 2023 14:38:02 +0000 (+0100) Subject: Define fr_ldap_sasl_bind_auth_send() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=49e5b367795a8a36ba802173bc76526309639310;p=thirdparty%2Ffreeradius-server.git Define fr_ldap_sasl_bind_auth_send() --- diff --git a/src/lib/ldap/base.h b/src/lib/ldap/base.h index 5d72d7b349e..613f7bc42a4 100644 --- a/src/lib/ldap/base.h +++ b/src/lib/ldap/base.h @@ -877,6 +877,10 @@ int fr_ldap_sasl_bind_async(fr_ldap_connection_t *c, char const *realm, LDAPControl **serverctrls, LDAPControl **clientctrls); +int fr_ldap_sasl_bind_auth_send(fr_ldap_sasl_ctx_t *sasl_ctx, + int *msgid, + fr_ldap_connection_t *ldap_conn); + int fr_ldap_sasl_bind_auth_async(request_t *request, fr_ldap_thread_t *thread, char const *mechs, diff --git a/src/lib/ldap/sasl.c b/src/lib/ldap/sasl.c index 1cc7471954c..9445ee15bd9 100644 --- a/src/lib/ldap/sasl.c +++ b/src/lib/ldap/sasl.c @@ -357,6 +357,23 @@ int fr_ldap_sasl_bind_async(fr_ldap_connection_t *c, } +/** Send a SASL LDAP auth bind + * + * Shares the same callback as SASL admin binds + * + * @param[in] sasl_ctx containing SASL parameters / state for the bind. + * @param[out] msgid where to write the LDAP message ID. + * @param[in] ldap_conn on which the message should be sent. + */ +int fr_ldap_sasl_bind_auth_send(fr_ldap_sasl_ctx_t *sasl_ctx, int *msgid, + fr_ldap_connection_t *ldap_conn) +{ + return ldap_sasl_interactive_bind(ldap_conn->handle, NULL, sasl_ctx->mechs, + NULL, NULL, LDAP_SASL_AUTOMATIC, + _sasl_interact, sasl_ctx, sasl_ctx->result, + &sasl_ctx->rmech, msgid); +} + /** Submit an async SASL LDAP auth bind * * @param[in] p_result Unused.