41 return gc_nonce (data, datalen);
57 return gc_random (data, datalen);
105 const char *salted_password,
107 char *server_key,
char *stored_key)
113 #define CLIENT_KEY "Client Key"
120 res =
_gsasl_hash (hash, client_key, hashlen, stored_key);
125 #define SERVER_KEY "Server Key"
157 const char *password,
158 unsigned int iteration_count,
161 char *salted_password,
163 char *server_key,
char *stored_key)
173 salt, saltlen, iteration_count, salted_password, 0);
179 client_key, server_key,
int gsasl_random(char *data, size_t datalen)
size_t gsasl_hash_length(Gsasl_hash hash)
int gsasl_scram_secrets_from_salted_password(Gsasl_hash hash, const char *salted_password, char *client_key, char *server_key, char *stored_key)
int gsasl_nonce(char *data, size_t datalen)
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_saslprep(const char *in, Gsasl_saslprep_flags flags, char **out, int *stringpreprc)