]> git.proxmox.com Git - mirror_frr.git/blame - lib/base64.h
Merge pull request #12805 from karlquan/kquan_self_orig
[mirror_frr.git] / lib / base64.h
CommitLineData
47a3a827 1// SPDX-License-Identifier: NONE
ac313345 2/*
3 * This is part of the libb64 project, and has been placed in the public domain.
4 * For details, see http://sourceforge.net/projects/libb64
5 */
6
7#ifndef _BASE64_H_
8#define _BASE64_H_
9
10enum base64_encodestep {
11 step_A, step_B, step_C
12};
13
14struct base64_encodestate {
15 enum base64_encodestep step;
16 char result;
17 int stepcount;
18};
19
20void base64_init_encodestate(struct base64_encodestate *state_in);
21
22char base64_encode_value(char value_in);
23
24int base64_encode_block(const char *plaintext_in, int length_in, char *code_out,
25 struct base64_encodestate *state_in);
26
27int base64_encode_blockend(char *code_out, struct base64_encodestate *state_in);
28
29
30enum base64_decodestep {
31 step_a, step_b, step_c, step_d
32};
33
34struct base64_decodestate {
35 enum base64_decodestep step;
36 char plainchar;
37};
38
39void base64_init_decodestate(struct base64_decodestate *state_in);
40
41signed char base64_decode_value(signed char value_in);
42
43int base64_decode_block(const char *code_in, int length_in, char *plaintext_out,
44 struct base64_decodestate *state_in);
45
46#endif /* _BASE64_H_ */