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