1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
|
/** @page libdk4c libdk4c
@section secdk4headers Pure Headers
Header | Purpose
:----: | :------
dk4vers.h | Version number as text.
@section secdk4sortsto Sorted storage
Header | Purpose
:----: | :------
dk4sto.h | Sorted and unsorted storage using AVL trees or double-linked lists.
@section secdk4cinfret Information retrieval
Header | Purpose
:----: | :------
dk4inst.h | Directory names configured during build process.
dk4user.h | User login name and home directory.
dk4isadm.h | Check whether current user is administrator or non-privileged user.
dk4loc.h | Language, region and encoding.
dk4hname8.h | Host name as char string.
dk4hnamew.h | Host name as wchar_t string.
dk4hnamed.h | Host name as dkChar string.
dk4getpid.h | Process ID.
dk4exep8.h | Path name of executed file as char string.
dk4exepw.h | Path name of executed file as wchar_t string.
dk4exepd.h | Path name of executed file as dkChar string.
@section secdk4datetime Date and time
Header | Purpose
:----: | :------
dk4time.h | Timestamp operations.
dk4timec.h | Constants to choose a time format.
dk4ctime.h | Timestamp operations with clock times.
dk4ftime.h | File timestamp operations, conversion to text.
dk4time08.h | Convert timestamps to char text.
dk4timewc.h | Convert timestamps to wchar_t text.
dk4timedk.h | Convert timestamps to dkChar text.
@section secdk4output Output to file
Header | Purpose
:----: | :------
dk4fput.h | Put characters and strings to file.
dk4svbuf.h | Assign a specific memory range as file buffer, so the buffer can be sanitized after reading or writing security relevant things.
@section secdk4file File and directory
Header | Purpose
:----: | :------
dk4getcwd8.h | Get current working directory as char string.
dk4getcwdw.h | Get current working directory as wchar_t string.
dk4getcwdd.h | Get current working directory as dkChar string.
dk4path8.h | Path names in char texts.
dk4pathw.h | Path names in wchar_t texts.
dk4pathd.h | Path names in dkChar texts.
dk4mm.h | Check whether a rebuild is necessary to produce a destination file from source file.
dk4fopc8.h | Open file specified as char path name, additional security checks.
dk4fopwc.h | Open file specified as wchar_t path name, additional security checks.
dk4fopd.h | Open file specified as dkChar path name, additional security checks.
dk4fd.h | File descriptors: Open and close files, read and write data.
dk4ft.h | File type constants.
dk4stat.h | Constants for file information.
dk4statt.h | Type definitions used by the stat functions.
dk4stat8.h | File information for a path specified as char text.
dk4statw.h | File information for a path specified as wchar_t text.
dk4statd.h | File information for a path specified as dkChar text.
dk4ufit.h | Definitions for the 3 headers below.
dk4ufi08.h | Create unique file identifier for char path name.
dk4ufiwc.h | Create unique file identifier for wchar_t path name.
dk4ufi.h | Create unique file identifier for dkChar path name.
dk4fs.h | File search for configuration and resource files.
dk4symlink.h | Find symbolic link destination.
dk4fileit.h | Data types and constant values for file information.
dk4file8.h | Check presence of file specified as char text.
dk4filew.h | Check presence of file specified as wchar_t text.
dk4filed.h | Check presence of file specified as dkChar text.
dk4filei.h | Information about files using system-specific functions.
dk4fileiu.h | Retrieve unique file identifier from file information.
dk4filei8.h | Retrieve file information for a file specified as char string.
dk4fileiw.h | Retrieve file information for a file specified as wchar_t string.
dk4fileid.h | Retrieve file information for a file specified as dkChar string.
dk4fileig8.h | Convert file related timestamp to char string.
dk4mkdh8.h | Create directory hierarchy to store a file specified as char.
dk4mkdhw.h | Create directory hierarchy to store a file specified as wchar_t.
dk4mkdh.h | Create directory hierarchy to store a file specified as dkChar.
dk4dir08.h | Open directory specified as char string.
dk4dirwc.h | Open directory specified as wchar_t string.
dk4dir.h | Open directory specified as dkChar string.
dk4fne08.h | Windows: Expand file name specified as char string.
dk4fnewc.h | Windows: Expand file name specified as wchar_t string.
dk4fne.h | Windows: Expand file name specified as dkChar string.
dk4delfile08.h | Delete file specified as char string.
dk4delfilewc.h | Delete file specified as wchar_t string.
dk4delfile.h | Delete file specified as dkChar string.
dk4deldir08.h | Delete empty directory specified as char string.
dk4deldirwc.h | Delete empty directory specified as wchar_t string.
dk4deldir.h | Delete empty directory specified as dkChar string.
dk4istty.h | Check whether FILE or file descriptor is connected to a terminal.
@section secdk4rec Character and string recoding
Header | Purpose
:----: | :------
dk4enc.h | Find encoding type by name.
dk4bom.h | Search for byte order mark at start of data stream.
dk4ansi.h | Convert ANSI character text to 32 bit characters and vice versa.
dk4utf8.h | Convert UTF-8 encoded text to 32 bit characters and vice versa.
dk4utf16.h | Convert UTF-16 characters or bytes to 32 bit character and vice versa.
dk4c32.h | Convert bytes to 32 bit character.
dk4rec.h | String recoding between different character sizes and encodings, includes the dk4rec**.h files below.
dk4rec01.h | String recoding ASCII to ANSI.
dk4rec02.h | String recoding ANSI to ASCII.
dk4rec03.h | String recoding ASCII to UTF-8.
dk4rec04.h | String recoding UTF-8 to ASCII.
dk4rec05.h | String recoding ANSI to UTF-8.
dk4rec06.h | String recoding UTF-8 to ANSI.
dk4rec07.h | String recoding ASCII to UTF-16.
dk4rec08.h | String recoding UTF-16 to ASCII.
dk4rec09.h | String recoding ANSI to UTF-16.
dk4rec10.h | String recoding UTF-16 to ANSI.
dk4rec11.h | String recoding UTF-8 to UTF-16.
dk4rec12.h | String recoding UTF-16 to UTF-8.
dk4rec13.h | String recoding ASCII to 32 bit.
dk4rec14.h | String recoding 32 bit to ASCII.
dk4rec15.h | String recoding ANSI to 32 bit.
dk4rec16.h | String recoding 32 bit to ANSI.
dk4rec17.h | String recoding UTF-8 to 32 bit.
dk4rec18.h | String recoding 32 bit to UTF-8.
dk4rec19.h | String recoding UTF-16 32 bit.
dk4rec20.h | String recoding 32 bit to UTF-16.
dk4rec21.h | String recoding ASCII to dkChar.
dk4rec22.h | String recoding char to dkChar.
dk4rec23.h | String recoding char to wchar_t.
dk4rec24.h | String recoding wchar_t to char.
dk4rec25.h | String recoding dkChar to any.
@section secdk4textpro Text processing
Header | Purpose
:----: | :------
dk4edstm.h | Operation results for state machines operations in BOM detection.
dk4tsp.h | Type definitions for headers below.
dk4tsp08.h | Convert bytes to char or char lines, process text.
dk4tsp16.h | Convert bytes to 16-bit characters or lines, process text.
dk4tsp32.h | Convert bytes to 32-bit characters or lines, process text.
dk4tspdk.h | Convert bytes to dkChar characters or lines, process text.
@section secdk4numbenc Number encoding
Header | Purpose
:----: | :------
dk4numl.h | Find maximum string length for integer bit width.
dk4dblc8.h | Convert double value to char string.
dk4dblwc.h | Convert double value to wchar_t string.
dk4dbldk.h | Convert double value to dkChar string.
@section secdk4encdec Text data encoding and decoding
Header | Purpose
:----: | :------
dk4dec.h | Operation result when adding byte(s) to a decoder.
dk4binenc.h | Encode binary data to text using ASCII-Hex or ASCII-85.
dk4ahd.h | ASCII-Hex decoder
dk4a85e.h | ASCII-85 encoder.
dk4a85d.h | ASCII-85 decoder.
dk4rle.h | Run-length encoder.
dk4rld.h | Run-length decoder.
@section secdk4stt String tables
Header | Purpose
:----: | :------
dk4stt.h | String tables.
@section secdk4cmdlo Command line options
Header | Purpose
:----: | :------
dk4opt.h | Command line options.
@section secdk4pref Preferences
Header | Purpose
:----: | :------
dk4pref.h | Preferences.
@section secdk4stream Generic I/O using dk4_stream_t API
Header | Purpose
:----: | :------
dk4strm.h | Generic stream API.
dk4strmr.h | Open stream to read a file (either plain or compressed).
dk4strmw.h | Open stream to write a file (either plain or compressed).
dk4mbstrm.h | Open stream to write to a memory buffer.
dk4strmf.h | Implementation for plain files.
dk4strmb.h | Implementation for bzip2 compressed files.
dk4strmg.h | Implementation for gzip compressed files.
dk4strmo08.h | Write char strings to stream, recode if necessary.
dk4strmo16.h | Write 16-bit char strings to stream, recode if necessary.
dk4strmo32.h | Write 32-bit char strings to stream, recode if necessary.
dk4strmodk.h | Write dkChar strings to stream, recode if necessary.
dk4strms.h | Serialize (write) data to stream.
dk4strmu.h | Unserialize (read) data from stream.
dk4serf.h | Serialize (write) data to file.
dk4userf.h | Unserialize (read) data from file.
dk4c8dbl.h | Write double value to dk4_stream_t or FILE without scientific notation.
dk4mao8dns.h | Write double value to dk4_stream_t without scientific notation. Write 0 for very small absolute values.
dk4strmco.h | Build a compressing and encoding stream on top of an existring stream.
dk4lzwe.h | LZW compression support for the dk4strmco module
@section secdk4membs Memory buffers
Header | Purpose
:----: | :------
dk4membuf.h | Write data to memory buffers for later use.
dk4membf.h | Save buffer contents to file.
dk4membs.h | Save buffer contents to stream.
@section secdk4bits Bit handling
Header | Purpose
:----: | :------
dk4bf.h | Bit field and bit arrays.
dk4bitsh.h | Bit shifter (generates bytes from a sequence of bits).
@section secdk4math Mathematical operations
Header | Purpose
:----: | :------
dk4fpe.h | Access the FPU status.
@section secdk4iter Numerical iterations
Header | Purpose
:----: | :------
dk4iter.h | Root finding
dk4itmin.h | Minimum search for unimodal function on interval
@section secdk4mdch Message digests and checksums
Header | Purpose
:----: | :------
dk4mdch.h | Choose a message or checksum type by name.
@section secdk4winreg Windows registry access
Header | Purpose
:----: | :------
dk4wregk.h | Registry key names.
dk4wregt.h | Registry data types.
dk4wregc.h | Constants and data types used in the headers below.
dk4wreg8.h | Access to Windows registry using char strings.
dk4wregw.h | Access to Windows registry using wchar_t strings.
dk4wregd.h | Access to Windows registry using dkChar strings.
@section secdk4dmt Daemon tool functions
Header | Purpose
:----: | :------
dk4dmt.h | Daemon tool functions.
@section secdk4trace Tracing and debugging
Header | Purpose
:----: | :------
dk3trace.h | Functions for code generated by dkct.
*/
|