21 #include <sys/types.h> 29 #include "sha2/sha2.h" 33 #define DTLS_HASH_CTX_SIZE sizeof(dtls_sha256_ctx) 37 dtls_sha256_init((dtls_sha256_ctx *)ctx);
42 dtls_sha256_update((dtls_sha256_ctx *)ctx, input, len);
47 dtls_sha256_final(buf, (dtls_sha256_ctx *)ctx);
48 return DTLS_SHA256_DIGEST_LENGTH;
61 #define DTLS_HMAC_BLOCKSIZE 64 62 #define DTLS_HMAC_DIGEST_SIZE 32 63 #define DTLS_HMAC_MAX 64 125 const unsigned char *input,
size_t ilen);
void dtls_hmac_update(dtls_hmac_context_t *ctx, const unsigned char *input, size_t ilen)
void dtls_hmac_free(dtls_hmac_context_t *ctx)
dtls_sha256_ctx dtls_hash_ctx
void dtls_hmac_init(dtls_hmac_context_t *ctx, const unsigned char *key, size_t klen)
dtls_hmac_context_t * dtls_hmac_new(const unsigned char *key, size_t klen)
static void dtls_hash_init(dtls_hash_t ctx)
dtls_hash_ctx * dtls_hash_t
static void dtls_hash_update(dtls_hash_t ctx, const unsigned char *input, size_t len)
int dtls_hmac_finalize(dtls_hmac_context_t *ctx, unsigned char *result)
#define DTLS_HMAC_BLOCKSIZE
static size_t dtls_hash_finalize(unsigned char *buf, dtls_hash_t ctx)
void dtls_hmac_storage_init(void)