sasl_auxprop
Cyrus SASL documentation
- Provided by: libsasl2-dev (Version: 2.1.28+dfsg1-9ubuntu3)
- Source: cyrus-sasl2
- Report a bug
Cyrus SASL documentation
#include <sasl/prop.h>
struct propctx *prop_new(unsigned estimate)
int prop_dup(struct propctx *src_ctx,
struct propctx *dst_ctx)
int prop_request(struct propctx *ctx,
const char **names)
const struct propval *prop_get(struct propctx *ctx)
int prop_getnames(struct propctx *ctx, const char **names,
struct propval *vals)
void prop_clear(struct propctx *ctx, int requests)
void prop_erase(struct propctx *ctx, const char *name)
void prop_dispose(struct propctx **ctx)
int prop_format(struct propctx *ctx, const char *sep, int seplen,
char *outbuf, unsigned outmax, unsigned *outlen)
int prop_set(struct propctx *ctx, const char *name,
const char *value, int vallen)
int prop_setvals(struct propctx *ctx, const char *name,
const char **values)
SASL auxiliary properties are used to obtain properties from external sources during the authentication process. For example, a mechanism might need to query an LDAP server to obtain the authentication secret. The application probably needs other information from there as well, such as home directory or UID. The auxiliary property interface allows the two to cooperate, and only results in a single query against the LDAP server (or other property sources).
Property lookups take place directly after user canonicalization occurs. Therefore, all requests should be registered with the context before that time. Note that requests can also be registered using the sasl_auxprop_request(3) <#std-saslman-sasl_auxprop_request-3> function. Most of the functions listed below, however, require a property context which can be obtained by calling sasl_auxprop_getctx(3) <#std-saslman-sasl_auxprop_getctx-3>.
The property functions that return an int return SASL error codes. See sasl_errors(3) <#std-saslman-sasl_errors-3>. Those that return pointers will return a valid pointer on success, or NULL on any error.
RFC 4422 <https://datatracker.ietf.org/doc/html/rfc4422.html>
sasl(3) <#std-saslman-sasl-3>, sasl_errors(3) <#std-saslman-sasl_errors-3>, sasl_auxprop_request(3) <#std-saslman-sasl_auxprop_request-3>, sasl_auxprop_getctx(3) <#std-saslman-sasl_auxprop_getctx-3>
The Cyrus Team
1993-2016, The Cyrus Team