1
6
7
8
9
10
11
12
13
14
15
16
19
20
21
22
23
24
25
26
27
28
29
30
35
36
37
38
39
40
45
49
50
57
61
62
68
72
73
74
75
76
77
78
83
84
89
90
91
98
99
100
106
107
108
109
110
111
112
/* ... */
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
#include "sdkconfig.h"
/* ... */
#define ESP_ROM_MD5_DIGEST_LEN 16
#if CONFIG_IDF_TARGET_ESP32C2
/* ... */
typedef struct mbedtls_md5_context {
uint32_t total[2];
uint32_t state[4];
unsigned char buffer[64];
}{...} md5_context_t;
void esp_rom_mbedtls_md5_starts_ret(md5_context_t *context);
void esp_rom_mbedtls_md5_update_ret(md5_context_t *context, const void *buf, uint32_t len);
void esp_rom_mbedtls_md5_finish_ret(md5_context_t *context, uint8_t *digest);
/* ... */
static inline void esp_rom_md5_init(md5_context_t *context)
{
esp_rom_mbedtls_md5_starts_ret(context);
}{...}
/* ... */
static inline void esp_rom_md5_update(md5_context_t *context, const void *buf, uint32_t len)
{
esp_rom_mbedtls_md5_update_ret(context, buf, len);
}{...}
/* ... */
static inline void esp_rom_md5_final(uint8_t *digest, md5_context_t *context)
{
esp_rom_mbedtls_md5_finish_ret(context, digest);
}{...}
/* ... */
#else
/* ... */
typedef struct MD5Context {
uint32_t buf[4];
uint32_t bits[2];
uint8_t in[64];
}{ ... } md5_context_t;
/* ... */
void esp_rom_md5_init(md5_context_t *context);
/* ... */
void esp_rom_md5_update(md5_context_t *context, const void *buf, uint32_t len);
/* ... */
void esp_rom_md5_final(uint8_t *digest, md5_context_t *context);
/* ... */
#endif
#ifdef __cplusplus
}{...}
#endif