/simpletypesystem/trunk

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/simpletypesystem/trunk
126.1.1 by Gustav Hartvigsson
* Using
1
#pragma once
89 by Gustav Hartvigsson
* Started working on Threads
2
3
#include "defs.h"
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
4
#include "utils.h"
89 by Gustav Hartvigsson
* Started working on Threads
5
110 by Gustav Hartvigsson
* added S_ prifix to my macros. I should not be a scrub.
6
S_BEGIN_DECLS
89 by Gustav Hartvigsson
* Started working on Threads
7
8
/**
9
 * @file
92 by Gustav Hartvigsson
* Woops.
10
 * @defgroup BaseN BaseN
11
 * @addtogroup BaseN
89 by Gustav Hartvigsson
* Started working on Threads
12
 * @{
13
 * https://tools.ietf.org/html/rfc4648
14
 */
15
16
/**
17
 * Encode a Byte array to a Base16 string.
18
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
19
S_EXPORTED
89 by Gustav Hartvigsson
* Started working on Threads
20
schar *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
21
s_base_16_enc (const sbyte * input_data,
100 by Gustav Hartvigsson
* Fixed README.
22
               size_t in_len,
23
               size_t * out_len);
89 by Gustav Hartvigsson
* Started working on Threads
24
25
/**
26
 * Decode a base16 encoded string into a Byte array.
27
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
28
S_EXPORTED
89 by Gustav Hartvigsson
* Started working on Threads
29
sbyte *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
30
s_base_16_dec (const schar * base16_str,
100 by Gustav Hartvigsson
* Fixed README.
31
               size_t in_len,
32
               size_t * out_len);
89 by Gustav Hartvigsson
* Started working on Threads
33
34
/**
35
 * Encode a Byte array to a Base16 string.
36
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
37
S_EXPORTED
89 by Gustav Hartvigsson
* Started working on Threads
38
schar *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
39
s_base_32_enc (const sbyte * input_data,
100 by Gustav Hartvigsson
* Fixed README.
40
               size_t in_len,
41
               size_t * out_len);
89 by Gustav Hartvigsson
* Started working on Threads
42
43
/**
90 by Gustav Hartvigsson
* Macros were wrong.
44
 * Decode a base32 encoded string into a Byte array.
89 by Gustav Hartvigsson
* Started working on Threads
45
 */
46
sbyte *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
47
s_base_32_dec (const schar * base32_str,
100 by Gustav Hartvigsson
* Fixed README.
48
               size_t in_len,
49
               size_t * out_len);
89 by Gustav Hartvigsson
* Started working on Threads
50
51
/**
90 by Gustav Hartvigsson
* Macros were wrong.
52
 * Encode a Byte array to a Base32 Hex (Extended hex) string.
89 by Gustav Hartvigsson
* Started working on Threads
53
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
54
S_EXPORTED
89 by Gustav Hartvigsson
* Started working on Threads
55
schar *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
56
s_base_32_hex_enc (const sbyte * input_data,
100 by Gustav Hartvigsson
* Fixed README.
57
                   size_t in_len,
58
                   size_t * out_len);
89 by Gustav Hartvigsson
* Started working on Threads
59
60
/**
90 by Gustav Hartvigsson
* Macros were wrong.
61
 * Decode a base32 Hex (Extended hex) encoded string into a Byte array.
89 by Gustav Hartvigsson
* Started working on Threads
62
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
63
S_EXPORTED
89 by Gustav Hartvigsson
* Started working on Threads
64
sbyte *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
65
s_base_32_hex_dec (const schar * base32_str,
100 by Gustav Hartvigsson
* Fixed README.
66
                   size_t in_len,
67
                   size_t * out_len);
89 by Gustav Hartvigsson
* Started working on Threads
68
69
/**
90 by Gustav Hartvigsson
* Macros were wrong.
70
 * Encode a Byte array to a Base64 string.
89 by Gustav Hartvigsson
* Started working on Threads
71
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
72
S_EXPORTED
89 by Gustav Hartvigsson
* Started working on Threads
73
schar *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
74
s_base_64_enc (const sbyte * input_data,
100 by Gustav Hartvigsson
* Fixed README.
75
               size_t in_len,
76
               size_t * out_len);
89 by Gustav Hartvigsson
* Started working on Threads
77
78
/**
90 by Gustav Hartvigsson
* Macros were wrong.
79
 * Decode a base64 encoded string into a Byte array.
80
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
81
S_EXPORTED
90 by Gustav Hartvigsson
* Macros were wrong.
82
sbyte *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
83
s_base_64_dec (const schar * base64_str,
100 by Gustav Hartvigsson
* Fixed README.
84
               size_t in_len,
85
               size_t * out_len);
90 by Gustav Hartvigsson
* Macros were wrong.
86
87
/**
88
 * Encode a byte array into a URI safe Base64 string.
89
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
90
S_EXPORTED
90 by Gustav Hartvigsson
* Macros were wrong.
91
schar *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
92
s_base_64_safe_enc (const sbyte * input_data,
100 by Gustav Hartvigsson
* Fixed README.
93
                    size_t in_len,
94
                    size_t * out_len);
90 by Gustav Hartvigsson
* Macros were wrong.
95
96
/**
97
 * Decode a URI safe Base64 string into a byte array.
98
 */
119 by Gustav Hartvigsson
* added S_EXPERTED to public functions.
99
S_EXPORTED
90 by Gustav Hartvigsson
* Macros were wrong.
100
sbyte *
138 by Gustav Hartvigsson
* Fixed s_base_16_enc
101
s_base_64_safe_dec (const schar * base64_str,
100 by Gustav Hartvigsson
* Fixed README.
102
                    size_t in_len,
103
                    size_t * out_len);
90 by Gustav Hartvigsson
* Macros were wrong.
104
105
89 by Gustav Hartvigsson
* Started working on Threads
106
107
/**
108
 * @}
109
 */
110
110 by Gustav Hartvigsson
* added S_ prifix to my macros. I should not be a scrub.
111
S_END_DECLS