digest-md5.h File Reference

#include <gsasl.h>

Go to the source code of this file.

Defines

#define GSASL_DIGEST_MD5_NAME   "DIGEST-MD5"

Functions

int _gsasl_digest_md5_client_start (Gsasl_session *sctx, void **mech_data)
int _gsasl_digest_md5_client_step (Gsasl_session *sctx, void *mech_data, const char *input, size_t input_len, char **output, size_t *output_len)
void _gsasl_digest_md5_client_finish (Gsasl_session *sctx, void *mech_data)
int _gsasl_digest_md5_client_encode (Gsasl_session *sctx, void *mech_data, const char *input, size_t input_len, char **output, size_t *output_len)
int _gsasl_digest_md5_client_decode (Gsasl_session *sctx, void *mech_data, const char *input, size_t input_len, char **output, size_t *output_len)
int _gsasl_digest_md5_server_start (Gsasl_session *sctx, void **mech_data)
int _gsasl_digest_md5_server_step (Gsasl_session *sctx, void *mech_data, const char *input, size_t input_len, char **output, size_t *output_len)
void _gsasl_digest_md5_server_finish (Gsasl_session *sctx, void *mech_data)
int _gsasl_digest_md5_server_encode (Gsasl_session *sctx, void *mech_data, const char *input, size_t input_len, char **output, size_t *output_len)
int _gsasl_digest_md5_server_decode (Gsasl_session *sctx, void *mech_data, const char *input, size_t input_len, char **output, size_t *output_len)

Variables

Gsasl_mechanism gsasl_digest_md5_mechanism


Define Documentation

#define GSASL_DIGEST_MD5_NAME   "DIGEST-MD5"

Definition at line 28 of file digest-md5.h.


Function Documentation

int _gsasl_digest_md5_client_decode ( Gsasl_session sctx,
void *  mech_data,
const char *  input,
size_t  input_len,
char **  output,
size_t *  output_len 
)

Definition at line 297 of file digest-md5/client.c.

References digest_md5_decode(), GSASL_INTEGRITY_ERROR, GSASL_NEEDS_MORE, GSASL_OK, _Gsasl_digest_md5_client_state::kis, digest_md5_response::qop, _Gsasl_digest_md5_client_state::readseqnum, and _Gsasl_digest_md5_client_state::response.

int _gsasl_digest_md5_client_encode ( Gsasl_session sctx,
void *  mech_data,
const char *  input,
size_t  input_len,
char **  output,
size_t *  output_len 
)

Definition at line 273 of file digest-md5/client.c.

References digest_md5_encode(), GSASL_INTEGRITY_ERROR, GSASL_NEEDS_MORE, GSASL_OK, _Gsasl_digest_md5_client_state::kic, digest_md5_response::qop, _Gsasl_digest_md5_client_state::response, and _Gsasl_digest_md5_client_state::sendseqnum.

void _gsasl_digest_md5_client_finish ( Gsasl_session sctx,
void *  mech_data 
)

Definition at line 258 of file digest-md5/client.c.

References _Gsasl_digest_md5_client_state::challenge, digest_md5_free_challenge(), digest_md5_free_finish(), digest_md5_free_response(), _Gsasl_digest_md5_client_state::finish, and _Gsasl_digest_md5_client_state::response.

int _gsasl_digest_md5_client_start ( Gsasl_session sctx,
void **  mech_data 
)

Definition at line 62 of file digest-md5/client.c.

References CNONCE_ENTROPY_BYTES, gsasl_base64_to(), GSASL_MALLOC_ERROR, gsasl_nonce(), and GSASL_OK.

int _gsasl_digest_md5_client_step ( Gsasl_session sctx,
void *  mech_data,
const char *  input,
size_t  input_len,
char **  output,
size_t *  output_len 
)

Definition at line 93 of file digest-md5/client.c.

References digest_md5_response::authzid, _Gsasl_digest_md5_client_state::challenge, digest_md5_response::cipher, digest_md5_response::cnonce, digest_md5_hmac(), DIGEST_MD5_LENGTH, digest_md5_parse_challenge(), digest_md5_parse_finish(), digest_md5_print_response(), DIGEST_MD5_RESPONSE_LENGTH, digest_md5_response::digesturi, _Gsasl_digest_md5_client_state::finish, GSASL_AUTHENTICATION_ERROR, GSASL_AUTHID, GSASL_AUTHZID, gsasl_callback(), GSASL_CRYPTO_ERROR, GSASL_HOSTNAME, GSASL_MALLOC_ERROR, gsasl_md5(), GSASL_MECHANISM_CALLED_TOO_MANY_TIMES, GSASL_MECHANISM_PARSE_ERROR, GSASL_NEEDS_MORE, GSASL_NO_AUTHID, GSASL_NO_HOSTNAME, GSASL_NO_PASSWORD, GSASL_NO_SERVICE, GSASL_OK, GSASL_PASSWORD, gsasl_property_fast(), gsasl_property_get(), gsasl_property_set(), GSASL_REALM, GSASL_SERVICE, _Gsasl_digest_md5_client_state::kcc, _Gsasl_digest_md5_client_state::kcs, _Gsasl_digest_md5_client_state::kic, _Gsasl_digest_md5_client_state::kis, digest_md5_response::nc, digest_md5_challenge::nonce, digest_md5_response::nonce, digest_md5_challenge::nrealms, digest_md5_response::qop, digest_md5_response::realm, digest_md5_challenge::realms, digest_md5_response::response, _Gsasl_digest_md5_client_state::response, digest_md5_finish::rspauth, _Gsasl_digest_md5_client_state::secret, _Gsasl_digest_md5_client_state::step, digest_md5_response::username, and digest_md5_response::utf8.

int _gsasl_digest_md5_server_decode ( Gsasl_session sctx,
void *  mech_data,
const char *  input,
size_t  input_len,
char **  output,
size_t *  output_len 
)

Definition at line 272 of file digest-md5/server.c.

References digest_md5_decode(), GSASL_INTEGRITY_ERROR, GSASL_NEEDS_MORE, GSASL_OK, _Gsasl_digest_md5_server_state::kic, digest_md5_response::qop, _Gsasl_digest_md5_server_state::readseqnum, and _Gsasl_digest_md5_server_state::response.

int _gsasl_digest_md5_server_encode ( Gsasl_session sctx,
void *  mech_data,
const char *  input,
size_t  input_len,
char **  output,
size_t *  output_len 
)

Definition at line 248 of file digest-md5/server.c.

References digest_md5_encode(), GSASL_INTEGRITY_ERROR, GSASL_NEEDS_MORE, GSASL_OK, _Gsasl_digest_md5_server_state::kis, digest_md5_response::qop, _Gsasl_digest_md5_server_state::response, and _Gsasl_digest_md5_server_state::sendseqnum.

void _gsasl_digest_md5_server_finish ( Gsasl_session sctx,
void *  mech_data 
)

Definition at line 233 of file digest-md5/server.c.

References _Gsasl_digest_md5_server_state::challenge, digest_md5_free_challenge(), digest_md5_free_finish(), digest_md5_free_response(), _Gsasl_digest_md5_server_state::finish, and _Gsasl_digest_md5_server_state::response.

int _gsasl_digest_md5_server_start ( Gsasl_session sctx,
void **  mech_data 
)

Definition at line 63 of file digest-md5/server.c.

References DIGEST_MD5_QOP_AUTH, DIGEST_MD5_QOP_AUTH_INT, gsasl_base64_to(), GSASL_MALLOC_ERROR, gsasl_nonce(), GSASL_OK, and NONCE_ENTROPY_BYTES.

int _gsasl_digest_md5_server_step ( Gsasl_session sctx,
void *  mech_data,
const char *  input,
size_t  input_len,
char **  output,
size_t *  output_len 
)

Definition at line 97 of file digest-md5/server.c.

References digest_md5_response::authzid, _Gsasl_digest_md5_server_state::challenge, digest_md5_response::cipher, digest_md5_response::cnonce, digest_md5_hmac(), DIGEST_MD5_LENGTH, digest_md5_parse_response(), digest_md5_print_challenge(), digest_md5_print_finish(), DIGEST_MD5_RESPONSE_LENGTH, digest_md5_validate(), digest_md5_response::digesturi, _Gsasl_digest_md5_server_state::finish, GSASL_AUTHENTICATION_ERROR, GSASL_AUTHID, GSASL_AUTHZID, GSASL_MALLOC_ERROR, gsasl_md5(), GSASL_MECHANISM_CALLED_TOO_MANY_TIMES, GSASL_MECHANISM_PARSE_ERROR, GSASL_NEEDS_MORE, GSASL_NO_PASSWORD, GSASL_OK, GSASL_PASSWORD, gsasl_property_get(), gsasl_property_set(), GSASL_REALM, digest_md5_response::nc, digest_md5_response::nonce, digest_md5_challenge::nrealms, digest_md5_response::qop, digest_md5_response::realm, digest_md5_challenge::realms, _Gsasl_digest_md5_server_state::response, digest_md5_response::response, digest_md5_finish::rspauth, _Gsasl_digest_md5_server_state::secret, _Gsasl_digest_md5_server_state::step, and digest_md5_response::username.


Variable Documentation

Gsasl_mechanism gsasl_digest_md5_mechanism

Definition at line 30 of file digest-md5/mechinfo.c.


Generated on Tue Aug 22 12:06:07 2006 for gsasl by  doxygen 1.4.7