New silcconfig library and server parser. Merged silc-newconfig-final.patch.
[silc.git] / CHANGES
diff --git a/CHANGES b/CHANGES
index 7af2e8cfdc9f6e94a89f9f473b5f6cb01af6b6ad..f3617b11b2e10d5f8d45abfe4e17c6211a4ed18b 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,228 @@
+Wed Feb 13 12:46:25 CET 2002  Johnny Mnemonic <johnny@themnemonic.org>
+
+       * Merged the new SILC Config library, with the server parsing
+         support.  Read the header file silcconfig.h or the toolkit
+         documentation for the news.  Affected files are
+         doc/example_silcd.conf.in lib/silcutil/silcconfig.[ch]
+         silcd/command.c silcd/packet_receive.c silcd/packet_send.c
+         silcd/protocol.c silcd/server.c silcd/server_backup.c
+         silcd/serverconfig.[ch] silcd/silcd.c.
+
+       * Fixed some silclog documentation.  Affected file is
+         lib/silcutil/silclog.h.
+
+Sun Feb 10 18:11:30 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * The silc_cipher_register, silc_hash_register and
+         silc_hmac_register now checks if the object to be registered
+         is registered already.  Affected files are
+         lib/silccrypt/silccipher.c, silchash.c and silchmac.c.
+
+Sun Feb 10 15:48:38 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Merged new irssi from irssi.org's CVS, the version 0.7.99.
+
+Sat Feb  9 14:54:33 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Allow zero length channel messages inside the Channel Message
+         Payload.  Affected file lib/silccore/silcchannel.c.
+
+       * Fixed scripts/silcdoc/silcdoc to support all kinds of filenames
+         as header filenames.
+
+       * Removed lib/silcclient/README and created HTML file
+         lib/silcclient/silcclient_using.html, which is now included
+         as part of Toolkit documentation.
+
+Thu Feb  7 10:12:25 CET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed CUMODE_CHANGE notify handling to change the mode of
+         correct client.  Affected file lib/silcclient/client_notify.c.
+
+       * Make silc_rng_alloc fail if it cannot allocate the sha1
+         hash algorithm.  Affected file lib/silccrypt/silcrng.c.
+
+Sun Feb  3 17:20:52 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed the file transfer's key agreement payload to include
+         zero port also if the hostname is NULL because it could not
+         be bound.  
+
+         Call file transfer monitor callback now also if error occurs
+         during key agreement protocol.
+
+         Changed the silc_client_file_send interface to return the
+         SilcClientFileError instead of session id.  The session ID
+         is returned into pointer provided as argument.
+
+         Check that the file exists locally before sending the
+         file transfer request at all.
+
+         Affected file lib/silcclient/client_ftp.c, silcapi.h.
+
+       * Added SILC_CLIENT_FILE_KEY_AGREEMENT_FAILED file transfer
+         error than can occur while key agreement protocol.  Affected
+         file lib/silcclient/silcapi.h.
+
+       * Fixed the event_mode CMODE handler to not crash when mode
+         is changed and +k mode is set in the channel.  Affected file
+         irssi/src/silc/core/silc-channels.c.
+
+       * Fixed SILC_LOG_ERROR to give out Error and not Warning, and
+         SILC_LOG_WARNING to give out Warning and not Error.  Affected
+         file lib/silcutil/silclog.c.
+
+       * Fixed the channel message payload decryption in the function
+         silc_channel_message_payload_decrypt to not modify the original
+         buffer before it is verified that the message decrypted
+         correctly.  Otherwise, next time it is called with correct
+         channel key it won't encrypt since the payload is corrupted.
+         Affected file lib/silccore/silcchannel.c.
+
+Sun Feb  3 11:46:12 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Do not constantly resize the window.  A fix patch by cras.
+         Affected file irssi/src/fe-text/screen.c.
+
+Sat Feb  2 16:54:18 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Applied IPv6 fix patch from Jun-ichiro itojun Hagino.
+         Affected file lib/silcutil/silcnet.c.
+
+Fri Feb  1 22:33:11 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed a bug in hash table internal routine for traversing
+         the table with foreach callback.  The current entry may
+         become invalid in the callback but it was referenced after
+         the callback returned.
+
+         Do not allow auto rehashing of hash table during the
+         silc_hash_table_foreach operation, for same reasons as it is
+         not allowed for SilcHashTableList.  Affected files are
+         lib/silcutil/silchashtable.[ch].
+
+Fri Feb  1 14:55:00 CET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Defined DLLAPI into silcincludes.h and silcwin32.h for
+         Win32 DLL.  extern's in header files are now declared with
+         DLLAPI.
+
+Thu Jan 31 23:34:33 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed private message handling.  It used some old code that
+         caused the client to crash.  Affecte file is
+         lib/silcclient/client_prvmsg.c.
+
+Thu Jan 31 19:06:22 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Added function silc_client_add_channel, 
+         silc_client_replace_channel_id, and removed functions
+         silc_client_new_channel_id and silc_idlist_get_channel_by_id
+         from client library.
+
+       * Added cross reference of the joined channels to the 
+         SilcClientEntry, and changed the SilcChannelEntry's
+         users list to SilcHashTable.  The affected files are
+         lib/silcclient/idlist.[ch].
+
+       * Fixed a bug in hash table tarversing.  While the hash table
+         is traversed with SilcHashTableList the table must not be
+         rehashed.  It is now guaranteed that auto rehashable tables
+         are not rehashed while tarversing the list.  Also defined that
+         silc_hash_table_rehash must not be called while tarversing
+         the table.  Added function silc_hash_table_list_reset that must
+         be called after the tarversing is over.  The affected files are
+         lib/silcutil/silchashtable.[ch].
+
+       * Changed all hash table traversing to call the new
+         silc_hash_table_list_reset in server and in client library.
+
+       * Added function silc_client_on_channel to return the 
+         SilcChannelUser entry if the specified client entry is joined
+         on the specified channel.  This is exported to application as
+         well.  Affected files lib/silcclient/client_channel.c, silcapi.h.
+
+Wed Jan 30 19:14:31 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed founder regaining problem with JOIN command on normal
+         server.  The notify for mode change must be sent always and
+         not only if !cmd->pending.  Affected file silcd/command.c.
+
+       * Fixed the WHOWAS command's reply sending to support the
+         lists correctly.  Affected file silcd/command.c.
+
+Wed Jan 30 11:11:47 CET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * When sending JOIN command to router for processing the
+         sender's old command identifier was not saved back to the
+         sender's command context, fixed now.  The affected file is
+         silcd/command.c.
+
+       * Create the key in JOIN command of the router did not return
+         the channel key, added check for this.  Affected file is
+         silcd/command.c.
+
+       * Fixed a channel ID update bug in JOIN command reply.  Do
+         not directly upgrade the ID but call the function
+         silc_idlist_replace_channel_id if the ID was changed.
+         Affected file silcd/command_reply.c.
+
+       * Fixed memory leaks from command calling if it would fail.
+         Affected file silcd/command.c.
+
+Tue Jan 29 19:49:31 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Applied patches from cras:
+
+         Memory leak fixes around libaries, irssi window resize fix,
+         new silclist.h and silcdlist.h, all extern inline changed to
+         static inline.
+
+       * Removed dotconf from lib/dotconf, not needed anymore.
+
+       * Removed TRQ from lib/trq, not needed anymore.
+
+       * Do more frequent heartbeats (5 minutes instead of 10 minutes)
+         with server connections.  Later this will be configurable
+         in config file after new config file is done.  Affected file
+         silcd/server.c.
+
+Tue Jan 29 10:35:03 CET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed a crash in server related to channel announcements.
+         Affected file silcd/server.c.
+
+Mon Jan 28 17:49:42 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed memory leaks in silc_server_create_new_channel*
+         functions.  Affected file silcd/server.c.
+
+       * Fixed the CHANNEL_CHANGE notify to re-announce the channel
+         which ID was changed.  This way the router will send the
+         user list for the channel again, and server won't be in 
+         desync in some rare circumstances.  Affected file is
+         silcd/packet_receive.c.
+
+Sun Jan 27 21:04:19 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Check for NULL socket pointer in the function
+         silc_server_packet_send_to_channel_real.  Affected file
+         silcd/packet_send.c.
+
+       * Fixed the BAN notify handling to correctly remove ban
+         list.  Affected file silcd/packet_receive.c.
+
+Sat Jan 26 23:01:03 EET 2002  Pekka Riikonen <priikone@silcnet.org>
+
+       * Fixed some header addition to Toolkit distribution in
+         lib/silcutil/Makefile.am and lib/trq/Makefile.am.
+
+       * Added lib/silcclient/client_ops_example.h as an template
+         file for application programmers to quickly start using
+         the SilcClientOperation functions in their application.
+         Updated the lib/silcclient/README as well to tell about this
+         nice file made available.
+
 Sat Jan 26 10:45:41 EET 2002  Pekka Riikonen <priikone@silcnet.org>
 
        * Call silc_server_remove_from_channels when removing client