9 RCSIDH(md5_h,
"$Id: de408dca67b56eaf79804a9efe2080ebd36d163e $")
15 #include <freeradius-devel/build.h>
16 #include <freeradius-devel/missing.h>
19 #include <sys/types.h>
24 #ifndef MD5_DIGEST_LENGTH
25 # define MD5_DIGEST_LENGTH 16
98 uint8_t const *key,
size_t key_len);
#define MD5_DIGEST_LENGTH
fr_md5_ctx_alloc_t fr_md5_ctx_alloc
int fr_hmac_md5(uint8_t digest[static MD5_DIGEST_LENGTH], uint8_t const *in, size_t inlen, uint8_t const *key, size_t key_len)
void(* fr_md5_update_t)(fr_md5_ctx_t *ctx, uint8_t const *in, size_t inlen)
Ingest plaintext into the digest.
fr_md5_ctx_free_t fr_md5_ctx_free
fr_md5_ctx_t *(* fr_md5_ctx_alloc_t)(void)
Allocation function for MD5 digest context.
fr_md5_update_t fr_md5_update
fr_md5_final_t fr_md5_final
void(* fr_md5_final_t)(uint8_t out[static MD5_DIGEST_LENGTH], fr_md5_ctx_t *ctx)
Finalise the ctx, producing the digest.
void(* fr_md5_ctx_free_t)(fr_md5_ctx_t **ctx)
Free function for MD5 digest ctx.
fr_md5_ctx_reset_t fr_md5_ctx_reset
void fr_md5_calc(uint8_t out[static MD5_DIGEST_LENGTH], uint8_t const *in, size_t inlen)
Perform a single digest operation on a single input buffer.
void(* fr_md5_ctx_reset_t)(fr_md5_ctx_t *ctx)
Reset the ctx to allow reuse.
void fr_md5_ctx_free_from_list(fr_md5_ctx_t **ctx)
Release an MD5 context back to a free list.
fr_md5_ctx_t * fr_md5_ctx_alloc_from_list(void)
Allocate an MD5 context from a free list.
fr_md5_ctx_copy_t fr_md5_ctx_copy
void(* fr_md5_ctx_copy_t)(fr_md5_ctx_t *dst, fr_md5_ctx_t const *src)
Copy the contents of a ctx.
static size_t char fr_sbuff_t size_t inlen
static size_t char ** out