1#ifndef _BASE64_H_ 2#define _BASE64_H_ 3 4#include "buffer.h" 5 6typedef enum { 7 BASE64_STANDARD, 8 BASE64_URL, 9} base64_charset; 10 11unsigned char* buffer_append_base64_decode(buffer *out, const char* in, size_t in_length, base64_charset charset); 12 13size_t li_to_base64_no_padding(char* out, size_t out_length, const unsigned char* in, size_t in_length, base64_charset charset); 14size_t li_to_base64(char* out, size_t out_length, const unsigned char* in, size_t in_length, base64_charset charset); 15 16char* buffer_append_base64_encode_no_padding(buffer *out, const unsigned char* in, size_t in_length, base64_charset charset); 17char* buffer_append_base64_encode(buffer *out, const unsigned char* in, size_t in_length, base64_charset charset); 18 19#endif 20