42 # if defined GSASL_BUILDING && defined HAVE_VISIBILITY && HAVE_VISIBILITY
43 # define _GSASL_API __attribute__((__visibility__("default")))
44 # elif defined GSASL_BUILDING && defined _MSC_VER && ! defined GSASL_STATIC
45 # define _GSASL_API __declspec(dllexport)
46 # elif defined _MSC_VER && ! defined GSASL_STATIC
47 # define _GSASL_API __declspec(dllimport)
359 const char *data,
size_t len);
386 const char *input,
size_t input_len,
387 char **output,
size_t *output_len);
389 const char *b64input,
char **b64output);
394 const char *input,
size_t input_len,
395 char **output,
size_t *output_len);
397 const char *input,
size_t input_len,
398 char **output,
size_t *output_len);
408 char **out,
int *stringpreprc);
462 const char *salted_password,
469 unsigned int iteration_count,
472 char *salted_password,
474 char *server_key,
char *stored_key);
478 const char *username,
481 char **out,
size_t *outlen);
483 char **out,
size_t *outlen);
485 char **out,
size_t *outlen);
_GSASL_API int gsasl_encode(Gsasl_session *sctx, const char *input, size_t input_len, char **output, size_t *output_len)
_GSASL_API int gsasl_scram_secrets_from_password(Gsasl_hash hash, const char *password, unsigned int iteration_count, const char *salt, size_t saltlen, char *salted_password, char *client_key, char *server_key, char *stored_key)
_GSASL_API int gsasl_init(Gsasl **ctx)
_GSASL_API size_t gsasl_hash_length(Gsasl_hash hash)
_GSASL_API const char * gsasl_strerror_name(int err)
_GSASL_API const char * gsasl_client_suggest_mechanism(Gsasl *ctx, const char *mechlist)
_GSASL_API int gsasl_base64_to(const char *in, size_t inlen, char **out, size_t *outlen)
_GSASL_API int gsasl_server_mechlist(Gsasl *ctx, char **out)
_GSASL_API int gsasl_mechanism_name_p(const char *mech)
_GSASL_API void gsasl_callback_hook_set(Gsasl *ctx, void *hook)
_GSASL_API int gsasl_nonce(char *data, size_t datalen)
_GSASL_API const char * gsasl_strerror(int err)
_GSASL_API int gsasl_hex_from(const char *in, char **out, size_t *outlen)
int(* Gsasl_callback_function)(Gsasl *ctx, Gsasl_session *sctx, Gsasl_property prop)
_GSASL_API void gsasl_property_free(Gsasl_session *sctx, Gsasl_property prop)
@ GSASL_GSSAPI_UNWRAP_ERROR
@ GSASL_GSSAPI_IMPORT_NAME_ERROR
@ GSASL_GSSAPI_RELEASE_OID_SET_ERROR
@ GSASL_SECURID_SERVER_NEED_ADDITIONAL_PASSCODE
@ GSASL_GSSAPI_RELEASE_BUFFER_ERROR
@ GSASL_NO_CB_TLS_EXPORTER
@ GSASL_GSSAPI_ACCEPT_SEC_CONTEXT_ERROR
@ GSASL_NO_OPENID20_REDIRECT_URL
@ GSASL_SECURID_SERVER_NEED_NEW_PIN
@ GSASL_GSSAPI_INQUIRE_MECH_FOR_SASLNAME_ERROR
@ GSASL_AUTHENTICATION_ERROR
@ GSASL_GSSAPI_TEST_OID_SET_MEMBER_ERROR
@ GSASL_NO_SAML20_IDP_IDENTIFIER
@ GSASL_GSSAPI_DISPLAY_NAME_ERROR
@ GSASL_GSSAPI_ENCAPSULATE_TOKEN_ERROR
@ GSASL_GSSAPI_ACQUIRE_CRED_ERROR
@ GSASL_MECHANISM_CALLED_TOO_MANY_TIMES
@ GSASL_GSSAPI_WRAP_ERROR
@ GSASL_MECHANISM_PARSE_ERROR
@ GSASL_GSSAPI_DECAPSULATE_TOKEN_ERROR
@ GSASL_NO_ANONYMOUS_TOKEN
@ GSASL_NO_SAML20_REDIRECT_URL
@ GSASL_UNKNOWN_MECHANISM
@ GSASL_GSSAPI_INIT_SEC_CONTEXT_ERROR
@ GSASL_GSSAPI_UNSUPPORTED_PROTECTION_ERROR
_GSASL_API int gsasl_property_set_raw(Gsasl_session *sctx, Gsasl_property prop, const char *data, size_t len)
_GSASL_API int gsasl_hex_to(const char *in, size_t inlen, char **out, size_t *outlen)
_GSASL_API int gsasl_base64_from(const char *in, size_t inlen, char **out, size_t *outlen)
_GSASL_API int gsasl_step(Gsasl_session *sctx, const char *input, size_t input_len, char **output, size_t *output_len)
_GSASL_API void gsasl_session_hook_set(Gsasl_session *sctx, void *hook)
_GSASL_API int gsasl_property_set(Gsasl_session *sctx, Gsasl_property prop, const char *data)
_GSASL_API int gsasl_server_start(Gsasl *ctx, const char *mech, Gsasl_session **sctx)
_GSASL_API const char * gsasl_check_version(const char *req_version)
_GSASL_API void * gsasl_session_hook_get(Gsasl_session *sctx)
_GSASL_API int gsasl_step64(Gsasl_session *sctx, const char *b64input, char **b64output)
_GSASL_API int gsasl_random(char *data, size_t datalen)
_GSASL_API const char * gsasl_property_get(Gsasl_session *sctx, Gsasl_property prop)
_GSASL_API const char * gsasl_mechanism_name(Gsasl_session *sctx)
_GSASL_API void gsasl_free(void *ptr)
_GSASL_API void * gsasl_callback_hook_get(Gsasl *ctx)
_GSASL_API void gsasl_done(Gsasl *ctx)
_GSASL_API int gsasl_client_start(Gsasl *ctx, const char *mech, Gsasl_session **sctx)
@ GSASL_DIGEST_MD5_HASHED_PASSWORD
@ GSASL_SAML20_AUTHENTICATE_IN_BROWSER
@ GSASL_OPENID20_AUTHENTICATE_IN_BROWSER
@ GSASL_GSSAPI_DISPLAY_NAME
@ GSASL_VALIDATE_EXTERNAL
@ GSASL_OPENID20_OUTCOME_DATA
@ GSASL_SAML20_IDP_IDENTIFIER
@ GSASL_SCRAM_SALTED_PASSWORD
@ GSASL_VALIDATE_OPENID20
@ GSASL_SAML20_REDIRECT_URL
@ GSASL_VALIDATE_ANONYMOUS
@ GSASL_OPENID20_REDIRECT_URL
_GSASL_API int gsasl_simple_getpass(const char *filename, const char *username, char **key)
_GSASL_API void gsasl_callback_set(Gsasl *ctx, Gsasl_callback_function cb)
_GSASL_API void gsasl_finish(Gsasl_session *sctx)
_GSASL_API int gsasl_client_support_p(Gsasl *ctx, const char *name)
_GSASL_API int gsasl_scram_secrets_from_salted_password(Gsasl_hash hash, const char *salted_password, char *client_key, char *server_key, char *stored_key)
_GSASL_API int gsasl_callback(Gsasl *ctx, Gsasl_session *sctx, Gsasl_property prop)
_GSASL_API const char * gsasl_property_fast(Gsasl_session *sctx, Gsasl_property prop)
_GSASL_API int gsasl_server_support_p(Gsasl *ctx, const char *name)
_GSASL_API int gsasl_client_mechlist(Gsasl *ctx, char **out)
@ GSASL_MIN_MECHANISM_SIZE
@ GSASL_MAX_MECHANISM_SIZE
_GSASL_API int gsasl_saslprep(const char *in, Gsasl_saslprep_flags flags, char **out, int *stringpreprc)
_GSASL_API int gsasl_decode(Gsasl_session *sctx, const char *input, size_t input_len, char **output, size_t *output_len)