Added asynchronous event tasks to SILC Scheduler. Added
[crypto.git] / CHANGES.RUNTIME
index 725ea70e963924777188e6891ca343f1feb76480..33f5b70da16ef6a3bb72d82dd7cbe618ad97e6b9 100644 (file)
@@ -1,3 +1,167 @@
+Sun Dec 30 14:35:33 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Implemented asynchronous events to SILC Scheduler.  Added
+         silc_schedule_task_add_event, silc_schedule_event_connect,
+         silc_schedule_event_dissconnect, silc_schedule_task_del_event
+         and silc_schedule_event_signal.  Affected files are
+         lib/silcutil/silcschedule.[ch], silcschedule_i.h.
+
+       * Added concept of child and parent scheduler to SILC Scheduler
+         API.  silc_schedule_init now takes optional parent argument.
+         Each child scheduler is still independent, only the event tasks
+         are shared among parent and children.  Affected files are
+         lib/silcutil/silcschedule.[ch].
+
+       * The SILC FSM real thread now adds the created SilcSchedule
+         as the thread's global scheduler.  Affected file is
+         lib/silcutil/silcfsm.[ch].
+
+       * Moved generic string and data hashing and comparison functions
+         from lib/silcutil/silcutil.[ch] to lib/silcutil/silchashtable.[ch]
+         as they are usable by the hash table.  Added case sensitive
+         and insensitive string hashing and comparison funtions.
+         Changed string and data hashing to use Bob Jenkin's one-at-a-time
+         hash function.
+       
+       * Moved SILC_PARAM_* types from silcbuffmt.h to silctypes.h
+         under a generic SilcParam type.  Affected files are
+         lib/silcutil/silcbuffmt.[ch] and lib/silcutil/silctypes.h.
+
+Wed Dec 26 13:10:30 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_schedule_[set|get]_global to
+         lib/silcutil/silcschedule.[ch].
+
+       * Changed many APIs to call silc_schedule_get_global if provided
+         scheduler argument is NULL.
+
+Tue Dec 25 18:44:27 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * silc_stack_alloc now automatically aligns the requested
+         stack size.  Affected files are lib/silcutil/silcstack.[ch].
+
+Tue Dec 25 13:53:07 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_getopt to lib/silcutil/silcgetopt.[ch].
+
+Sat Dec 22 19:55:28 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added SILC errno API to lib/silcutil/silcerrno.[ch].  Added
+         SilcResult, generic error code and return value type.  Added
+         global silc_errno that returns last error in that thread.
+
+       * Deprecated SilcSocketStreamStatus, SilcResult replaces it.
+         Backwards support remains.  Affected files are
+         lib/silcutil/silcsocketstream.[ch].
+
+       * Deprecated SilcNetStatus, SilcResult replaces it.  Backwards
+         support remains.  Affected files are lib/silcutil/silcnet.[ch].
+
+       * Added errno setting to almost all Runtime Tooolkit routines
+         in error conditions.
+
+Sun Dec 16 16:18:04 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added SILC Bit Operations API to lib/silcutil/silcbitops.[ch].
+
+Sat Dec 15 19:59:53 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added SILC Tls API for Thread-local storage in
+         lib/silcutil/silcthread.[ch].  Added all platform specific
+         implementations.  Added SilcTls structure to 
+         lib/silcutil/silcthread_i.h that is now in all threads' Tls.
+
+Thu Dec 13 17:37:21 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Clear the locked flag before unlocking mutex, not after.
+         Affected files are lib/silcutil/unix/silcunixthread.c and
+         lib/silcutil/symbian/silcsymbianthread.c.
+
+       * Fixed thread pool locking dealing with thread stopping to
+         prevent deadlocks and crashes.  Affected file is 
+         lib/silcutil/silcthread.c.
+
+Tue Nov  6 17:09:42 EET 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added '%@' formatting to silc_snprintf and variants.  It
+         can be used to render data and structures.  Affected files
+         are lib/silcutil/silcsnprintf.[ch].
+
+Sat Oct 27 18:12:40 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_net_tcp_create_listener2.  Affected files are
+         lib/silcutil/silcnet.h and platform specific implementation.
+
+Sat Sep  1 12:09:32 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Rewrote parts of the SILC Atomic API to not use volatile
+         members in structures but to handle the memory accesses
+         volatily, the right way to do it.  Affected file is
+         lib/silcutil/silcatomic.h.
+
+       * Added silc_timer_tick and silc_timer_synchronize functions
+         to SILC Timer API.  Affected files are 
+         lib/silcutil/silctimer.[ch] and silctimer_i.h.
+
+       * Use clock_gettime in place of gettimeofday, if it is
+         available.  Affected files are configure.ad and
+         lib/silcutil/unix/silcunixutil.c.
+
+       * Added silc_offsetof, silc_likely and silc_unlikely to public
+         API.  Added silc_attribute compiler specific definition.
+         Affected file is lib/silcutil/silctypes.h.
+
+       * Added silc_prefetch and silc_prefetch_block functions that
+         provide routines for prefetching data to CPU cache.  Affected
+         file is lib/silcutil/silctypes.h.
+
+       * Added --with-alignment for specifying default memory alignment
+         used in the compiled code.  Currently only SilcStack respects
+         this value.  Affected files are lib/configure.ad,
+         lib/silcutil/silcstack_i.h and includes/silc.h.in.
+
+Tue Aug  7 21:00:00 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed alignment issues on 64-bit CPUs.  Affected files are
+         lib/silcutil/silcschedule.c and unix/silcunixschedule.c.
+
+Sat Aug  4 19:09:14 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added assembler optimized versions of SILC_[GET|PUT]XX_MSB
+         macros, and SILC_SWAB_XX macros.  Added new functions
+         silc_rol, silc_ror, silc_rol64 and silc_ror64, all of which
+         have assembler optimizations also.  Affected file is
+         lib/silcutil/silctypes.h.
+
+Thu Jul 26 18:13:59 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
+
+       * Changed thread pool call queues thread specific and changed
+         queues to be consumed in last-in-first-out order.  These
+         are optimizations to the thread pool.  Affected file is
+         lib/silcutil/silcthread.c.
+
+Wed Jul 25 19:32:41 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_mime_assembler_purge to lib/silcutil/silcmime.[ch]
+         to purge unfinished fragments from MIME assembler.
+
+Sat Jul 21 14:47:28 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_data2hex and silc_hex2data to
+         lib/silcutil/silcutil.[ch].
+
+Thu Jul 19 17:07:02 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_buffer_strchr to lib/silcutil/silcbuffer.h.
+
+Tue Jul 17 20:10:41 EEST 2007 Pekka Riikonen <priikone@silcnet.org>
+
+       * Added silc_hexdump to lib/silcutil/silcutil.[ch].
+
+Fri Jul 13 23:01:45 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added SILC_GET32_X_MSB macro to lib/silcutil/silctypes.h.
+
 Wed Jul 11 17:10:11 EEST 2007  Pekka Riikonen <priikone@silcnet.org>
 
        * Added SILC Timer API to lib/silcutil/silctimer.[ch],