1Test case mbedtls_base64_encode #1 buffer just right
2mbedtls_base64_encode:"":"":0:0
3
4Test case mbedtls_base64_encode #2 buffer just right
5mbedtls_base64_encode:"f":"Zg==":5:0
6
7Test case mbedtls_base64_encode #2 buffer too small
8mbedtls_base64_encode:"f":"Zg==":4:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
9
10Test case mbedtls_base64_encode #3 buffer just right
11mbedtls_base64_encode:"fo":"Zm8=":5:0
12
13Test case mbedtls_base64_encode #3 buffer too small
14mbedtls_base64_encode:"fo":"Zm8=":4:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
15
16Test case mbedtls_base64_encode #4 buffer just right
17mbedtls_base64_encode:"foo":"Zm9v":5:0
18
19Test case mbedtls_base64_encode #4 buffer too small
20mbedtls_base64_encode:"foo":"Zm9v":4:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
21
22Test case mbedtls_base64_encode #5 buffer just right
23mbedtls_base64_encode:"foob":"Zm9vYg==":9:0
24
25Test case mbedtls_base64_encode #5 buffer too small
26mbedtls_base64_encode:"foob":"Zm9vYg==":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
27
28Test case mbedtls_base64_encode #6 buffer just right
29mbedtls_base64_encode:"fooba":"Zm9vYmE=":9:0
30
31Test case mbedtls_base64_encode #6 buffer too small
32mbedtls_base64_encode:"fooba":"Zm9vYmE=":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
33
34Test case mbedtls_base64_encode #7 buffer just right
35mbedtls_base64_encode:"foobar":"Zm9vYmFy":9:0
36
37Test case mbedtls_base64_encode #7 buffer too small
38mbedtls_base64_encode:"foobar":"Zm9vYmFy":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
39
40Test case mbedtls_base64_decode #1
41mbedtls_base64_decode:"":"":0
42
43Test case mbedtls_base64_decode #2
44mbedtls_base64_decode:"Zg==":"f":0
45
46Test case mbedtls_base64_decode #3
47mbedtls_base64_decode:"Zm8=":"fo":0
48
49Test case mbedtls_base64_decode #4
50mbedtls_base64_decode:"Zm9v":"foo":0
51
52Test case mbedtls_base64_decode #5
53mbedtls_base64_decode:"Zm9vYg==":"foob":0
54
55Test case mbedtls_base64_decode #6
56mbedtls_base64_decode:"Zm9vYmE=":"fooba":0
57
58Test case mbedtls_base64_decode #7
59mbedtls_base64_decode:"Zm9vYmFy":"foobar":0
60
61Base64 decode (Illegal character)
62mbedtls_base64_decode:"zm#=":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
63
64Base64 decode (Too much equal signs)
65mbedtls_base64_decode:"zm===":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
66
67Base64 decode (Invalid char after equal signs)
68mbedtls_base64_decode:"zm=masd":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
69
70Base64 decode (Space inside string)
71mbedtls_base64_decode:"zm masd":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
72
73Base64 decode "Zm9vYmFy" (no newline nor '\0' at end)
74base64_decode_hex_src:"5a6d3976596d4679":"foobar":0
75
76Base64 decode "Zm9vYmFy\n" (LF at end)
77base64_decode_hex_src:"5a6d3976596d46790a":"foobar":0
78
79Base64 decode "Zm9vYmFy\r\n" (CRLF at end)
80base64_decode_hex_src:"5a6d3976596d46790d0a":"foobar":0
81
82Base64 decode "Zm9vYmFy\r" (CR at end)
83base64_decode_hex_src:"5a6d3976596d46790d":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
84
85Base64 decode "Zm9vYmFy " (SP at end)
86base64_decode_hex_src:"5a6d3976596d467920":"foobar":0
87
88Base64 decode "Zm9vYmFy \n" (SP+LF at end)
89base64_decode_hex_src:"5a6d3976596d4679200a":"foobar":0
90
91Base64 decode "Zm9vYmFy \r\n" (SP+CRLF at end)
92base64_decode_hex_src:"5a6d3976596d4679200d0a":"foobar":0
93
94Base64 decode "Zm9vYmFy \r" (SP+CR at end)
95base64_decode_hex_src:"5a6d3976596d4679200d":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
96
97Base64 decode "Zm9vYmFy  " (2SP at end)
98base64_decode_hex_src:"5a6d3976596d46792020":"foobar":0
99
100Base64 decode "Zm9vYmFy  \n" (2SP+LF at end)
101base64_decode_hex_src:"5a6d3976596d467920200a":"foobar":0
102
103Base64 decode "Zm9vYmFy  \r\n" (2SP+CRLF at end)
104base64_decode_hex_src:"5a6d3976596d467920200d0a":"foobar":0
105
106Base64 decode "Zm9vYmFy  \r" (2SP+CR at end)
107base64_decode_hex_src:"5a6d3976596d467920200d":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
108
109Base64 decode "Zm9vYmF\ny" (LF inside)
110base64_decode_hex_src:"5a6d3976596d460a79":"foobar":0
111
112Base64 decode "Zm9vYmF\ry" (CRLF inside)
113base64_decode_hex_src:"5a6d3976596d460d0a79":"foobar":0
114
115Base64 decode "Zm9vYmF\ry" (CR inside)
116base64_decode_hex_src:"5a6d3976596d460d79":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
117
118Base64 decode "Zm9vYmF y" (SP inside)
119base64_decode_hex_src:"5a6d3976596d462079":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
120
121Base64 decode "Zm9vYmF \ny" (SP+LF inside)
122base64_decode_hex_src:"5a6d3976596d46200a79":"foobar":0
123
124Base64 decode "Zm9vYmF \ry" (SP+CRLF inside)
125base64_decode_hex_src:"5a6d3976596d46200d0a79":"foobar":0
126
127Base64 decode "Zm9vYmF \ry" (SP+CR inside)
128base64_decode_hex_src:"5a6d3976596d46200d79":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
129
130Base64 decode "Zm9vYmF  y" (2SP inside)
131base64_decode_hex_src:"5a6d3976596d46202079":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
132
133Base64 decode "Zm9vYmF  \ny" (2SP+LF inside)
134base64_decode_hex_src:"5a6d3976596d4620200a79":"foobar":0
135
136Base64 decode "Zm9vYmF  \ry" (2SP+CRLF inside)
137base64_decode_hex_src:"5a6d3976596d4620200d0a79":"foobar":0
138
139Base64 decode "Zm9vYmF  \ry" (2SP+CR inside)
140base64_decode_hex_src:"5a6d3976596d4620200d79":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
141
142Base64 encode hex #1
143base64_encode_hex:"010203040506070809":"AQIDBAUGBwgJ":13:0
144
145Base64 encode hex #2 (buffer too small)
146base64_encode_hex:"010203040506070809":"AQIDBAUGBwgJ":12:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
147
148Base64 encode hex #3
149base64_encode_hex:"0102030405060708":"AQIDBAUGBwg=":13:0
150
151Base64 encode hex #4
152base64_encode_hex:"01020304050607":"AQIDBAUGBw==":13:0
153
154Base64 decode hex #1
155base64_decode_hex:"AQIDBAUGBwgJ":"010203040506070809":9:0
156
157Base64 decode hex #2 (buffer too small)
158base64_decode_hex:"AQIDBAUGBwgJ":"010203040506070809":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
159
160Base64 decode hex #3
161base64_decode_hex:"AQIDBAUGBwg=":"0102030405060708":8:0
162
163Base64 decode hex #4
164base64_decode_hex:"AQIDBAUGBw==":"01020304050607":7:0
165
166Base64 decode hex #5 (buffer too small)
167base64_decode_hex:"AQIDBAUGBw==":"01020304050607":6:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
168
169Base64 Selftest
170depends_on:MBEDTLS_SELF_TEST
171base64_selftest:
172
173