49 #ifndef B64_INCL_B64_H_B64 50 #define B64_INCL_B64_H_B64 56 #ifndef B64_DOCUMENTATION_SKIP_SECTION 57 # define B64_VER_B64_H_B64_MAJOR 1 58 # define B64_VER_B64_H_B64_MINOR 5 59 # define B64_VER_B64_H_B64_REVISION 4 60 # define B64_VER_B64_H_B64_EDIT 28 79 #ifndef B64_DOCUMENTATION_SKIP_SECTION 80 # define B64_VER_1_0_1 0x01000100 81 # define B64_VER_1_0_2 0x01000200 82 # define B64_VER_1_0_3 0x01000300 83 # define B64_VER_1_1_1 0x01010100 84 # define B64_VER_1_1_2 0x01010200 85 # define B64_VER_1_1_3 0x01010300 86 # define B64_VER_1_2_1 0x01020100 87 # define B64_VER_1_2_2 0x01020200 88 # define B64_VER_1_2_3 0x01020300 89 # define B64_VER_1_2_4 0x01020400 90 # define B64_VER_1_2_5 0x01020500 91 # define B64_VER_1_2_6 0x01020600 92 # define B64_VER_1_2_7 0x01020700 93 # define B64_VER_1_3_1 0x010301ff 94 # define B64_VER_1_3_2 0x010302ff 95 # define B64_VER_1_3_3 0x010303ff 96 # define B64_VER_1_3_4 0x010304ff 98 # define B64_VER B64_VER_1_3_4 100 # define B64_VER 0x010304ff 103 #define B64_VER_MAJOR 1 104 #define B64_VER_MINOR 3 105 #define B64_VER_REVISION 4 117 #if !defined(B64_NO_NAMESPACE) && \ 118 !defined(__cplusplus) 119 # define B64_NO_NAMESPACE 123 # undef B64_NAMESPACE 126 #ifdef B64_NAMESPACE_QUALIFIER 127 # undef B64_NAMESPACE_QUALIFIER 131 #ifndef B64_NO_NAMESPACE 133 # ifdef B64_CUSTOM_NAMESPACE 134 # define B64_NAMESPACE B64_CUSTOM_NAMESPACE 136 # define B64_NAMESPACE b64 139 # if defined(B64_CUSTOM_NAMESPACE) && \ 140 defined(B64_CUSTOM_NAMESPACE_QUALIFIER) 141 # define B64_NAMESPACE_QUALIFIER B64_CUSTOM_NAMESPACE_QUALIFIER 143 # define B64_NAMESPACE_QUALIFIER ::B64_NAMESPACE 155 namespace B64_NAMESPACE
168 , B64_RC_INSUFFICIENT_BUFFER = 1
169 , B64_RC_TRUNCATED_INPUT = 2
170 , B64_RC_DATA_ERROR = 3
171 #ifndef B64_DOCUMENTATION_SKIP_SECTION 177 typedef enum B64_RC B64_RC;
184 B64_F_LINE_LEN_USE_PARAM = 0x0000
185 , B64_F_LINE_LEN_INFINITE = 0x0001
186 , B64_F_LINE_LEN_64 = 0x0002
187 , B64_F_LINE_LEN_76 = 0x0003
188 , B64_F_LINE_LEN_MASK = 0x000f
189 , B64_F_STOP_ON_NOTHING = 0x0000
190 , B64_F_STOP_ON_UNKNOWN_CHAR = 0x0100
191 , B64_F_STOP_ON_UNEXPECTED_WS = 0x0200
192 , B64_F_STOP_ON_BAD_CHAR = 0x0300
196 typedef enum B64_FLAGS B64_FLAGS;
230 ORTP_PUBLIC
size_t b64_encode(
void const *src,
size_t srcSize,
char *dest,
size_t destLen);
301 ORTP_PUBLIC
size_t b64_decode(
char const *src,
size_t srcLen,
void *dest,
size_t destSize);
348 ,
char const **badChar
375 #ifndef B64_NO_NAMESPACE 378 # ifndef B64_DOCUMENTATION_SKIP_SECTION 383 inline char const *c_str_data_a( B64_NAMESPACE_QUALIFIER::B64_RC code)
387 inline char const *c_str_data( B64_NAMESPACE_QUALIFIER::B64_RC code)
392 inline size_t c_str_len_a( B64_NAMESPACE_QUALIFIER::B64_RC code)
396 inline size_t c_str_len( B64_NAMESPACE_QUALIFIER::B64_RC code)
401 inline char const *c_str_ptr_a( B64_NAMESPACE_QUALIFIER::B64_RC code)
405 inline char const *c_str_ptr( B64_NAMESPACE_QUALIFIER::B64_RC code)
size_t b64_encode2(void const *src, size_t srcSize, char *dest, size_t destLen, unsigned flags, int lineLen, B64_RC *rc)
Encodes a block of binary data into Base-64.
Definition: b64.c:433
size_t b64_getErrorStringLength(B64_RC code)
Returns the length of the textual description of the error.
Definition: b64.c:600
size_t b64_encode(void const *src, size_t srcSize, char *dest, size_t destLen)
Encodes a block of binary data into Base-64.
Definition: b64.c:423
char const * b64_getErrorString(B64_RC code)
Returns the textual description of the error.
Definition: b64.c:595
size_t b64_decode(char const *src, size_t srcLen, void *dest, size_t destSize)
Decodes a sequence of Base-64 into a block of binary data.
Definition: b64.c:477
size_t b64_decode2(char const *src, size_t srcLen, void *dest, size_t destSize, unsigned flags, char const **badChar, B64_RC *rc)
Decodes a sequence of Base-64 into a block of binary data.
Definition: b64.c:488