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