1 | /* |
2 | cencode.h - c header for a base64 encoding algorithm |
3 | |
4 | This is part of the libb64 project, and has been placed in the public domain. |
5 | For details, see http://sourceforge.net/projects/libb64 |
6 | */ |
7 | |
8 | #ifndef BASE64_CENCODE_H |
9 | #define BASE64_CENCODE_H |
10 | |
11 | typedef enum |
12 | { |
13 | step_A, step_B, step_C |
14 | } base64_encodestep; |
15 | |
16 | typedef struct |
17 | { |
18 | base64_encodestep step; |
19 | char result; |
20 | int stepcount; |
21 | } base64_encodestate; |
22 | |
23 | void base64_init_encodestate(base64_encodestate* state_in); |
24 | |
25 | char base64_encode_value(char value_in); |
26 | |
27 | int base64_encode_block(const char* plaintext_in, int length_in, char* code_out, base64_encodestate* state_in); |
28 | |
29 | int base64_encode_blockend(char* code_out, base64_encodestate* state_in); |
30 | |
31 | #endif /* BASE64_CENCODE_H */ |
32 | |
33 | |