9ce124dd32587e722365e66230b108b3f5b97a81
[crypto.git] / CHANGES.RUNTIME
1 Tue Jan  8 09:41:57 EET 2008  Pekka Riikonen <priikone@silcnet.org>
2
3         * Fixed printable fingerprint bufferoverlfow, RedHat bug 372021.
4           Affected file is lib/silcutil/silcutil.c.
5
6 Sat Jan  5 20:19:28 EET 2008  Pekka Riikonen <priikone@silcnet.org>
7
8         * Added SILC_STR_DELETE buffer format macro.  Added support for
9           deleting data after regex match with SILC_STR_REGEX.  Affected
10           files are lib/silcutil/silcbuffmt.[ch].
11
12         * Handle regex anychar (.) with bounded repeat correctly.
13           Affected file is lib/silcutil/silcregex.c.
14
15 Sat Jan  5 18:00:06 EET 2008  Pekka Riikonen <priikone@silcnet.org>
16
17         * Added silc_buffer_equal to lib/silcutil/silcbuffer.h.
18
19         * Added SILC_STR_STRING and SILC_STR_STRING_APPEND buffer format
20           macros.  Affected files are lib/silcutil/silcbuffmt.[ch].
21
22         * Added support for matching and appending with SILC_STR_REGEX
23           and SILC_STR_STRING_APPEND.  Affected files are
24           lib/silcutil/silcbuffmt.[ch].
25
26 Thu Jan  3 18:37:42 EET 2008  Pekka Riikonen <priikone@silcnet.org>
27
28         * Added SilcStack support to silc_regex and silc_regex_buffer
29           calls.  Affected files are lib/silcutil/silcregex.[ch].
30
31 Wed Jan  2 22:39:57 EET 2008  Pekka Riikonen <priikone@silcnet.org>
32
33         * Added silc_stack_[set|get]_global to set/get global per-thread
34           SilcStack.  Affected files are lib/silcutil/silcstack.[ch].
35
36         * Imported new improved free regex implementation.  Added (again)
37           support for SILC_REGEX_NOTBOL and SILC_REGEX_NOTEOLF flags.
38           Added also support for POSIX bounded repeat expression (a{n,m}) 
39           to make it more POSIX compliant.  Added SilcStack support to
40           the regex too.  Affected files are lib/silcutil/silcregex.[ch].
41
42         * Added silc_buffer_printf to lib/silcutil/silcbuffer.h.
43
44         * Changed silc_srealloc to allocate new memory block if reallocation
45           from stack fails, and to copy the old data to the new one.
46           Affected files are lib/silcutil/silcmemory.[ch].
47
48 Tue Jan  1 19:40:15 EET 2008  Pekka Riikonen <priikone@silcnet.org>
49
50         * Added SILC_REGEX_NOTBOL and SILC_REGEX_NOTEOL flags to
51           lib/silcutil/silcregex.[ch].
52
53 Tue Jan  1 18:00:47 EET 2008  Pekka Riikonen <priikone@silcnet.org>
54
55         * Added silc_regex and silc_regex_buffer, routines that provide
56           convenient use of regular expressions.  Affected files
57           are lib/silcutil/silcregex.[ch].  Deprecated the
58           silc_string_regex_match.  Affected files are
59           lib/silcutil/silcstrutil.[ch].
60
61         * Added SILC_STR_REGEX macro to SILC Buffer Format API.  It
62           provides powerful regular expression matching within the
63           SilcBuffer.  Combined with SILC Buffer Format API it can turn
64           the API into a Stream Editor (sed) and Awk like, providing
65           powerful ways to match and edit the buffer in myriad of ways.  
66           The SILC_STR_REGEX can also mimic the behavior of sed (match
67           and edit line by line).  Affected files are
68           lib/silcutil/silcbuffmt.[ch], silctypes.h.
69
70 Mon Dec 31 15:50:31 EET 2007  Pekka Riikonen <priikone@silcnet.org>
71
72         * Added SILC_STR_OFFSET_START and SILC_STR_OFFSET_END to
73           lib/silcutil/silcbuffmt.[ch].
74
75 Mon Dec 31 01:30:17 EET 2007  Pekka Riikonen <priikone@silcnet.org>
76
77         * Added SILC regular expression API to lib/silcutil/silcregex.[ch].
78
79 Sun Dec 30 14:35:33 EET 2007  Pekka Riikonen <priikone@silcnet.org>
80
81         * Implemented asynchronous events to SILC Scheduler.  Added
82           silc_schedule_task_add_event, silc_schedule_event_connect,
83           silc_schedule_event_dissconnect, silc_schedule_task_del_event
84           and silc_schedule_event_signal.  Affected files are
85           lib/silcutil/silcschedule.[ch], silcschedule_i.h.
86
87         * Added concept of child and parent scheduler to SILC Scheduler
88           API.  silc_schedule_init now takes optional parent argument.
89           Each child scheduler is still independent, only the event tasks
90           are shared among parent and children.  Affected files are
91           lib/silcutil/silcschedule.[ch].
92
93         * The SILC FSM real thread now adds the created SilcSchedule
94           as the thread's global scheduler.  Affected file is
95           lib/silcutil/silcfsm.[ch].
96
97         * Moved generic string and data hashing and comparison functions
98           from lib/silcutil/silcutil.[ch] to lib/silcutil/silchashtable.[ch]
99           as they are usable by the hash table.  Added case sensitive
100           and insensitive string hashing and comparison funtions.
101           Changed string and data hashing to use Bob Jenkin's one-at-a-time
102           hash function.
103         
104         * Moved SILC_PARAM_* types from silcbuffmt.h to silctypes.h
105           under a generic SilcParam type.  Affected files are
106           lib/silcutil/silcbuffmt.[ch] and lib/silcutil/silctypes.h.
107
108 Wed Dec 26 13:10:30 EET 2007  Pekka Riikonen <priikone@silcnet.org>
109
110         * Added silc_schedule_[set|get]_global to
111           lib/silcutil/silcschedule.[ch].
112
113         * Changed many APIs to call silc_schedule_get_global if provided
114           scheduler argument is NULL.
115
116 Tue Dec 25 18:44:27 EET 2007  Pekka Riikonen <priikone@silcnet.org>
117
118         * silc_stack_alloc now automatically aligns the requested
119           stack size.  Affected files are lib/silcutil/silcstack.[ch].
120
121 Tue Dec 25 13:53:07 EET 2007  Pekka Riikonen <priikone@silcnet.org>
122
123         * Added silc_getopt to lib/silcutil/silcgetopt.[ch].
124
125 Sat Dec 22 19:55:28 EET 2007  Pekka Riikonen <priikone@silcnet.org>
126
127         * Added SILC errno API to lib/silcutil/silcerrno.[ch].  Added
128           SilcResult, generic error code and return value type.  Added
129           global silc_errno that returns last error in that thread.
130
131         * Deprecated SilcSocketStreamStatus, SilcResult replaces it.
132           Backwards support remains.  Affected files are
133           lib/silcutil/silcsocketstream.[ch].
134
135         * Deprecated SilcNetStatus, SilcResult replaces it.  Backwards
136           support remains.  Affected files are lib/silcutil/silcnet.[ch].
137
138         * Added errno setting to almost all Runtime Tooolkit routines
139           in error conditions.
140
141 Sun Dec 16 16:18:04 EET 2007  Pekka Riikonen <priikone@silcnet.org>
142
143         * Added SILC Bit Operations API to lib/silcutil/silcbitops.[ch].
144
145 Sat Dec 15 19:59:53 EET 2007  Pekka Riikonen <priikone@silcnet.org>
146
147         * Added SILC Tls API for Thread-local storage in
148           lib/silcutil/silcthread.[ch].  Added all platform specific
149           implementations.  Added SilcTls structure to 
150           lib/silcutil/silcthread_i.h that is now in all threads' Tls.
151
152 Thu Dec 13 17:37:21 EET 2007  Pekka Riikonen <priikone@silcnet.org>
153
154         * Clear the locked flag before unlocking mutex, not after.
155           Affected files are lib/silcutil/unix/silcunixthread.c and
156           lib/silcutil/symbian/silcsymbianthread.c.
157
158         * Fixed thread pool locking dealing with thread stopping to
159           prevent deadlocks and crashes.  Affected file is 
160           lib/silcutil/silcthread.c.
161
162 Tue Nov  6 17:09:42 EET 2007  Pekka Riikonen <priikone@silcnet.org>
163
164         * Added '%@' formatting to silc_snprintf and variants.  It
165           can be used to render data and structures.  Affected files
166           are lib/silcutil/silcsnprintf.[ch].
167
168 Sat Oct 27 18:12:40 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
169
170         * Added silc_net_tcp_create_listener2.  Affected files are
171           lib/silcutil/silcnet.h and platform specific implementation.
172
173 Sat Sep  1 12:09:32 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
174
175         * Rewrote parts of the SILC Atomic API to not use volatile
176           members in structures but to handle the memory accesses
177           volatily, the right way to do it.  Affected file is
178           lib/silcutil/silcatomic.h.
179
180         * Added silc_timer_tick and silc_timer_synchronize functions
181           to SILC Timer API.  Affected files are 
182           lib/silcutil/silctimer.[ch] and silctimer_i.h.
183
184         * Use clock_gettime in place of gettimeofday, if it is
185           available.  Affected files are configure.ad and
186           lib/silcutil/unix/silcunixutil.c.
187
188         * Added silc_offsetof, silc_likely and silc_unlikely to public
189           API.  Added silc_attribute compiler specific definition.
190           Affected file is lib/silcutil/silctypes.h.
191
192         * Added silc_prefetch and silc_prefetch_block functions that
193           provide routines for prefetching data to CPU cache.  Affected
194           file is lib/silcutil/silctypes.h.
195
196         * Added --with-alignment for specifying default memory alignment
197           used in the compiled code.  Currently only SilcStack respects
198           this value.  Affected files are lib/configure.ad,
199           lib/silcutil/silcstack_i.h and includes/silc.h.in.
200
201 Tue Aug  7 21:00:00 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
202
203         * Fixed alignment issues on 64-bit CPUs.  Affected files are
204           lib/silcutil/silcschedule.c and unix/silcunixschedule.c.
205
206 Sat Aug  4 19:09:14 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
207
208         * Added assembler optimized versions of SILC_[GET|PUT]XX_MSB
209           macros, and SILC_SWAB_XX macros.  Added new functions
210           silc_rol, silc_ror, silc_rol64 and silc_ror64, all of which
211           have assembler optimizations also.  Affected file is
212           lib/silcutil/silctypes.h.
213
214 Thu Jul 26 18:13:59 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
215
216         * Changed thread pool call queues thread specific and changed
217           queues to be consumed in last-in-first-out order.  These
218           are optimizations to the thread pool.  Affected file is
219           lib/silcutil/silcthread.c.
220
221 Wed Jul 25 19:32:41 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
222
223         * Added silc_mime_assembler_purge to lib/silcutil/silcmime.[ch]
224           to purge unfinished fragments from MIME assembler.
225
226 Sat Jul 21 14:47:28 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
227
228         * Added silc_data2hex and silc_hex2data to
229           lib/silcutil/silcutil.[ch].
230
231 Thu Jul 19 17:07:02 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
232
233         * Added silc_buffer_strchr to lib/silcutil/silcbuffer.h.
234
235 Tue Jul 17 20:10:41 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
236
237         * Added silc_hexdump to lib/silcutil/silcutil.[ch].
238
239 Fri Jul 13 23:01:45 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
240
241         * Added SILC_GET32_X_MSB macro to lib/silcutil/silctypes.h.
242
243 Wed Jul 11 17:10:11 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
244
245         * Added SILC Timer API to lib/silcutil/silctimer.[ch],
246           silctimer_i.h, tests/test_silctimer.c.
247
248 Tue Jul 10 20:02:04 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
249
250         * Added queue entry free list to thread pool instead of
251           allocating new entry everytime new entry is needed.  Affected
252           file is lib/silcutil/silcthread.c.
253
254 Mon Jul  9 20:21:13 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
255
256         * Changed thread pool completion callback to SilcTaskCallback so
257           that it can be given directly to destination scheduler.
258           Affected files are lib/silcutil/silcthread.[ch].
259
260 Sun Jul  8 20:20:22 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
261
262         * Moved Base64 routines to lib/silcutil/silcbase64.[ch].  Added
263           SilcStack support to the API.
264
265         * Inherit the lock from parent in SilcStack child.  If child
266           doesn't find stack blocks, check from parent.  Added
267           silc_stack_purge.  Affected file is lib/silcutil/silcstack.c.
268
269 Wed Jul  4 20:20:05 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
270
271         * Unified the SILC_STR_FUNC callback.  Affected files are
272           lib/silcutil/silcbuffmt.[ch].
273
274         * Added SilcStack support to SILC File Util API.  Affected files
275           are lib/silcutil/silcfileutil.[ch].
276
277         * Added SilcStack support to SILC FD Stream API.  Affected files
278           are lib/silcutil/silcfdstream.[ch].
279
280         * Added SilcStack support to SILC Scheduler API.  The scheduler
281           now creates stack always.  It can be retrieved by
282           silc_schedule_get_stack.  Affected files are
283           lib/silcutil/silcschedule.[ch], silcschedule_i.h.
284
285         * Added SilcStack child creation and use multi-thread support.
286           Added OOM handler, silc_stack_set_oom_handler.  Affected
287           files are lib/silcutil/silcstack.[ch].
288
289 Tue Jul  3 22:45:56 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
290
291         * Added concept of child stacks to SilcStack, allowing to create
292           true memory pools using SilcStack.  It is now possible to
293           create childs from the parent, without consuming the parent's
294           memory.  The child's memory is returned back to parent when
295           it is freed.  Affected files are lib/silcutil/silcstack.[ch],
296           silcstack_i.h.
297
298 Tue Jul  3 18:17:54 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
299
300         * Added SILC DLL API for loading and using shared objects and
301           DLLs.  Affected files are lib/silcutil/sildll.[ch].  Added
302           also test program lib/silcutil/tests/test_silcdll.c.
303
304         * Added SILC Environment manipulation API to
305           lib/silcutil/silcenv.[ch] and test program to
306           lib/silcutil/tests/test_silcenv.c.
307
308         * Renamed silc_hash_table_replace to silc_hash_table_set.
309           Added SilcStack support to SilcHashTable.  Affected files are
310           lib/silcutil/silchashtable.[ch].
311
312         * Added SilcStack support to SilcDList.  Added new function
313           silc_dlist_sinit.  Affected file is lib/silcutil/silcdlist.h.
314
315 Mon Jul  2 21:07:34 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
316
317         * Removed unaligned memory allocation from SilcStack.  Moved
318           silc_stack_malloc and silc_stack_realloc to public API from
319           private API.  Added silc_stack_[set|get]_alignment that is
320           used to get/set memory alignment with SilcStack.  Affected
321           files are lib/silcutil/silcstack.[ch], silcstack_i.h.
322
323         * Added silc_sfree to lib/silcutil/silcmemory.[ch].
324
325         * Removed silc_smalloc_ua and silc_srealloc_ua.  Affected files
326           are lib/silcutil/silcmemory.[ch].
327
328 Mon Jul  2 17:13:51 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
329
330         * Added SILC Thread Pool API to lib/silcutil/silcthread.[ch],
331           and test program in lib/silcutil/tests/test_silcthread.c.
332
333 -----------------------------------------------------------------------------
334
335 For older changes please see the CHANGES file from the CVS tree.