Radius
md5.h
1 /**
2  * support MD5 for PPPoE CHAP mode
3  */
4 
5 #ifndef __MD5_H
6 #define __MD5_H
7 
8 #if ARDUINO >= 100
9 #include <Arduino.h>
10 #else
11 #include <wiring.h>
12 #endif
13 #define uint32 uint32_t
14 #define uint8 uint8_t
15 
16 /* MD5 context. */
17 typedef struct {
18  uint32 state[4]; /* state (ABCD) */
19  uint32 count[2]; /* number of bits, modulo 2^64 (lsb first) */
20  uint8 buffer[64]; /* input buffer */
21  } md5_ctx;
22 
23 extern void md5_init(md5_ctx *context);
24 extern void md5_update(md5_ctx *context, uint8 *buffer, uint32 length);
25 extern void md5_final(uint8 result[16], md5_ctx *context);
26 
27 #endif // __md5_H