blob: 117adc585c63c35b6e9a711a0a0451688766bb7c [file] [log] [blame]
Paul Bakker367dae42009-06-28 21:50:27 +00001Test case base64_encode #1
Paul Bakker5946fd92009-07-11 15:29:30 +00002base64_encode:"":"":1000:0
Paul Bakker367dae42009-06-28 21:50:27 +00003
4Test case base64_encode #2
Paul Bakker5946fd92009-07-11 15:29:30 +00005base64_encode:"f":"Zg==":1000:0
Paul Bakker367dae42009-06-28 21:50:27 +00006
7Test case base64_encode #3
Paul Bakker5946fd92009-07-11 15:29:30 +00008base64_encode:"fo":"Zm8=":1000:0
Paul Bakker367dae42009-06-28 21:50:27 +00009
10Test case base64_encode #4
Paul Bakker5946fd92009-07-11 15:29:30 +000011base64_encode:"foo":"Zm9v":1000:0
Paul Bakker367dae42009-06-28 21:50:27 +000012
13Test case base64_encode #5
Paul Bakker5946fd92009-07-11 15:29:30 +000014base64_encode:"foob":"Zm9vYg==":1000:0
Paul Bakker367dae42009-06-28 21:50:27 +000015
16Test case base64_encode #6
Paul Bakker5946fd92009-07-11 15:29:30 +000017base64_encode:"fooba":"Zm9vYmE=":1000:0
Paul Bakker367dae42009-06-28 21:50:27 +000018
19Test case base64_encode #7
Paul Bakker5946fd92009-07-11 15:29:30 +000020base64_encode:"foobar":"Zm9vYmFy":1000:0
Paul Bakker367dae42009-06-28 21:50:27 +000021
22Test case base64_decode #1
Paul Bakker5946fd92009-07-11 15:29:30 +000023base64_decode:"":"":0
Paul Bakker367dae42009-06-28 21:50:27 +000024
25Test case base64_decode #2
Paul Bakker5946fd92009-07-11 15:29:30 +000026base64_decode:"Zg==":"f":0
Paul Bakker367dae42009-06-28 21:50:27 +000027
28Test case base64_decode #3
Paul Bakker5946fd92009-07-11 15:29:30 +000029base64_decode:"Zm8=":"fo":0
Paul Bakker367dae42009-06-28 21:50:27 +000030
31Test case base64_decode #4
Paul Bakker5946fd92009-07-11 15:29:30 +000032base64_decode:"Zm9v":"foo":0
Paul Bakker367dae42009-06-28 21:50:27 +000033
34Test case base64_decode #5
Paul Bakker5946fd92009-07-11 15:29:30 +000035base64_decode:"Zm9vYg==":"foob":0
Paul Bakker367dae42009-06-28 21:50:27 +000036
37Test case base64_decode #6
Paul Bakker5946fd92009-07-11 15:29:30 +000038base64_decode:"Zm9vYmE=":"fooba":0
Paul Bakker367dae42009-06-28 21:50:27 +000039
40Test case base64_decode #7
Paul Bakker5946fd92009-07-11 15:29:30 +000041base64_decode:"Zm9vYmFy":"foobar":0
42
43Base64 encode (buffer size just right)
44base64_encode:"foobar":"Zm9vYmFy":9:0
45
46Base64 encode (buffer size too small)
47base64_encode:"foobar":"":8:POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL
48
49Base64 decode (Illegal character)
50base64_decode:"zm#=":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
51
52Base64 decode (Too much equal signs)
53base64_decode:"zm===":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
54
55Base64 decode (Invalid char after equal signs)
56base64_decode:"zm=masd":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
Paul Bakker3d360822009-07-05 11:29:38 +000057
Manuel Pégourié-Gonnard64938c62014-10-15 21:45:39 +020058Base64 decode (Space inside string)
59base64_decode:"zm masd":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
60
61Base64 decode "Zm9vYmFy" (no newline nor '\0' at end)
62base64_decode_hex_src:"5a6d3976596d4679":"foobar":0
63
64Base64 decode "Zm9vYmFy\n" (LF at end)
65base64_decode_hex_src:"5a6d3976596d46790a":"foobar":0
66
67Base64 decode "Zm9vYmFy\r\n" (CRLF at end)
68base64_decode_hex_src:"5a6d3976596d46790d0a":"foobar":0
69
70Base64 decode "Zm9vYmFy\r" (CR at end)
71base64_decode_hex_src:"5a6d3976596d46790d":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
72
73Base64 decode "Zm9vYmFy " (SP at end)
74base64_decode_hex_src:"5a6d3976596d467920":"foobar":0
75
76Base64 decode "Zm9vYmFy \n" (SP+LF at end)
77base64_decode_hex_src:"5a6d3976596d4679200a":"foobar":0
78
79Base64 decode "Zm9vYmFy \r\n" (SP+CRLF at end)
80base64_decode_hex_src:"5a6d3976596d4679200d0a":"foobar":0
81
82Base64 decode "Zm9vYmFy \r" (SP+CR at end)
83base64_decode_hex_src:"5a6d3976596d4679200d":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
84
85Base64 decode "Zm9vYmFy " (2SP at end)
86base64_decode_hex_src:"5a6d3976596d46792020":"foobar":0
87
88Base64 decode "Zm9vYmFy \n" (2SP+LF at end)
89base64_decode_hex_src:"5a6d3976596d467920200a":"foobar":0
90
91Base64 decode "Zm9vYmFy \r\n" (2SP+CRLF at end)
92base64_decode_hex_src:"5a6d3976596d467920200d0a":"foobar":0
93
94Base64 decode "Zm9vYmFy \r" (2SP+CR at end)
95base64_decode_hex_src:"5a6d3976596d467920200d":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
96
97Base64 decode "Zm9vYmF\ny" (LF inside)
98base64_decode_hex_src:"5a6d3976596d460a79":"foobar":0
99
100Base64 decode "Zm9vYmF\ry" (CRLF inside)
101base64_decode_hex_src:"5a6d3976596d460d0a79":"foobar":0
102
103Base64 decode "Zm9vYmF\ry" (CR inside)
104base64_decode_hex_src:"5a6d3976596d460d79":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
105
106Base64 decode "Zm9vYmF y" (SP inside)
107base64_decode_hex_src:"5a6d3976596d462079":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
108
109Base64 decode "Zm9vYmF \ny" (SP+LF inside)
110base64_decode_hex_src:"5a6d3976596d46200a79":"foobar":0
111
112Base64 decode "Zm9vYmF \ry" (SP+CRLF inside)
113base64_decode_hex_src:"5a6d3976596d46200d0a79":"foobar":0
114
115Base64 decode "Zm9vYmF \ry" (SP+CR inside)
116base64_decode_hex_src:"5a6d3976596d46200d79":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
117
118Base64 decode "Zm9vYmF y" (2SP inside)
119base64_decode_hex_src:"5a6d3976596d46202079":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
120
121Base64 decode "Zm9vYmF \ny" (2SP+LF inside)
122base64_decode_hex_src:"5a6d3976596d4620200a79":"foobar":0
123
124Base64 decode "Zm9vYmF \ry" (2SP+CRLF inside)
125base64_decode_hex_src:"5a6d3976596d4620200d0a79":"foobar":0
126
127Base64 decode "Zm9vYmF \ry" (2SP+CR inside)
128base64_decode_hex_src:"5a6d3976596d4620200d79":"":POLARSSL_ERR_BASE64_INVALID_CHARACTER
129
Paul Bakkerd5983182014-07-04 13:50:31 +0200130Base64 encode hex #1
131base64_encode_hex:"010203040506070809":"AQIDBAUGBwgJ":13:0
132
133Base64 encode hex #2 (buffer too small)
134base64_encode_hex:"010203040506070809":"AQIDBAUGBwgJ":12:POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL
135
136Base64 encode hex #3
137base64_encode_hex:"0102030405060708":"AQIDBAUGBwg=":13:0
138
139Base64 encode hex #4
140base64_encode_hex:"01020304050607":"AQIDBAUGBw==":13:0
141
142Base64 decode hex #1
143base64_decode_hex:"AQIDBAUGBwgJ":"010203040506070809":9:0
144
145Base64 decode hex #2 (buffer too small)
146base64_decode_hex:"AQIDBAUGBwgJ":"010203040506070809":8:POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL
147
148Base64 decode hex #3
149base64_decode_hex:"AQIDBAUGBwg=":"0102030405060708":8:0
150
151Base64 decode hex #4
152base64_decode_hex:"AQIDBAUGBw==":"01020304050607":7:0
153
154Base64 decode hex #5 (buffer too small)
155base64_decode_hex:"AQIDBAUGBw==":"01020304050607":6:POLARSSL_ERR_BASE64_BUFFER_TOO_SMALL
156
Paul Bakker3d360822009-07-05 11:29:38 +0000157Base64 Selftest
Paul Bakker335db3f2011-04-25 15:28:35 +0000158depends_on:POLARSSL_SELF_TEST
Paul Bakker3d360822009-07-05 11:29:38 +0000159base64_selftest:
Manuel Pégourié-Gonnard64938c62014-10-15 21:45:39 +0200160