1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
|
---|
2 | <html>
|
---|
3 | <head>
|
---|
4 | <meta name="GENERATOR" content="PasDoc 0.9.0">
|
---|
5 | <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
|
---|
6 | <title>synacode</title>
|
---|
7 | <link rel="StyleSheet" type="text/css" href="pasdoc.css">
|
---|
8 | </head>
|
---|
9 | <body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#FF0000">
|
---|
10 | <h1 class="unit">Unit synacode</h1>
|
---|
11 | <table class="sections">
|
---|
12 | <tr>
|
---|
13 | <td><a class="section" href="#@Description">Description</a></td><td><a class="section" href="#@Uses">uses</a></td><td>Classes, Interfaces, Objects and Records</td><td><a class="section" href="#@FuncsProcs">Functions and Procedures</a></td><td><a class="section" href="#@Types">Types</a></td><td><a class="section" href="#@Constants">Constants</a></td><td>Variables</td></tr></table>
|
---|
14 | <a name="@Description"></a><h2 class="description">Description</h2>
|
---|
15 | <p>
|
---|
16 | Various encoding and decoding support</p>
|
---|
17 | <a name="@Uses"></a><h2 class="uses">uses</h2>
|
---|
18 | <ul class="useslist"><li>SysUtils</li></ul><h2 class="overview">Overview</h2>
|
---|
19 | <a name="@FuncsProcs"></a><h3 class="summary">Functions and Procedures</h3>
|
---|
20 | <table class="summary">
|
---|
21 | <tr class="list">
|
---|
22 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeTriplet">DecodeTriplet</a></b>(const Value: AnsiString; Delimiter: AnsiChar): AnsiString;</code></td>
|
---|
23 | </tr>
|
---|
24 | <tr class="list2">
|
---|
25 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeQuotedPrintable">DecodeQuotedPrintable</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
26 | </tr>
|
---|
27 | <tr class="list">
|
---|
28 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeURL">DecodeURL</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
29 | </tr>
|
---|
30 | <tr class="list2">
|
---|
31 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeTriplet">EncodeTriplet</a></b>(const Value: AnsiString; Delimiter: AnsiChar; Specials: <a href="synacode.html#TSpecials">TSpecials</a>): AnsiString;</code></td>
|
---|
32 | </tr>
|
---|
33 | <tr class="list">
|
---|
34 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeQuotedPrintable">EncodeQuotedPrintable</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
35 | </tr>
|
---|
36 | <tr class="list2">
|
---|
37 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeSafeQuotedPrintable">EncodeSafeQuotedPrintable</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
38 | </tr>
|
---|
39 | <tr class="list">
|
---|
40 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeURLElement">EncodeURLElement</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
41 | </tr>
|
---|
42 | <tr class="list2">
|
---|
43 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeURL">EncodeURL</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
44 | </tr>
|
---|
45 | <tr class="list">
|
---|
46 | <td class="itemcode"><code>function <b><a href="synacode.html#Decode4to3">Decode4to3</a></b>(const Value, Table: AnsiString): AnsiString;</code></td>
|
---|
47 | </tr>
|
---|
48 | <tr class="list2">
|
---|
49 | <td class="itemcode"><code>function <b><a href="synacode.html#Decode4to3Ex">Decode4to3Ex</a></b>(const Value, Table: AnsiString): AnsiString;</code></td>
|
---|
50 | </tr>
|
---|
51 | <tr class="list">
|
---|
52 | <td class="itemcode"><code>function <b><a href="synacode.html#Encode3to4">Encode3to4</a></b>(const Value, Table: AnsiString): AnsiString;</code></td>
|
---|
53 | </tr>
|
---|
54 | <tr class="list2">
|
---|
55 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeBase64">DecodeBase64</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
56 | </tr>
|
---|
57 | <tr class="list">
|
---|
58 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeBase64">EncodeBase64</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
59 | </tr>
|
---|
60 | <tr class="list2">
|
---|
61 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeBase64mod">DecodeBase64mod</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
62 | </tr>
|
---|
63 | <tr class="list">
|
---|
64 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeBase64mod">EncodeBase64mod</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
65 | </tr>
|
---|
66 | <tr class="list2">
|
---|
67 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeUU">DecodeUU</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
68 | </tr>
|
---|
69 | <tr class="list">
|
---|
70 | <td class="itemcode"><code>function <b><a href="synacode.html#EncodeUU">EncodeUU</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
71 | </tr>
|
---|
72 | <tr class="list2">
|
---|
73 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeXX">DecodeXX</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
74 | </tr>
|
---|
75 | <tr class="list">
|
---|
76 | <td class="itemcode"><code>function <b><a href="synacode.html#DecodeYEnc">DecodeYEnc</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
77 | </tr>
|
---|
78 | <tr class="list2">
|
---|
79 | <td class="itemcode"><code>function <b><a href="synacode.html#UpdateCrc32">UpdateCrc32</a></b>(Value: Byte; Crc32: Integer): Integer;</code></td>
|
---|
80 | </tr>
|
---|
81 | <tr class="list">
|
---|
82 | <td class="itemcode"><code>function <b><a href="synacode.html#Crc32">Crc32</a></b>(const Value: AnsiString): Integer;</code></td>
|
---|
83 | </tr>
|
---|
84 | <tr class="list2">
|
---|
85 | <td class="itemcode"><code>function <b><a href="synacode.html#UpdateCrc16">UpdateCrc16</a></b>(Value: Byte; Crc16: Word): Word;</code></td>
|
---|
86 | </tr>
|
---|
87 | <tr class="list">
|
---|
88 | <td class="itemcode"><code>function <b><a href="synacode.html#Crc16">Crc16</a></b>(const Value: AnsiString): Word;</code></td>
|
---|
89 | </tr>
|
---|
90 | <tr class="list2">
|
---|
91 | <td class="itemcode"><code>function <b><a href="synacode.html#MD5">MD5</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
92 | </tr>
|
---|
93 | <tr class="list">
|
---|
94 | <td class="itemcode"><code>function <b><a href="synacode.html#HMAC_MD5">HMAC_MD5</a></b>(Text, Key: AnsiString): AnsiString;</code></td>
|
---|
95 | </tr>
|
---|
96 | <tr class="list2">
|
---|
97 | <td class="itemcode"><code>function <b><a href="synacode.html#MD5LongHash">MD5LongHash</a></b>(const Value: AnsiString; Len: integer): AnsiString;</code></td>
|
---|
98 | </tr>
|
---|
99 | <tr class="list">
|
---|
100 | <td class="itemcode"><code>function <b><a href="synacode.html#SHA1">SHA1</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
101 | </tr>
|
---|
102 | <tr class="list2">
|
---|
103 | <td class="itemcode"><code>function <b><a href="synacode.html#HMAC_SHA1">HMAC_SHA1</a></b>(Text, Key: AnsiString): AnsiString;</code></td>
|
---|
104 | </tr>
|
---|
105 | <tr class="list">
|
---|
106 | <td class="itemcode"><code>function <b><a href="synacode.html#SHA1LongHash">SHA1LongHash</a></b>(const Value: AnsiString; Len: integer): AnsiString;</code></td>
|
---|
107 | </tr>
|
---|
108 | <tr class="list2">
|
---|
109 | <td class="itemcode"><code>function <b><a href="synacode.html#MD4">MD4</a></b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
110 | </tr>
|
---|
111 | </table>
|
---|
112 | <a name="@Types"></a><h3 class="summary">Types</h3>
|
---|
113 | <table class="summary">
|
---|
114 | <tr class="list">
|
---|
115 | <td class="itemcode"><code><b><a href="synacode.html#TSpecials">TSpecials</a></b> = set of AnsiChar;</code></td>
|
---|
116 | </tr>
|
---|
117 | </table>
|
---|
118 | <a name="@Constants"></a><h3 class="summary">Constants</h3>
|
---|
119 | <table class="summary">
|
---|
120 | <tr class="list">
|
---|
121 | <td class="itemcode"><code><b><a href="synacode.html#SpecialChar">SpecialChar</a></b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
122 | ['=', '(', ')', '[', ']', '<', '>', ':', ';', ',', '@', '/', '?', '\',
|
---|
123 | '"', '_'];</code></td>
|
---|
124 | </tr>
|
---|
125 | <tr class="list2">
|
---|
126 | <td class="itemcode"><code><b><a href="synacode.html#NonAsciiChar">NonAsciiChar</a></b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
127 | [#0..#31, #127..#255];</code></td>
|
---|
128 | </tr>
|
---|
129 | <tr class="list">
|
---|
130 | <td class="itemcode"><code><b><a href="synacode.html#URLFullSpecialChar">URLFullSpecialChar</a></b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
131 | [';', '/', '?', ':', '@', '=', '&', '#', '+'];</code></td>
|
---|
132 | </tr>
|
---|
133 | <tr class="list2">
|
---|
134 | <td class="itemcode"><code><b><a href="synacode.html#URLSpecialChar">URLSpecialChar</a></b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
135 | [#$00..#$20, '_', '<', '>', '"', '%', '{', '}', '|', '\', 'ˆ', '˜', '[', ']',
|
---|
136 | '`', #$7F..#$FF];</code></td>
|
---|
137 | </tr>
|
---|
138 | <tr class="list">
|
---|
139 | <td class="itemcode"><code><b><a href="synacode.html#TableBase64">TableBase64</a></b> =
|
---|
140 | 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';</code></td>
|
---|
141 | </tr>
|
---|
142 | <tr class="list2">
|
---|
143 | <td class="itemcode"><code><b><a href="synacode.html#TableBase64mod">TableBase64mod</a></b> =
|
---|
144 | 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+,=';</code></td>
|
---|
145 | </tr>
|
---|
146 | <tr class="list">
|
---|
147 | <td class="itemcode"><code><b><a href="synacode.html#TableUU">TableUU</a></b> =
|
---|
148 | '`!"#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ_';</code></td>
|
---|
149 | </tr>
|
---|
150 | <tr class="list2">
|
---|
151 | <td class="itemcode"><code><b><a href="synacode.html#TableXX">TableXX</a></b> =
|
---|
152 | '+-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';</code></td>
|
---|
153 | </tr>
|
---|
154 | <tr class="list">
|
---|
155 | <td class="itemcode"><code><b><a href="synacode.html#ReTablebase64">ReTablebase64</a></b> =
|
---|
156 | #$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$3E +#$40
|
---|
157 | +#$40 +#$40 +#$3F +#$34 +#$35 +#$36 +#$37 +#$38 +#$39 +#$3A +#$3B +#$3C
|
---|
158 | +#$3D +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$00 +#$01 +#$02 +#$03
|
---|
159 | +#$04 +#$05 +#$06 +#$07 +#$08 +#$09 +#$0A +#$0B +#$0C +#$0D +#$0E +#$0F
|
---|
160 | +#$10 +#$11 +#$12 +#$13 +#$14 +#$15 +#$16 +#$17 +#$18 +#$19 +#$40 +#$40
|
---|
161 | +#$40 +#$40 +#$40 +#$40 +#$1A +#$1B +#$1C +#$1D +#$1E +#$1F +#$20 +#$21
|
---|
162 | +#$22 +#$23 +#$24 +#$25 +#$26 +#$27 +#$28 +#$29 +#$2A +#$2B +#$2C +#$2D
|
---|
163 | +#$2E +#$2F +#$30 +#$31 +#$32 +#$33 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40;</code></td>
|
---|
164 | </tr>
|
---|
165 | <tr class="list2">
|
---|
166 | <td class="itemcode"><code><b><a href="synacode.html#ReTableUU">ReTableUU</a></b> =
|
---|
167 | #$01 +#$02 +#$03 +#$04 +#$05 +#$06 +#$07 +#$08 +#$09 +#$0A +#$0B +#$0C
|
---|
168 | +#$0D +#$0E +#$0F +#$10 +#$11 +#$12 +#$13 +#$14 +#$15 +#$16 +#$17 +#$18
|
---|
169 | +#$19 +#$1A +#$1B +#$1C +#$1D +#$1E +#$1F +#$20 +#$21 +#$22 +#$23 +#$24
|
---|
170 | +#$25 +#$26 +#$27 +#$28 +#$29 +#$2A +#$2B +#$2C +#$2D +#$2E +#$2F +#$30
|
---|
171 | +#$31 +#$32 +#$33 +#$34 +#$35 +#$36 +#$37 +#$38 +#$39 +#$3A +#$3B +#$3C
|
---|
172 | +#$3D +#$3E +#$3F +#$00 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40
|
---|
173 | +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40
|
---|
174 | +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40;</code></td>
|
---|
175 | </tr>
|
---|
176 | <tr class="list">
|
---|
177 | <td class="itemcode"><code><b><a href="synacode.html#ReTableXX">ReTableXX</a></b> =
|
---|
178 | #$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$00 +#$40
|
---|
179 | +#$01 +#$40 +#$40 +#$02 +#$03 +#$04 +#$05 +#$06 +#$07 +#$08 +#$09 +#$0A
|
---|
180 | +#$0B +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$0C +#$0D +#$0E +#$0F
|
---|
181 | +#$10 +#$11 +#$12 +#$13 +#$14 +#$15 +#$16 +#$17 +#$18 +#$19 +#$1A +#$1B
|
---|
182 | +#$1C +#$1D +#$1E +#$1F +#$20 +#$21 +#$22 +#$23 +#$24 +#$25 +#$40 +#$40
|
---|
183 | +#$40 +#$40 +#$40 +#$40 +#$26 +#$27 +#$28 +#$29 +#$2A +#$2B +#$2C +#$2D
|
---|
184 | +#$2E +#$2F +#$30 +#$31 +#$32 +#$33 +#$34 +#$35 +#$36 +#$37 +#$38 +#$39
|
---|
185 | +#$3A +#$3B +#$3C +#$3D +#$3E +#$3F +#$40 +#$40 +#$40 +#$40 +#$40 +#$40;</code></td>
|
---|
186 | </tr>
|
---|
187 | </table>
|
---|
188 | <h2 class="description">Description</h2>
|
---|
189 | <h3 class="detail">Functions and Procedures</h3>
|
---|
190 | <table class="detail">
|
---|
191 | <tr class="list">
|
---|
192 | <td class="itemcode"><a name="DecodeTriplet"></a><code>function <b>DecodeTriplet</b>(const Value: AnsiString; Delimiter: AnsiChar): AnsiString;</code></td>
|
---|
193 | </tr>
|
---|
194 | </table>
|
---|
195 | <p>
|
---|
196 | Decodes triplet encoding with a given character delimiter. It is used for decoding quoted-printable or URL encoding.</p>
|
---|
197 | <table class="detail">
|
---|
198 | <tr class="list">
|
---|
199 | <td class="itemcode"><a name="DecodeQuotedPrintable"></a><code>function <b>DecodeQuotedPrintable</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
200 | </tr>
|
---|
201 | </table>
|
---|
202 | <p>
|
---|
203 | Decodes a string from quoted printable form. (also decodes triplet sequences like '=7F')</p>
|
---|
204 | <table class="detail">
|
---|
205 | <tr class="list">
|
---|
206 | <td class="itemcode"><a name="DecodeURL"></a><code>function <b>DecodeURL</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
207 | </tr>
|
---|
208 | </table>
|
---|
209 | <p>
|
---|
210 | Decodes a string of URL encoding. (also decodes triplet sequences like '%7F')</p>
|
---|
211 | <table class="detail">
|
---|
212 | <tr class="list">
|
---|
213 | <td class="itemcode"><a name="EncodeTriplet"></a><code>function <b>EncodeTriplet</b>(const Value: AnsiString; Delimiter: AnsiChar; Specials: <a href="synacode.html#TSpecials">TSpecials</a>): AnsiString;</code></td>
|
---|
214 | </tr>
|
---|
215 | </table>
|
---|
216 | <p>
|
---|
217 | Performs triplet encoding with a given character delimiter. Used for encoding quoted-printable or URL encoding.</p>
|
---|
218 | <table class="detail">
|
---|
219 | <tr class="list">
|
---|
220 | <td class="itemcode"><a name="EncodeQuotedPrintable"></a><code>function <b>EncodeQuotedPrintable</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
221 | </tr>
|
---|
222 | </table>
|
---|
223 | <p>
|
---|
224 | Encodes a string to triplet quoted printable form. All <a class="normal" href="synacode.html#NonAsciiChar">NonAsciiChar</a> are encoded.</p>
|
---|
225 | <table class="detail">
|
---|
226 | <tr class="list">
|
---|
227 | <td class="itemcode"><a name="EncodeSafeQuotedPrintable"></a><code>function <b>EncodeSafeQuotedPrintable</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
228 | </tr>
|
---|
229 | </table>
|
---|
230 | <p>
|
---|
231 | Encodes a string to triplet quoted printable form. All <a class="normal" href="synacode.html#NonAsciiChar">NonAsciiChar</a> and <a class="normal" href="synacode.html#SpecialChar">SpecialChar</a> are encoded.</p>
|
---|
232 | <table class="detail">
|
---|
233 | <tr class="list">
|
---|
234 | <td class="itemcode"><a name="EncodeURLElement"></a><code>function <b>EncodeURLElement</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
235 | </tr>
|
---|
236 | </table>
|
---|
237 | <p>
|
---|
238 | Encodes a string to URL format. Used for encoding data from a form field in HTTP, etc. (Encodes all critical characters including characters used as URL delimiters ('/',':', etc.)</p>
|
---|
239 | <table class="detail">
|
---|
240 | <tr class="list">
|
---|
241 | <td class="itemcode"><a name="EncodeURL"></a><code>function <b>EncodeURL</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
242 | </tr>
|
---|
243 | </table>
|
---|
244 | <p>
|
---|
245 | Encodes a string to URL format. Used to encode critical characters in all URLs.</p>
|
---|
246 | <table class="detail">
|
---|
247 | <tr class="list">
|
---|
248 | <td class="itemcode"><a name="Decode4to3"></a><code>function <b>Decode4to3</b>(const Value, Table: AnsiString): AnsiString;</code></td>
|
---|
249 | </tr>
|
---|
250 | </table>
|
---|
251 | <p>
|
---|
252 | Decode 4to3 encoding with given table. If some element is not found in table, first item from table is used. This is good for buggy coded items by Microsoft Outlook. This software sometimes using wrong table for UUcode, where is used ' ' instead '`'.</p>
|
---|
253 | <table class="detail">
|
---|
254 | <tr class="list">
|
---|
255 | <td class="itemcode"><a name="Decode4to3Ex"></a><code>function <b>Decode4to3Ex</b>(const Value, Table: AnsiString): AnsiString;</code></td>
|
---|
256 | </tr>
|
---|
257 | </table>
|
---|
258 | <p>
|
---|
259 | Decode 4to3 encoding with given REVERSE table. Using this function with reverse table is much faster then <a class="normal" href="synacode.html#Decode4to3">Decode4to3</a>. This function is used internally for Base64, UU or XX decoding.</p>
|
---|
260 | <table class="detail">
|
---|
261 | <tr class="list">
|
---|
262 | <td class="itemcode"><a name="Encode3to4"></a><code>function <b>Encode3to4</b>(const Value, Table: AnsiString): AnsiString;</code></td>
|
---|
263 | </tr>
|
---|
264 | </table>
|
---|
265 | <p>
|
---|
266 | Encode by system 3to4 (used by Base64, UU coding, etc) by given table.</p>
|
---|
267 | <table class="detail">
|
---|
268 | <tr class="list">
|
---|
269 | <td class="itemcode"><a name="DecodeBase64"></a><code>function <b>DecodeBase64</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
270 | </tr>
|
---|
271 | </table>
|
---|
272 | <p>
|
---|
273 | Decode string from base64 format.</p>
|
---|
274 | <table class="detail">
|
---|
275 | <tr class="list">
|
---|
276 | <td class="itemcode"><a name="EncodeBase64"></a><code>function <b>EncodeBase64</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
277 | </tr>
|
---|
278 | </table>
|
---|
279 | <p>
|
---|
280 | Encodes a string to base64 format.</p>
|
---|
281 | <table class="detail">
|
---|
282 | <tr class="list">
|
---|
283 | <td class="itemcode"><a name="DecodeBase64mod"></a><code>function <b>DecodeBase64mod</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
284 | </tr>
|
---|
285 | </table>
|
---|
286 | <p>
|
---|
287 | Decode string from modified base64 format. (used in IMAP, for example.)</p>
|
---|
288 | <table class="detail">
|
---|
289 | <tr class="list">
|
---|
290 | <td class="itemcode"><a name="EncodeBase64mod"></a><code>function <b>EncodeBase64mod</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
291 | </tr>
|
---|
292 | </table>
|
---|
293 | <p>
|
---|
294 | Encodes a string to modified base64 format. (used in IMAP, for example.)</p>
|
---|
295 | <table class="detail">
|
---|
296 | <tr class="list">
|
---|
297 | <td class="itemcode"><a name="DecodeUU"></a><code>function <b>DecodeUU</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
298 | </tr>
|
---|
299 | </table>
|
---|
300 | <p>
|
---|
301 | Decodes a string from UUcode format.</p>
|
---|
302 | <table class="detail">
|
---|
303 | <tr class="list">
|
---|
304 | <td class="itemcode"><a name="EncodeUU"></a><code>function <b>EncodeUU</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
305 | </tr>
|
---|
306 | </table>
|
---|
307 | <p>
|
---|
308 | encode UUcode. it encode only datas, you must also add header and footer for proper encode.</p>
|
---|
309 | <table class="detail">
|
---|
310 | <tr class="list">
|
---|
311 | <td class="itemcode"><a name="DecodeXX"></a><code>function <b>DecodeXX</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
312 | </tr>
|
---|
313 | </table>
|
---|
314 | <p>
|
---|
315 | Decodes a string from XXcode format.</p>
|
---|
316 | <table class="detail">
|
---|
317 | <tr class="list">
|
---|
318 | <td class="itemcode"><a name="DecodeYEnc"></a><code>function <b>DecodeYEnc</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
319 | </tr>
|
---|
320 | </table>
|
---|
321 | <p>
|
---|
322 | decode line with Yenc code. This code is sometimes used in newsgroups.</p>
|
---|
323 | <table class="detail">
|
---|
324 | <tr class="list">
|
---|
325 | <td class="itemcode"><a name="UpdateCrc32"></a><code>function <b>UpdateCrc32</b>(Value: Byte; Crc32: Integer): Integer;</code></td>
|
---|
326 | </tr>
|
---|
327 | </table>
|
---|
328 | <p>
|
---|
329 | Returns a new CRC32 value after adding a new byte of data.</p>
|
---|
330 | <table class="detail">
|
---|
331 | <tr class="list">
|
---|
332 | <td class="itemcode"><a name="Crc32"></a><code>function <b>Crc32</b>(const Value: AnsiString): Integer;</code></td>
|
---|
333 | </tr>
|
---|
334 | </table>
|
---|
335 | <p>
|
---|
336 | return CRC32 from a value string.</p>
|
---|
337 | <table class="detail">
|
---|
338 | <tr class="list">
|
---|
339 | <td class="itemcode"><a name="UpdateCrc16"></a><code>function <b>UpdateCrc16</b>(Value: Byte; Crc16: Word): Word;</code></td>
|
---|
340 | </tr>
|
---|
341 | </table>
|
---|
342 | <p>
|
---|
343 | Returns a new CRC16 value after adding a new byte of data.</p>
|
---|
344 | <table class="detail">
|
---|
345 | <tr class="list">
|
---|
346 | <td class="itemcode"><a name="Crc16"></a><code>function <b>Crc16</b>(const Value: AnsiString): Word;</code></td>
|
---|
347 | </tr>
|
---|
348 | </table>
|
---|
349 | <p>
|
---|
350 | return CRC16 from a value string.</p>
|
---|
351 | <table class="detail">
|
---|
352 | <tr class="list">
|
---|
353 | <td class="itemcode"><a name="MD5"></a><code>function <b>MD5</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
354 | </tr>
|
---|
355 | </table>
|
---|
356 | <p>
|
---|
357 | Returns a binary string with a RSA-MD5 hashing of "Value" string.</p>
|
---|
358 | <table class="detail">
|
---|
359 | <tr class="list">
|
---|
360 | <td class="itemcode"><a name="HMAC_MD5"></a><code>function <b>HMAC_MD5</b>(Text, Key: AnsiString): AnsiString;</code></td>
|
---|
361 | </tr>
|
---|
362 | </table>
|
---|
363 | <p>
|
---|
364 | Returns a binary string with HMAC-MD5 hash.</p>
|
---|
365 | <table class="detail">
|
---|
366 | <tr class="list">
|
---|
367 | <td class="itemcode"><a name="MD5LongHash"></a><code>function <b>MD5LongHash</b>(const Value: AnsiString; Len: integer): AnsiString;</code></td>
|
---|
368 | </tr>
|
---|
369 | </table>
|
---|
370 | <p>
|
---|
371 | Returns a binary string with a RSA-MD5 hashing of string what is constructed by repeating "value" until length is "Len".</p>
|
---|
372 | <table class="detail">
|
---|
373 | <tr class="list">
|
---|
374 | <td class="itemcode"><a name="SHA1"></a><code>function <b>SHA1</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
375 | </tr>
|
---|
376 | </table>
|
---|
377 | <p>
|
---|
378 | Returns a binary string with a SHA-1 hashing of "Value" string.</p>
|
---|
379 | <table class="detail">
|
---|
380 | <tr class="list">
|
---|
381 | <td class="itemcode"><a name="HMAC_SHA1"></a><code>function <b>HMAC_SHA1</b>(Text, Key: AnsiString): AnsiString;</code></td>
|
---|
382 | </tr>
|
---|
383 | </table>
|
---|
384 | <p>
|
---|
385 | Returns a binary string with HMAC-SHA1 hash.</p>
|
---|
386 | <table class="detail">
|
---|
387 | <tr class="list">
|
---|
388 | <td class="itemcode"><a name="SHA1LongHash"></a><code>function <b>SHA1LongHash</b>(const Value: AnsiString; Len: integer): AnsiString;</code></td>
|
---|
389 | </tr>
|
---|
390 | </table>
|
---|
391 | <p>
|
---|
392 | Returns a binary string with a SHA-1 hashing of string what is constructed by repeating "value" until length is "Len".</p>
|
---|
393 | <table class="detail">
|
---|
394 | <tr class="list">
|
---|
395 | <td class="itemcode"><a name="MD4"></a><code>function <b>MD4</b>(const Value: AnsiString): AnsiString;</code></td>
|
---|
396 | </tr>
|
---|
397 | </table>
|
---|
398 | <p>
|
---|
399 | Returns a binary string with a RSA-MD4 hashing of "Value" string.</p>
|
---|
400 | <h3 class="detail">Types</h3>
|
---|
401 | <table class="detail">
|
---|
402 | <tr class="list">
|
---|
403 | <td class="itemcode"><a name="TSpecials"></a><code><b>TSpecials</b> = set of AnsiChar;</code></td>
|
---|
404 | </tr>
|
---|
405 | </table>
|
---|
406 | <h3 class="detail">Constants</h3>
|
---|
407 | <table class="detail">
|
---|
408 | <tr class="list">
|
---|
409 | <td class="itemcode"><a name="SpecialChar"></a><code><b>SpecialChar</b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
410 | ['=', '(', ')', '[', ']', '<', '>', ':', ';', ',', '@', '/', '?', '\',
|
---|
411 | '"', '_'];</code></td>
|
---|
412 | </tr>
|
---|
413 | </table>
|
---|
414 | <table class="detail">
|
---|
415 | <tr class="list">
|
---|
416 | <td class="itemcode"><a name="NonAsciiChar"></a><code><b>NonAsciiChar</b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
417 | [#0..#31, #127..#255];</code></td>
|
---|
418 | </tr>
|
---|
419 | </table>
|
---|
420 | <table class="detail">
|
---|
421 | <tr class="list">
|
---|
422 | <td class="itemcode"><a name="URLFullSpecialChar"></a><code><b>URLFullSpecialChar</b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
423 | [';', '/', '?', ':', '@', '=', '&', '#', '+'];</code></td>
|
---|
424 | </tr>
|
---|
425 | </table>
|
---|
426 | <table class="detail">
|
---|
427 | <tr class="list">
|
---|
428 | <td class="itemcode"><a name="URLSpecialChar"></a><code><b>URLSpecialChar</b>: <a href="synacode.html#TSpecials">TSpecials</a> =
|
---|
429 | [#$00..#$20, '_', '<', '>', '"', '%', '{', '}', '|', '\', 'ˆ', '˜', '[', ']',
|
---|
430 | '`', #$7F..#$FF];</code></td>
|
---|
431 | </tr>
|
---|
432 | </table>
|
---|
433 | <table class="detail">
|
---|
434 | <tr class="list">
|
---|
435 | <td class="itemcode"><a name="TableBase64"></a><code><b>TableBase64</b> =
|
---|
436 | 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';</code></td>
|
---|
437 | </tr>
|
---|
438 | </table>
|
---|
439 | <table class="detail">
|
---|
440 | <tr class="list">
|
---|
441 | <td class="itemcode"><a name="TableBase64mod"></a><code><b>TableBase64mod</b> =
|
---|
442 | 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+,=';</code></td>
|
---|
443 | </tr>
|
---|
444 | </table>
|
---|
445 | <table class="detail">
|
---|
446 | <tr class="list">
|
---|
447 | <td class="itemcode"><a name="TableUU"></a><code><b>TableUU</b> =
|
---|
448 | '`!"#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]ˆ_';</code></td>
|
---|
449 | </tr>
|
---|
450 | </table>
|
---|
451 | <table class="detail">
|
---|
452 | <tr class="list">
|
---|
453 | <td class="itemcode"><a name="TableXX"></a><code><b>TableXX</b> =
|
---|
454 | '+-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';</code></td>
|
---|
455 | </tr>
|
---|
456 | </table>
|
---|
457 | <table class="detail">
|
---|
458 | <tr class="list">
|
---|
459 | <td class="itemcode"><a name="ReTablebase64"></a><code><b>ReTablebase64</b> =
|
---|
460 | #$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$3E +#$40
|
---|
461 | +#$40 +#$40 +#$3F +#$34 +#$35 +#$36 +#$37 +#$38 +#$39 +#$3A +#$3B +#$3C
|
---|
462 | +#$3D +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$00 +#$01 +#$02 +#$03
|
---|
463 | +#$04 +#$05 +#$06 +#$07 +#$08 +#$09 +#$0A +#$0B +#$0C +#$0D +#$0E +#$0F
|
---|
464 | +#$10 +#$11 +#$12 +#$13 +#$14 +#$15 +#$16 +#$17 +#$18 +#$19 +#$40 +#$40
|
---|
465 | +#$40 +#$40 +#$40 +#$40 +#$1A +#$1B +#$1C +#$1D +#$1E +#$1F +#$20 +#$21
|
---|
466 | +#$22 +#$23 +#$24 +#$25 +#$26 +#$27 +#$28 +#$29 +#$2A +#$2B +#$2C +#$2D
|
---|
467 | +#$2E +#$2F +#$30 +#$31 +#$32 +#$33 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40;</code></td>
|
---|
468 | </tr>
|
---|
469 | </table>
|
---|
470 | <table class="detail">
|
---|
471 | <tr class="list">
|
---|
472 | <td class="itemcode"><a name="ReTableUU"></a><code><b>ReTableUU</b> =
|
---|
473 | #$01 +#$02 +#$03 +#$04 +#$05 +#$06 +#$07 +#$08 +#$09 +#$0A +#$0B +#$0C
|
---|
474 | +#$0D +#$0E +#$0F +#$10 +#$11 +#$12 +#$13 +#$14 +#$15 +#$16 +#$17 +#$18
|
---|
475 | +#$19 +#$1A +#$1B +#$1C +#$1D +#$1E +#$1F +#$20 +#$21 +#$22 +#$23 +#$24
|
---|
476 | +#$25 +#$26 +#$27 +#$28 +#$29 +#$2A +#$2B +#$2C +#$2D +#$2E +#$2F +#$30
|
---|
477 | +#$31 +#$32 +#$33 +#$34 +#$35 +#$36 +#$37 +#$38 +#$39 +#$3A +#$3B +#$3C
|
---|
478 | +#$3D +#$3E +#$3F +#$00 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40
|
---|
479 | +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40
|
---|
480 | +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40;</code></td>
|
---|
481 | </tr>
|
---|
482 | </table>
|
---|
483 | <table class="detail">
|
---|
484 | <tr class="list">
|
---|
485 | <td class="itemcode"><a name="ReTableXX"></a><code><b>ReTableXX</b> =
|
---|
486 | #$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$00 +#$40
|
---|
487 | +#$01 +#$40 +#$40 +#$02 +#$03 +#$04 +#$05 +#$06 +#$07 +#$08 +#$09 +#$0A
|
---|
488 | +#$0B +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$40 +#$0C +#$0D +#$0E +#$0F
|
---|
489 | +#$10 +#$11 +#$12 +#$13 +#$14 +#$15 +#$16 +#$17 +#$18 +#$19 +#$1A +#$1B
|
---|
490 | +#$1C +#$1D +#$1E +#$1F +#$20 +#$21 +#$22 +#$23 +#$24 +#$25 +#$40 +#$40
|
---|
491 | +#$40 +#$40 +#$40 +#$40 +#$26 +#$27 +#$28 +#$29 +#$2A +#$2B +#$2C +#$2D
|
---|
492 | +#$2E +#$2F +#$30 +#$31 +#$32 +#$33 +#$34 +#$35 +#$36 +#$37 +#$38 +#$39
|
---|
493 | +#$3A +#$3B +#$3C +#$3D +#$3E +#$3F +#$40 +#$40 +#$40 +#$40 +#$40 +#$40;</code></td>
|
---|
494 | </tr>
|
---|
495 | </table>
|
---|
496 | <hr noshade size="1"><span class="appinfo"><em>Generated by <a target="_parent" href="http://pasdoc.sourceforge.net/">PasDoc 0.9.0</a> on 2012-04-23 21:38:52</em>
|
---|
497 | </span>
|
---|
498 | </body></html>
|
---|