DOKK / manpages / debian 11 / libsasl2-dev / sasl_listmech.3.en
SASL_LISTMECH(3) Cyrus SASL SASL_LISTMECH(3)

sasl_listmech - Cyrus SASL documentation

#include <sasl/sasl.h>
int sasl_listmech(sasl_conn_t *conn,

const char *user,
const char *prefix,
const char *sep,
const char *suffix,
const char **result,
unsigned *plen,
int *pcount);

sasl_listmech returns a string listing the SASL names of all the mechanisms available to the specified user. This is typically given to the client through a capability command or initial server response. Client applications need this list so that they know what mechanisms the server supports.
  • conn – the SASL context for this connection
  • user – (optional) restricts the mechanism list to only those available to the user.
  • prefix – appended to beginning of result
  • sep – appended between mechanisms
  • suffix – appended to end of result
  • result – NULL terminated result string (allocated/freed by library)
  • plen – length of result filled in by library. May be NULL
  • pcount – Number of mechanisms available (filled in by library). May be NULL



sasl_listmech(conn,NULL,"(",",",")",&mechlist,NULL,NULL);

may give the following string as a result:

(ANONYMOUS,KERBEROS_V4,DIGEST‐MD5)


SASL functions should return SASL return codes. See sasl.h for a complete list. SASL_OK indicates success.

RFC 4422,:saslman:sasl(3), sasl_server_new(3), sasl_errors(3), sasl_client_new(3)

The Cyrus Team

1993-2022, The Cyrus Team

February 25, 2022 2.1.27